Job Description
Job location: Thiruvananthapuram
Key Responsibilities and Knowledge Areas:
- Identify the appropriate software architecture based on the requirements and design elements contained in a system specification.
- Record software architecture in a software architecture document using use cases and the Unified Modelling Language (UML).
- Maintain and evolve software architecture documents based on evolving system requirements and industry trends and technologies.
- Analyse risk and report problems in meeting system requirements.
- Assist Software Designer/Implementers with the creation of detailed software design specifications.
- Lead the review process for software architecture documents and code. Participate in the requirement specification review process to ensure requirements can be translated into valid software architecture
- Comply with all applicable product development processes. Perform detailed software design as well as implements and/or maintains code according to duties and responsibilities
- Sound experience of working in Agile methodology.
- Ensure the overall integrity of the software architecture and validates it against the requirement specification, including design of validation process and process automation.
- Integrate internal and external product design into a cohesive user experience.
- Work with visual designers to improve and refine product visual design and consistency.
- Contributes information and recommendations to strategic plans and reviews; preparing and completing action plans; implementing production and quality standards; resolving problems; identifying trends; determining system improvements; implementing change.
- Meets information architecture financial objectives by forecasting requirements; preparing a budget; scheduling expenditures; analysing variances; initiating corrective actions.
- Understands information requirements by studying organization mission, goals, and business drivers; conferring with executives.
- Defines infrastructure for design and integration of internet computing systems by analysing information requirements; determining platform architecture, technology, and tools; studying business operations and user-interface requirements; directing development of physical database.
- Improves architecture by tracking emerging technologies; evaluating their applicability to business goals and operational requirements.
Minimum Qualification and Experience:
- 10+ years of experience in working with large scale enterprise systems largely based on Java and Open Source components with integrations with multiple heterogeneous systems with exposure to integration with non-Java languages.
Mandatory Skills:
- Excellent knowledge of GoF Design patterns and Web/Security Patterns
- Practical experience with Micro services and API Gateways
- Working knowledge of API Management
- Working knowledge of API Management
- Excellent Knowledge of the Java Ecosystem specifically Spring and alternatives
- Java Web Frameworks – atleast 3 – Struts, JSF, GWT (and variants), Spring MVC, Grails
- Has worked with a multitude of middleware and protocols (at least 3)– RabbitMQ, Kafka, MSMQ, AMQP, Stomp, MQTT, Spark
- Has previous experience in working with at least one cloud provider – AWS, Azure, Google Cloud
- Has previous experience in working with at least one cloud provider – AWS, Azure, Google Cloud
- OOPS, OOAD, Functional Programming
- Data Architecture and RDBMS skills – Mysql, SQL Server are must/Nice to have Oracle DB experience
- Experience in below will be an added plus
- NoSQL
- Interops between disparate technologies and platforms.
- Rule and Business Process Workflow Engines
- Data Architecture and RDBMS skills – Mysql, SQL Server are must/Nice to have Oracle DB experience
- Agile – Epic/Story Creation, estimation and planning of sprints
- Exposure to Networking
Competency Requirement:
- Interact with stakeholders and define, integrate and upgrade architectures primarily based (not limited) to Java
- Good Awareness of appropriate platforms/products in market and evaluation skills to choose best solution.
- Good planning, organizing & time management skills.
- Ability to prioritize work.
- Ability to mentor and guide team members
- Presentation Skills
- Drive for results within deadlines.
- Escalate issues at an early stage to Reporting Manager
- Demonstrate a high degree of self-motivation and tenacity to get the job done.
Would you have any questions, please do not hesitate to contact us.
Send your resume at raghav.b@aciinfotech.com
Many thanks in advance.