Drive and own the architecture & design process, taking decisions on technology & architecture for software application & solutions
Participate in software engineering activities to:
Assess the requirements from technical feasibility perspective
Influence the product owner to balance the business and technical priorities
Actively work with product management & software engineering team to translate requirements to architecture, design & implementations.
Supervise & review design & implementation to comply with industry standard practices and quality attributes.
Generate and manage reference architecture to preserve & reuse the knowledge, reproduce artifacts to leverage for architecture & design description.
Actively engage in knowledge sharing with team, talking on technology topics, writing blogs & articles, guide teams on standards, tools and technologies
Participate in presales phases including RFI, RFP, other customer interactions for technical solutions & assessment
Participate and contribute in talent acquisition & recruitment, collaborate to outline hiring strategy, generate job descriptions, interview candidates
What we are looking for
15+ years of Software Development and Architect experience (4+) in Enterprise grade solutions / applications
Experience in Micro-service architectures and principles and experience in building, deploying and operating micro services based systems
Experience with large scale REST Applications, Microservices and Cloud implementation projects
Hands on experience in following technical stacks
Java 8+, J2EE
Spring Framework e.g. Spring Data JPA, Spring Security, Spring Web Flow, Spring Boot and its starters for Microservices development (Spring Cloud, Spring Cloud Config, Spring Eureka)
Service Discovery and Registration concepts and its implementation using (Spring Eureka, Consul)
Experience in Microservices development tools/techniques e.g. Logging like (ElasticSearch, Logstash, Kibana), tracing (Zipkin) and Fault tolerance (Hystrix)
SOAP and REST web services API designing and development and familiarity with Swagger, OpenAPI and RAML Specification
Experience in Apache Kafka or Apache ActiveMQ for distributed messaging
CI/CD tools e.g. Maven, Jenkins, GitLab
Experience in code engineering practice and its tools like Sonar (Code quality), Jacoco (Code coverage)
Experience in developing cloud native applications using Docker and Kubernetes/Openshift container platforms or any public cloud platforms (Azure / AWS / Google Cloud).
Experience in writing fine-tuned SQL scripts, procedures
Experience in TypeScript and UI frameworks (Angular or ReactJS), HTML and CSS will be added advantage
Good to have experience in API Management Platform (APIGee preferred)
Good to have experience in Data Migration and Replication tool e.g. Oracle Golden Gate
Experience in application security design including compliance with standards like OWASP / PCI DSS / Open authentication & authorization frameworks, Web and Mobile security, Cryptography, Security patterns, Web services security etc
Experience in designing solutions for large-scale deployments including large enterprises or service providers
Deep understanding & experience with software development processes such as Agile, Extreme Programming, Lean processes, etc.
Experience working with multiple global customers
Experience in security audits, application penetrating testing & troubleshooting, performance / load / stress testing & troubleshooting is strongly desirable.
Strong experience in all Code engineering practices (Code quality , Code coverage and Promotion)
Strong inter-personal skills and ability to work in a collaborative environment with cross-functional teams and select third parties
A deep understanding of architecture and design patterns at various levels.
Solid experience of working in project / product teams
Maturity to understand large systems and recommend upcoming technologies to solve complex business problems
Enjoy challenging and thought provoking work and have a strong desire to learn and progress (motivated enough to self-learn)
Ability to pick up new technology independently
Be able to work under pressure and multi-task while remaining professional and courteous
Open to frequent travels.
Exceptional ability to analyse problems and to propose innovative but workable solutions
Open minded, flexible, and willing to listen for other people’s opinions.
Excellent verbal and written skills
B.E. / B.Tech in Computer Science, Engineering or IT required & Master’s degree in related discipline preferred