Required Tech Stack
· 4 to 9 years of strong development skills in Java JDK 1.7 or above. Knowledge of Java 8 features is a must have.
· Should have strong acumen in Data Structures, Algorithms, problem-solving and Logical/Analytical skills.
· Thorough understanding of OOPS concepts, Design principles and implementation of different type of Design patterns.
· Sound understanding of concepts like Exceptional handling, Serialization/Deserialization and Immutability concepts, etc.
· Good fundamental knowledge in Enums, Collections, Annotations, Generics, Auto boxing, etc.
· Experience with Multithreading, Concurrent Package and Concurrent APIs
· Basic understanding of Java Memory Management (JMM) including garbage collections concepts.
· Experience in RDBMS or NO SQL databases and writing SQL queries (Joins, group by, aggregate functions, etc.)
· Hands-on experience with JMS
· Hands-on experience in creating RESTful webservices and consuming webservices
· Hands-on experience with Spring.
· Hands-on experience with any of the logging frameworks (SLF4J/LogBack/Log4j)
· Experience of writing Junit test cases using Mockito / Powermock frameworks.
· Should have practical experience with Maven/Gradle and knowledge of version control systems like Git/SVN etc.
· Good communication skills and ability to work with global teams to define and deliver on projects.
· Sound understanding/experience in software development process, test-driven development.