This position is listed on behalf of a partner company, who manages all applications and next steps. Our partner is looking for a Software Engineer (Java) based in Canada.
This role offers the opportunity to build and enhance reliable payment technology used by businesses and partners around the world.
You will contribute to the development of scalable, secure, and high-performing microservices within a modern payment platform.
Working across the full software development lifecycle, you will collaborate with engineering, product, QA, and DevOps teams to deliver impactful solutions.
The position is ideal for a developer who enjoys solving complex technical challenges and improving systems that support critical business operations.
You will work in an agile environment that values innovation, ownership, continuous learning, and strong engineering practices.
This is a great opportunity to grow your expertise in Java, distributed systems, cloud-based technologies, and payment solutions while making a meaningful impact.
This position is listed on behalf of a partner company, who manages all applications and next steps. Our partner is looking for a Software Engineer (Java) based in Canada.
This role offers the opportunity to build and enhance reliable payment technology used by businesses and partners around the world.
You will contribute to the development of scalable, secure, and high-performing microservices within a modern payment platform.
Working across the full software development lifecycle, you will collaborate with engineering, product, QA, and DevOps teams to deliver impactful solutions.
The position is ideal for a developer who enjoys solving complex technical challenges and improving systems that support critical business operations.
You will work in an agile environment that values innovation, ownership, continuous learning, and strong engineering practices.
This is a great opportunity to grow your expertise in Java, distributed systems, cloud-based technologies, and payment solutions while making a meaningful impact.
Accountabilities:
- Design, develop, test, and maintain efficient, scalable, and reliable Java-based applications and services.
- Build and enhance microservices using modern development practices and architectural patterns.
- Participate in technical discussions, contribute to design decisions, and help define effective engineering solutions.
- Support and troubleshoot production issues while ensuring system reliability and performance.
- Develop and maintain automated unit, integration, and end-to-end tests to ensure software quality.
- Participate in peer code reviews by providing constructive feedback and helping maintain development standards.
- Collaborate with Product Owners, Business Analysts, QA, DevOps, and other engineering teams throughout the development process.
- Create and maintain technical documentation for APIs, software components, and system workflows.
- Apply software design patterns, security practices, and engineering best practices to improve scalability and maintainability.
- Identify opportunities to improve application performance, reliability, and operational efficiency.
- Participate in production support rotations, including scheduled on-call responsibilities.
- Continue developing technical expertise through mentorship, collaboration, and exposure to new technologies.
- 1 to 5 years of hands-on experience developing Java-based web applications in an agile environment.
- Experience with Java development and familiarity with frameworks and tools such as Spring, Spring Boot, JUnit, and Maven.
- Knowledge of distributed system architectures, RESTful services, and SQL databases.
- Familiarity with messaging technologies such as RabbitMQ is an asset.
- Experience writing clean, maintainable, and testable code following software engineering best practices.
- Strong analytical and problem-solving skills with the ability to troubleshoot complex technical issues.
- Comfortable participating in Scrum activities and collaborative development processes.
- Ability to contribute to solutions outside of core expertise, including technologies such as JavaScript and Angular.
- Strong communication skills and the ability to work effectively with technical and non-technical stakeholders.
- Comfortable working independently, asking questions, and navigating ambiguity in a fast-paced environment.
- Experience using development tools such as Visual Studio Code.
- Ability to work remotely with a dedicated workspace.
- Demonstrated curiosity, initiative, ownership, and commitment to continuous learning.
- Remote work flexibility with the ability to work from Canada.
- Opportunity to contribute to technology that supports thousands of businesses and payment experiences worldwide.
- Collaborative environment with global teams and opportunities for professional growth.
- Access to mentorship and guidance from experienced engineering professionals.
- Opportunity to work with modern technologies including Java, Spring Boot, microservices, distributed systems, and cloud-based solutions.
- Supportive culture focused on learning, innovation, inclusion, and career development.
- Inclusive workplace that values diverse backgrounds, perspectives, and experiences.
- Resources and support available to ensure an accessible recruitment and work experience.
As a Software Engineer (Java), you will contribute to the design, development, maintenance, and support of payment gateway services and related applications. You will participate throughout the software lifecycle, from technical design and implementation to testing, deployment, and production support, while collaborating with cross-functional teams to deliver high-quality solutions.
Requirements:
The ideal candidate is a motivated software engineer with experience developing Java applications and a strong interest in building scalable systems. You should have solid programming fundamentals, strong problem-solving abilities, and the ability to collaborate effectively in an agile development environment.