- Code and lead a team of Full Stack Developers across all stages of development: feature design, prototyping, coding, QA testing, and delivery.
- Mentor a team of engineers, providing technical guidance and fostering collaboration.
- Work closely with product managers, designers, and other stakeholders to deliver features aligned with business requirements.
- Work with enterprise customers' technical teams to ensure smooth integration and implementation.
- Make informed decisions on technical debt, third-party tools, and trade-offs, avoiding unnecessary reinvention.
- Hybrid role with 2-3 days per week commuting to the Guelph office.
- Collaborate across teams to identify feature development, define project requirements, and discuss technical approaches.
- Provide constructive feedback and foster a culture of continuous improvement.
- Stay current with emerging technologies and recommend innovative solutions.
- Lead a team in designing, developing, and maintaining scalable, high-performance applications.
- Ensure code quality, design principal adherence, and successful application deployment in CI/CD environments.
- Architect and develop microservices using Angular, Django frameworks, and MySQL.
- Design and implement microservices architectures following 12-factor app principles.
- Drive adoption of automated testing (unit, integration, and end-to-end).
- Design and optimize SQL queries and database schemas for efficient data storage and retrieval.
- Collaborate with data analyst teams to integrate relational databases with applications.
- Implement and manage CI/CD pipelines to automate build, test, and deployment processes.
- Ensure smooth application deployment via automation, minimizing downtime and errors.
- Conduct regular code reviews to ensure adherence to coding standards and best practices.
- Encourage continuous learning and professional development within the team.
- Communicate technical concepts clearly to non-technical stakeholders.
- Collaborate with cross-functional teams to integrate solutions organization-wide.
- Monitor application performance, identifying and resolving bottlenecks for optimal operation.
- Implement scalability strategies, including load balancing and clustering, to handle increasing user demands.
- Perform performance tuning of Python applications and optimize resource utilization.
- Stay updated with trends in Web technology, microservices, and cloud technologies.
- Experiment with new tools, frameworks, and methodologies to continuously improve software development practices.
- Bachelor's degree in computer science, Engineering, or related field, or equivalent experience.
- Deep knowledge of RESTful API design and implementation
- Strong proficiency in SQL and relational database management
- Proficient in frameworks (e.g., Django, Angular)
- Proficient in scripting languages (e.g., Bash, Python, PowerShell, Pandas).
- Experience with automation and configuration management tools (e.g., Ansible, Puppet, Chef, Terraform).
- Experience with security frameworks and protocols (e.g., WAF, Security Headers, Bots and DDOS Shield)
- Familiarity with CI/CD tools (e.g., Jenkins, GitLab CI, Travis CI, Bitbucket Pipeline).
- Knowledge of containerization and orchestration technologies (e.g., Docker, Kubernetes).
- Understanding of cloud services and infrastructure (AWS, Azure, Google Cloud Platform).
- Strong problem-solving skills and ability to work under pressure.
- Excellent communication and teamwork abilities.