We are looking for a detail-oriented Software Engineer with strong Java expertise to join our engineering team in Singapore. The role involves designing, developing, testing, and maintaining scalable Java applications while following best practices and Agile development methodologies.
Key Responsibilities
- Design and develop scalable applications using Java, OOP principles, and design patterns.
- Translate technical requirements into clean, efficient, and maintainable solutions.
- Write, review, and maintain high-quality, well-documented code.
- Develop unit tests and contribute to test-driven development practices.
- Troubleshoot and resolve complex application and performance issues.
- Develop and integrate RESTful APIs and microservices.
- Collaborate with developers, architects, product teams, and other stakeholders.
- Use Git/version control effectively to manage source code.
- Participate in Agile ceremonies including sprint planning, stand-ups, and retrospectives.
- Optimize application performance and continuously improve existing systems.
- Contribute to technical and architectural discussions.
- Keep up to date with the latest Java ecosystem and software engineering practices.
Required Skills & Experience
- Strong hands-on experience in Java development.
- Good understanding of Object-Oriented Programming (OOP) and software design patterns.
- Strong knowledge of Git and version control practices.
- Experience with unit testing and TDD methodologies.
- Strong analytical, debugging, and problem-solving skills.
- Ability to work effectively in a collaborative Agile environment.
- Strong attention to detail and ability to manage multiple priorities.