Software Engineer (Java)
About the Role
We are looking for a Software Engineer to join a technology team responsible for building and enhancing large-scale enterprise applications. You will develop modern backend solutions, contribute to platform modernization initiatives, and work closely with cross-functional teams to deliver scalable, high-quality software.
This is an excellent opportunity to work with modern technologies in a collaborative engineering environment while contributing to the development of enterprise-grade applications.
Responsibilities
- Design, develop, test, and maintain Java-based applications.
- Build scalable and reliable backend services using Java and Spring Boot.
- Collaborate with cross-functional teams to design and deliver technical solutions.
- Troubleshoot application issues and optimize system performance.
- Develop clean, reusable, and well-tested code following engineering best practices.
- Participate in code reviews and contribute throughout the software development lifecycle.
- Support application modernization and continuous improvement initiatives.
Requirements
Must Have
- Bachelor's degree in Computer Science, Engineering, or a related discipline.
- Minimum 3 years of experience in Java software development.
- Strong knowledge of Core Java, Spring Boot, and object-oriented programming principles.
- Experience working with SQL and relational databases.
- Experience with cloud platforms (AWS, Azure, or GCP).
- Familiarity with RESTful APIs, Git, and unit testing frameworks such as JUnit.
- Experience working in Agile development environments.
- Strong analytical, problem-solving, and communication skills.
Nice to Have
- Experience with event-driven architectures or messaging technologies.
- Knowledge of distributed systems or big data technologies.
- Experience building microservices.
- Familiarity with CI/CD pipelines and DevOps practices.
- Exposure to NoSQL databases.
- Experience working on large-scale enterprise applications.
12-months renewable contract.