Skip to main content

Full Stack Engineer

Technology
PeoplePilot
Toronto, CanadaCAD 110,000 - CAD 120,000 /year1 month ago
Full time

Job description

Java / Node.js Software Developer

Roles and Responsibilities

Application Development

  • Design, develop, and maintain high-quality, scalable, and maintainable Java applications and services using clean code principles and established design patterns.
  • Build modular, reusable, and testable applications and RESTful APIs using Java.
  • Develop microservices using frameworks such as Spring and Spring Boot.
  • Apply core Java concepts, including:
  • Collections
  • Generics
  • Streams and lambdas
  • Exception handling
  • Concurrency and multithreading
  • JVM memory management
Testing & Quality Engineering
  • Write comprehensive and meaningful unit tests using JUnit and Mockito to ensure code correctness, reliability, and maintainability.
  • Apply Test-Driven Development (TDD) and continuous testing practices to drive good design and prevent regressions.
  • 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.
  • Champion engineering quality through code reviews, pair programming, coding standards, and best practices.
Security
  • Embed security-by-design throughout the software development lifecycle.
  • Follow secure coding standards and application security best practices.
  • Identify and address security vulnerabilities early in the development process.
  • Apply knowledge of application security principles, including the OWASP Top 10.
Code Improvement & Troubleshooting
  • Refactor and improve existing codebases to reduce technical debt and enhance:
  • Readability
  • Performance
  • Maintainability
  • Testability
  • Diagnose, troubleshoot, and resolve complex technical, performance, security, and reliability issues.
Collaboration & Delivery
  • Collaborate with architects, business and application analysts, operations teams, and testing specialists to deliver reliable, secure, and high-quality solutions.
  • Work effectively within a fast-paced, cross-functional Agile environment.
  • Contribute to technical documentation and communicate effectively with technical and non-technical stakeholders.
Innovation
  • Stay current with emerging technologies and development practices.
  • Evaluate and adopt AI-assisted development and developer experience platforms to improve engineering quality, productivity, and delivery efficiency.
Skills Required

Core Technical Skills

  • 5 years of software development experience with Java and/or Node.js, covering the full application development lifecycle.
  • Strong command of core Java, including:
  • Collections
  • Concurrency and multithreading
  • Generics
  • Streams and lambdas
  • Exception handling
  • JVM memory management
  • Hands-on experience building RESTful APIs and microservices using Spring / Spring Boot.
  • Strong understanding of clean code, SOLID principles, and design patterns.
Testing & Code Quality
  • Proven experience writing effective unit tests using JUnit and mocking frameworks such as Mockito.
  • Solid understanding of:
  • Test-Driven Development (TDD)
  • Test automation
  • Continuous testing
  • Regression prevention
  • Experience with SonarQube, JaCoCo, static code analysis, code coverage, and security scanning.
DevOps & Development Tools
  • Experience with build tools such as Maven or Gradle.
  • Experience with source control systems such as Git and Bitbucket.
  • Experience integrating automated tests, quality checks, and security gates into CI/CD pipelines.
  • Experience with CI/CD tools such as Jenkins.
Front-End Skills
  • Experience with modern UI technologies is preferred, including:
  • React
  • Angular
  • TypeScript
  • JavaScript
  • HTML5
  • CSS
Security
  • Working knowledge of secure coding practices and application security fundamentals.
  • Familiarity with security standards and vulnerabilities such as the OWASP Top 10.
Professional Skills
  • Strong analytical and problem-solving abilities.
  • Excellent communication and technical documentation skills.
  • Ability to work collaboratively in a cross-functional Agile environment.
  • Strong focus on software quality, reliability, security, and maintainability.
Nice to Have / Added Advantage

AI & Developer Productivity

  • Experience using AI-assisted development tools, such as GitHub Copilot, to accelerate coding and testing.
  • Experience working with AI agents or agentic development workflows.
  • Experience with Backstage and related developer portal technologies.
Backend & Architecture
  • Experience with Node.js and backend API technologies.
  • Experience designing and maintaining scalable backend services.
DevOps & Cloud
  • Experience building and maintaining CI/CD pipelines and related tooling.
  • Experience with containerization and orchestration technologies such as:
  • Docker
  • Kubernetes
  • Experience with cloud platforms such as AWS.
Agile & Collaboration Tools
  • Experience with Jira and Confluence.
  • Practical experience working within Agile delivery methodologies.
Education
  • University Degree or College Diploma in Computer Science, Software Engineering, or a related technology field.
Keywords
monthsOfExperience: 60ReactOSHTML5OrchestrationCodingSpring FrameworkTechnical debtJiraMAVENTypescriptAngularSonarQubeNode.jsAngularJSMockitoJavaScriptDevOpsMysqlPair ProgrammingUnit Testing

Interested in this role?