This Java Developer will work to ensure effective implementation of Java micro-services and services, which include full lifecycle design, development and maintenance of Enterprise and Domain Services. This person will also research, design, document, and modify software specifications throughout the service lifecycle in accordance with the business goals and organizational architectural standards. Capable of leading the development of comprehensive integration solutions using Java web services as core. Must have complete understanding of Java/J2EE n-Tier architectures, Web Services standards, integration, and design Patterns.
- Work on creating the requirement analysis, design documents and test cases.
- Design, develop and maintain Java applications and RESTful services.
- Design and develop Java spring based REST services (Synchronous and Asynchronous).
- Perform the unit tests of the service in a development environment.
- Perform the integration testing in a development environment.
- Create process flows, high level functional and detailed technical design specifications from business requirements.
- Design and develop cloud ready and cloud native services & applications.
- Bachelor’s degree in Computer Science or Technology; Master’s degree is preferred.
- Should possess experience on object-oriented application building experience in a professional environment.
- Should have hands on experience in Java /JEE, Spring 4.x/5.x, Spring Boot and other Spring related technologies.
- Should have experience in designing and developing services for high volume, high transactions environment such as retail e-Commerce websites or real-time events processing.
- Should possess strong experience in building REST services and/or micro-services.
- Knowledge working closely with GIT, BitBucket.
- Should have minimum experience working in an Agile development environment.
- should have experience in test automation and test-driven development using Junit, Mockito, or equivalent tools.
- Should be familiar with Continuous Deployment/Integration practices including automated unit/integration/regression tests, Jenkins, Maven, etc.
- Must have excellent verbal and written communication skills in English.
- Willing to learn and work with new technologies.
- Must have experience dealing with performance, scalability, and testability of enterprise applications.
- experience with AWS or other cloud platforms.
- Knowledge and experience with containerized application development using Docker.