View all jobs
Full Stack DeveloperOttawa, ON
- Collaborate with team members and stakeholders to identify, refine, estimate, plan and prioritize the development and deployment of innovative features and components.
- Develop software with performance, scalability, security, testability, maintainability, deployment and end-user experience in mind.
- Apply software development principles, design patterns and best practices to produce elegant, high quality code.
- Review, maintain, refactor and improve upon existing software components.
- Keep up with industry trends, technologies and security practices.
- Troubleshoot and fix customer reported issues.
- Develop, maintain and extend Continuous Integration / Continuous Delivery systems.
- Demonstrate leadership, professionalism and maturity
- Mentor, support and coach junior developers
- Regularly share knowledge within and across teams via code reviews, documentation, and presentations.
- Participate in the validation and deployment of components in various environments.
- Use collaboration tools like Jira, Confluence, and Teams to coordinate development efforts across geographical regions (USA, Canada, India)
- Apply source control good practices and workflows for branching, committing, reviewing and merging code change
- Participate in and promote good Agile practices and processes within and across teams (Scrum, SAFe)
- 5+ years of experience with .NET programming languages and tools
- 5+ years of experience developing, automating, and analyzing results of unit, integration and performance tests
- 3+ years of experience using Git or comparable source control strategies and workflows
- 3+ years of experience with Agile principles, frameworks and processes (Scrum / SAFe / XP)
- 2+ years of experience using and/or developing CI/CD systems (Jenkins, GitLab CI/CD)
- Good understanding of database design, performance optimization
- Working knowledge of common OOP Design Patterns and SOLID principles
- Strong communication and presentation skills
- Experience sharing knowledge via code reviews, documentation, presentations
- Experience mentoring / supporting / coaching junior developers
- Ability to learn quickly and work autonomously and as part of a team
- BSc in Computer Science, Engineering or relevant
- Experience with container development, deployment, and orchestration (Docker / Kubernetes / YAML / Helm /Ansible)
- Experience with development of solutions involving AuthN, AuthZ, Identity & Access Management
- Scrum / SAFe / Agile certication
- Experience with cloud development and deployment (AWS / GCP)
- Understanding of performance testing, analysis and improvement of software components
- Logging, monitoring and alerting using tools such as FluentD and DataDog
- Proficiency with using JIRA and Confluence for collaboration
- Full Stack development experience using Angular / Node.js
- Experience with static analysis / code coverage / security analysis tools
- Occasional flexibility to work outside of normal business hours to resolve production issues and/or collaborate with remote teams.
- Knowledge of Object-Relational Mapping frameworks like Entity Framework
- Experience with a variety of programming and scripting languages (Java, C#, C++, Lua, Bash, Groovy, etc)