Senior Java Developer – Spring Boot | TDD | CI/CD | AWS
- Toronto, ON, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Experience
- 5+ years of software development experience in Java / NodeJs, spanning the full application development life cycle.
- Posting language
- English
- Posted
Original job description
Senior Java Developer – Spring Boot, REST APIs, TDD & CI/CD
Roles and Responsibilities:
• Write comprehensive, meaningful unit tests using JUnit and Mockito to ensure code correctness, reliability, and long-term maintainability.
• Apply test-driven development (TDD) and continuous testing practices to drive design, maximize coverage, and prevent regressions.
• Build modular, reusable, and testable applications and APIs (REST web services) in Java.
• Embed security-by-design throughout the development life cycle, following secure coding standards and addressing vulnerabilities early.
• Champion code quality through thorough code reviews, pair programming, and adherence to coding standards and best practices.
• Refactor and improve existing codebases to reduce technical debt and enhance readability, performance, and testability.
• Apply core Java concepts - collections, concurrency and multithreading, generics, streams, exception handling, and JVM memory management - to build robust solutions.
• Integrate automated unit testing, static code analysis, security scanning, and quality gates into CI/CD pipelines.
• Use tools such as SonarQube and JaCoCo to measure, enforce, and continuously improve code quality and test coverage.
• Collaborate with architects, business and application analysts, operations teams, and testing specialists to deliver reliable, secure, high-quality solutions.
• Diagnose, troubleshoot, and resolve complex technical, performance, security, and reliability issues.
• Stay current with emerging technologies, including AI-assisted development and developer experience platforms, and evaluate how they can improve quality and productivity.
Skills Required:
• Experience with modern UI technologies (for example, React, Angular, TypeScript, JavaScript, HTML5, CSS) is preferred.
• Strong command of core Java concepts, including collections, concurrency/multithreading, generics, streams, lambdas, exception handling, and JVM memory management.
• Proven, hands-on experience writing effective unit tests with JUnit and mocking frameworks such as Mockito.
• Solid understanding of test-driven development (TDD), test automation, and continuous testing practices.
• Deep commitment to code quality, clean code, SOLID principles, and design patterns.
• Working knowledge of secure coding practices and application security fundamentals (for example, the OWASP Top 10).
• Experience building RESTful APIs and microservices using frameworks such as Spring / Spring Boot.
• Experience with static code analysis, code coverage, and security scanning tools such as SonarQube and JaCoCo.
• Experience with build tools such as Maven or Gradle and source code management tools such as Git and Bitbucket.
• Experience integrating automated tests, quality checks, and security gates into CI/CD pipelines (for example, Jenkins).
• Strong analytical, problem-solving, communication, and technical documentation skills.
• Ability to work effectively in a fast-paced, cross-functional Agile environment.
Nice to Have (Added Advantage):
• Experience working with AI agents or agentic development workflows.
• Experience with backend API technologies such as Node.js is preferred.
• Experience with Backstage and related developer portal technologies.
• Experience building and maintaining CI/CD pipelines and related tooling.
• Experience with containerization and orchestration technologies such as Docker and Kubernetes.
• Experience with cloud platforms such as AWS.
• Experience with Jira, Confluence, and Agile delivery practices.
• University Degree or College Diploma in Computer Science or a related technology field.
More about this job
Responsibilities
Design, develop, and maintain high-quality Java applications while championing code quality through reviews and TDD practices. Collaborate with cross-functional teams to deliver secure, reliable solutions and resolve complex technical issues.
Requirements
Requires 5+ years of software development experience with strong command of core Java, Spring Boot, and TDD methodologies. Candidates should have experience with CI/CD pipelines, static code analysis tools, and secure coding practices.
Skills
- Java
- Spring Boot
- TDD
- CI/CD
- AWS
- REST APIs
- JUnit
- Mockito
- SonarQube
- JaCoCo
- Maven
- Gradle
- Git
- Jenkins
- Microservices
- Agile
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Consulting
Keywords
- Java
- Spring Boot
- TDD
- CI/CD
- AWS
- REST APIs
- JUnit
- Mockito
- SonarQube
- JaCoCo
- Maven
- Gradle
- Git
- Bitbucket
- Jenkins
- Microservices
- Agile
- Clean Code
- SOLID Principles
- OWASP
- Concurrency
- Multithreading
- JVM
- React
- Angular
- TypeScript
- Docker
- Kubernetes
- Jira
- Confluence