Recruitment Consultant at Indihire
Views:93 Applications:16 Rec. Actions:Recruiter Actions:12
Product Engineer - Java/Multithreading/J2EE (4-8 yrs)
Job description :
- 4 -20 years of overall experience in the software industry with at least 3-5 years of experience as an enterprise / solutions architect.
- Should have strong full stack experience in design and coding medium complexity applications leveraging advanced Java 1.8 or above and features like Lambda Expressions, Streams, Serialization, Annotations, Generics, Enums, Collections
- 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.
- Multi-Threading (Advanced multithreading like concurrent packages, managing memory leaks, etc.)
- Should have experience in Core Java, Java - Spring Framework, J2EE, Java - ORM (Hibernate, Toplink, ibatis), Throughput / Transaction Application, Logical Architecture Design, OOAD and UML, Package / Vendor Selection, Performance / Capacity Planning, TDD (JUnit, TestNG, EasyMock, JMock etc. for extensive unit-testing)
- Strong experience on at least multiple Spring modules like DI, AOP, Transactions, Boot, etc.
- Should have experience in AWS (EC2, CloudWatch, Lambada, S3, SQS, SNS, Dyanamo DB).
- Hands-on experience with Rest based Webservices and Micro-services.
- Implement CI/CD governance, best practices, principles, processes.
- Should have hand's on experience in DevOps tools (puppet, chef, salt, Jenkins, git, gerrit, docker,kubernetes )
- Basic understanding of Java Memory Management (JMM) including garbage collections concepts.
- Experience in RDBMS or NO SQL databases (Hadoop/Cassandra/MongoDB) and writing SQL queries (Joins, group by, aggregate functions, etc.)
- Hands-on experience with JMS/Kafka.
- Hands-on experience with monitoring and auditing tools like Nagios, ELK Stack and Grafana etc.
- 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.
- Should have played a key role in the creation of logical architecture diagrams for at least two complex applications and/or systems coupled with a hands-on experience on at least 2 project execution models (Agile, Scrum, Iterative, Waterfall)
- Should know how to capture the various tiers of the architecture and model them in the diagram along with the various external systems and interfaces that the application interacts with in the environment.
- Should know how to evaluate the various tools available in the marketplace (open source and commercial) that support UML and suggests the right tools to use to accomplish the project objectives in terms of documenting the requirements of the project using UML notations.
- Demonstrated ability for choosing the needed technology stack based on the functional, non-functional requirements and based on other factors like client drivers, environment and feasibility