Software Engineer II - Java
Role details
Job location
Tech stack
Job description
Make your mark at one of the biggest names in payments. We're looking for a Java Software Engineer to join our Cambridge office and help us unleash the potential of every business.
You'll be based in our Cambridge office, working on a hybrid model of three days per week onsite.
As a Java Developer, you'll join one of our cross-functional teams made up of developers, testers, a scrum master, product owners, and analysts. Each team owns its own territory and backlog end-to-end - from kick-off through to post-live support. We follow agile practices (Scrum, Kanban, or SAFe), adapting them as needed. With continuous integration and delivery, we maintain a fast, tight feedback loop between product, development, testing, and end-users, enabling rapid feature development for our global payments platform.
You'll be working on one of the highest-volume global payment platforms in the world, with a strong focus on robustness, security, and scalability - capable of processing over 800 transactions per second and more than 10 million successful payments every day.
What you will own:
- Design and develop solutions in Java, SQL, and PLSQL to ecommerce payments gateway as part of a team, in line with:
- The needs of a high-capacity mission-critical 24/7 service with 5 nines uptime
- Product specifications and drivers of business value
- Worldpay architectural and software engineering principles
- Department standards and practices e.g. code quality, agile ways of working, technical debt control
- Closely partner with the software and quality assurance engineers in the team through code reviews, knowledge sharing and mentoring
- Active collaboration with engineers in UK and US
- Active contribution to retrospectives, resolution of technical debt, and improvements to team and department working practices
- Periodic availability outside normal office hours for release support and deployment
- Working collaboratively along the whole SDLC - with colleagues in the team, solution designers, release team, support and the business to refine, release and run the software solutions
Requirements
- You will have the ability to build secure, clean and testable Java-based distributed applications in a Linux development environment
- You will have a firm grasp of relational database concepts (e.g. Oracle), appreciation of architecture and knowledge of industry design patterns
- You will have a dynamic can-do attitude, with the ability to work collaboratively within a team to drive continuous improvement and being able to prioritise under pressure
- You will take pride in your work and encourage others to do the same
- Experience with large code bases and version control systems
- Experience with Linux as a development and production environment
Bonus if you have
- A keen interest in innovation, using techniques like BDD, best-of-breed software engineering practices and tools, with an ability to communicate clearly their advantages with your peers, stakeholders and end users
- A keen interest in AI and ability to use any AI tool in your day-to-day job
- Some familiarity with agile frameworks and methodologies (Scrum, Kanban, SAFe), and knowledge of their various advantages and pitfalls
- Any experience of working in a global online business/knowledge of cryptography and secure inter-application communication principles/high availability, high capacity, mission-critical systems, etc.
About the team
To learn more about our winning teams, check out our world-class teams that own it every day.