
Senior Java Developer – TDD, JUnit, CI/CD & Code Quality
Astra-North Infoteck · Toronto, Ontario, Canada
Weak hiring record · median 81 days open
All reasons
- Open 49 days
- 61% of this employer's openings are over 60 days old
In its favour
- Still listed on the employer's own board
- Senior Java Developer – TDD, JUnit, CI/CD & Code Quality
Roles and Responsibilities
- Design, develop, and maintain high-quality, maintainable Java applications using clean code principles and established design patterns.
- Write comprehensive, meaningful unit tests using JUnit and Mockito to ensure code correctness, reliability, and long-term maintainability.
- Apply test-driven development (TDD) practices to drive design, maximize coverage, and prevent regressions.
- 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, 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.
- Build modular, reusable, and testable applications and APIs (REST web services) in Java.
- 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, and reliability issues.
- Ensure information security standards and requirements are incorporated into all solutions.
- Stay current with emerging technologies, including AI-assisted development and automated test generation, and evaluate how they can improve quality and productivity.
Skills Required
- 5+ years of software development experience in Java, spanning the full application development life cycle.
- 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.
- Experience with static code analysis and code coverage tools such as SonarQube and JaCoCo.
- Experience building RESTful APIs and microservices using frameworks such as Spring / Spring Boot.
- Experience with build tools such as Maven or Gradle.
- Experience with source code management tools such as Git and Bitbucket.
- Experience integrating automated tests and quality checks 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 using AI-assisted development tools (for example, GitHub Copilot) to accelerate coding and testing.
- Experience with AI-powered or automated unit test generation frameworks (for example, Diffblue Cover, EvoSuite, or similar) is a strong added advantage.
- Experience with integration, performance, and contract testing tools.
- Experience with containerization and orchestration technologies such as Docker and Kubernetes.
- Experience with cloud platforms such as AWS.
- Knowledge of security scanning tools such as SonarQube, JFrog Xray, or similar.
- Experience with Jira, Confluence, and Agile delivery practices.
- University Degree or College Diploma in Computer Science or a related technology field.
- Knowledge of the financial and insurance industries.
Skills
- Java
- JUnit
- Mockito
- JVM
- SonarQube
- Spring
- Spring Boot
- Maven
- Gradle
- Git
- Bitbucket
- Jenkins
- GitHub Copilot
- Docker
- Kubernetes
- AWS
- Jira
- Confluence
More jobs at Astra-North Infoteck
All 314- Bilingual IVR Automation testerAstra-North Infoteck · Toronto, Ontario, Canada4d ago
- Microsoft Dynamics 365 DeveloperAstra-North Infoteck · Montreal, Quebec, Canada6d ago
- Data Business Analyst - PL/SQL, T-SQL & Data WarehousingAstra-North Infoteck · Toronto, Ontario, Canada6d ago
- Senior Angular Developer – Angular 12+, TypeScript & RxJSAstra-North Infoteck · Montreal, Quebec, Canada6d ago
- Bilingual English & Spanish Java Backend DeveloperAstra-North Infoteck · Scarborough, Ontario, Canada6d ago
Similar roles
- Senior Java Backend Developer – Java, Distributed Systems, Agentic AIAstra-North Infoteck · Montreal, Quebec, Canada2mo ago
- Java Backend developer - Java 17, DevSecOps, KubernetesAstra-North Infoteck · Montreal, Quebec, Canada1mo ago
- Senior Java Microservices Developer – Java, Spring Boot, Kafka, MongoDB, OpenShift/AWSAstra-North Infoteck · Mississauga, Ontario, Canada2mo ago
- Développeur Java / Java Developermthree · Montréal, Quebec, Canada19d ago
- Développeur.euse JAVA Desktop Senior / Senior, Java Desktop Developer (Signature)Portage CyberTech · Canada1mo ago
- Développeur Java Agentique IA / Agentic AI Java DeveloperPortage CyberTech · Montréal, Quebec, Canada3mo ago