Description
We are looking for a highly skilled Senior Software Developer to design, develop, and maintain software applications. This role requires strong technical expertise, problem-solving skills, and a passion for learning and innovation. The position is remote, based in Canada, and involves working collaboratively with cross-functional teams to deliver scalable, high-quality software solutions.
We embrace a "shift-left" approach, where developers take ownership of quality, testing, security, and reliability from the earliest stages of the development lifecycle to prevent issues and accelerate delivery.
Key Responsibilities
- Design, develop, write comprehensive automated tests for, and deploy robust software applications, emphasizing shift-left practices such as TDD/BDD and early quality assurance.
- Drive shift-left adoption by integrating automated testing, security scanning, dependency checks, and quality gates into CI/CD pipelines to prevent defects and vulnerabilities.
- Lead and participate in code reviews, providing early feedback on quality, security, testability, and maintainability while upholding best practices and coding standards.
- Leverage cloud platforms and DevOps tools to automate infrastructure as code and enable fast, reliable shift-left workflows.
- Collaborate with product managers, designers, and other developers to define requirements and deliver solutions that meet business needs.
- Optimize applications for performance, scalability, and reliability in distributed systems.
- Stay updated with emerging technologies and industry trends, continuously enhancing your skills.
- Mentor junior developers and contribute to a culture of technical excellence.
Required Qualifications
- Bachelor’s degree in computer science, Engineering, or a related field (or equivalent experience).
- 5+ years of professional software development experience.
- Strong proficiency in TypeScript, Node.js, C# with experience in developing scalable web applications.
- Strong experience with AWS and/or Azure, including deploying and managing cloud-based applications.
- Good understanding of GitHub Actions (DevOps) for CI/CD pipelines and automation.
- Good understanding of Terraform (IaC) for infrastructure provisioning and management.
- Good understanding of distributed systems and microservices architecture, with experience in designing and implementing such systems.
- Strong communication and collaboration skills, with the ability to work effectively in a remote environment.
- A love for reading and learning on a regular basis, with a commitment to staying current with industry advancements.