Software Engineer, Java
Summary
The Senior Software Engineer will design and maintain mission-critical software for public transportation systems using Java and AWS cloud technologies. The role involves collaborating with cross-functional teams, mentoring junior staff, and ensuring system reliability through automated testing and CI/CD practices.
Salary: 130000
ABOUT OUR CLIENTA global leader in public transportation technology is seeking a talented and motivated Senior Software Engineer to join its growing engineering team. Operating in the public transit solutions industry, this organisation has decades of experience delivering innovative, modular systems that improve accessibility and connectivity across cities worldwide. With a strong international footprint across APAC, Europe, and North America, the company fosters a flexible, collaborative, and people-focused culture.
ABOUT THE ROLE
As a Senior Software Engineer, you will work on cutting-edge, mission-critical software that powers modern public transportation systems. You will collaborate closely with platform specialists, hardware experts, and cross-functional teams to design and deliver robust, scalable, and secure solutions that make a real-world impact.
KEY RESPONSIBILITIES
- Design, develop, test, and maintain secure, scalable, and reusable software solutions aligned with customer and business needs.
- Actively contribute to Agile development practices, including sprint planning, reviews, and retrospectives.
- Collaborate with the Team Lead and Principal Engineer on system design, technical direction, and delivery planning.
- Mentor and support junior engineers through code reviews, technical guidance, and knowledge sharing.
- Investigate, troubleshoot, and resolve production incidents to ensure system reliability and customer satisfaction.
- Communicate technical concepts clearly across multidisciplinary teams, providing constructive and solution-focused feedback.
- Minimum 5 years of professional software development experience.
- Strong expertise in Java.
- Hands-on experience with AWS cloud services, particularly:
- Serverless architectures (Lambda, API Gateway)
- Containerisation (ECS, ECR)
- Infrastructure as Code using CDK
- Experience using Bitbucket and building CI/CD pipelines for automated testing and deployment.
- Proven ability to design and integrate RESTful APIs and event-driven architectures (e.g. Kafka).
- Experience working with relational and non-relational databases, such as Oracle and PostgreSQL.
- Strong commitment to automated testing, including unit, integration, and UI testing, using tools such as:
- JUnit, Jest, Selenium, Cucumber Studio, Allure
- Bachelor’s degree in Computer Science, Software Engineering, Information Technology, or a related discipline.