Point your AI agent at freehire and let it find you a job.

Get the CLI →

Realign Llc

New

Senior Java Engineer-6

Posted 5 views
Discussion

Summary

Onsite Senior Java Engineer in Toronto who designs, builds, and maintains Java applications and REST microservices, with a strong focus on unit testing (JUnit/Mockito), TDD, clean code, and code-quality tooling like SonarQube and JaCoCo wired into CI/CD pipelines.

Location: Toronto, ON
Work Model: Onsite
Job Type: Full Time

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.

Primary Skills

Java, Spring Boot, JUnit/Mockito

Required Skills

Cloud Developer DevOps Engineer Engineering Lab Technician GCP Domain Architect Product Owner PySpark Developer Python Developer Sr. Golang Developer with Kubernetes Technical Project Manager

Location: Toronto, ON
Work Model: Onsite
Job Type: Full Time

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.

Primary Skills

Java, Spring Boot, JUnit/Mockito

Required Skills

Cloud Developer DevOps Engineer Engineering Lab Technician GCP Domain Architect Product Owner PySpark Developer Python Developer Sr. Golang Developer with Kubernetes Technical Project Manager

Skills

What Senior Software Engineering jobs ask for — and how much of it you have →
Apply

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available