Responsibilities
• Designing and implementing Java-based applications.
• Analyzing user requirements to inform application design.
• Defining application objectives and functionality.
• Aligning application design with business goals.
• Developing and testing software.
• Debugging and resolving technical problems that arise.
• Producing detailed design documentation.
• Recommending changes to existing Java infrastructure.
• Developing documentation to assist users.
Requirements
• With experience on Software Development Life Cycle using Agile methodology.
• Analytical mindset and good problem-solving skills.
• Excellent written and verbal communication.
• Good organizational skills and able to work as part of a team.
• Proficient with Java 8 (Lambda, Stream, Optional, etc.), spring boot / spring application framework / spring MVC. Good if a Full stack developer.
• Experience with version control applications (SVN, bitbucket, mercurial, GIT (gitlab or github)).
• Good to have knowledge in Jenkins.
• Good to have experience on unit testing (JUnit or have use Mockito Framework for testing).
• Experience with continuous integration and integrating APIs.
• Good understanding in Design Patterns and best practices in Java.
• Knowledgeable in Webservices such as REST and SOAP.
• Good to have knowledge in Cloud such as AWS, Azure or Google Cloud.
• knowledgeable in Application security.