Strong experience in Java 8 or higher, Spring Framework-Core/Boot/MVC, Hibernate/JPA, JMS/ AMQP/ Kafka, JavaScript and Microservices Architecture
Experience in SOA based architecture, Web Services (Apache/CXF/JAXWS/JAXRS/SOAP/REST)
Experience in CI/CD DevOps - Jenkins/Docker/Ansible, Cloud – AWS Unit Testing, Performance Tuning
Hands on experience of RDBMS like SQL Server, Oracle, MySQL, PostgreSQL
Experience in using profiler tools (JProfiler/JMeter)
A good understanding of UML and design patterns
Additional skills: Knowledge of ESB, NoSQL databases (Hadoop/Cassandra/MongoDB)
Strong troubleshooting skills in different disparate technologies and environments
Enthusiastic about different areas of work and exploring new technologies
Clarity of thought and strong communication skills to effectively pitch solutions
Ability to explore and grasp new technologies
Mentoring your team members in projects and helping them keep up with new technologies
Empowering the team members to be solution providers and enable a flat environment where everyone’s point of view is considered and feedback is encouraged.
WHAT ARE YOUR RESPONSIBILITIES:
Writing and reviewing great quality code
Understanding the client’s business use cases and technical requirements and be able to convert them in to technical design which elegantly meets the requirements
Mapping decisions with requirements and be able to translate the same to developers
Identifying different solutions and being able to narrow down the best option that meets the client’s requirements
Defining guidelines and benchmarks for NFR considerations during project implementation
Writing and reviewing design document explaining overall architecture, framework, and high-level design of the application for the developers
Reviewing architecture and design on various aspects like extensibility, scalability, security, design patterns, user experience, NFRs, etc., and ensure that all relevant best practices are followed
Developing and designing the overall solution for defined functional and non-functional requirements; and defining technologies, patterns, and frameworks to materialize it
Understanding and relating technology integration scenarios and applying these learnings in projects
Resolving issues that are raised during code/review, through exhaustive systematic analysis of the root cause, and being able to justify the decision taken
Carrying out POCs to make sure that suggested design/technologies meet the requirements.