About the company
This position is listed on behalf of a partner company, which manages all applications and next steps. Our partner is looking for a Software Engineering Team Lead based in Canada.
Responsibilities
- Lead the development support team responsible for production incidents, bug fixes, technical investigations, and overall platform stability.
- Serve as the primary technical escalation point for complex production issues, coordinating investigations, root cause analysis, and post-incident reviews.
- Write, maintain, and improve high-quality production code across PHP backend services and React frontend applications, following established engineering standards.
- Diagnose and resolve performance issues across PHP applications, MySQL databases, REST APIs, and frontend systems, including query optimization and database indexing.
- Identify recurring incidents and implement permanent engineering solutions that prevent repeated failures rather than relying on temporary fixes.
- Conduct code reviews focused on maintainability, performance, security, consistency, and adherence to engineering best practices.
- Coach junior and intermediate developers, provide technical guidance, and support the team's professional growth and problem-solving capabilities.
- Establish and maintain coding guidelines, development standards, testing practices, and consistent approaches to software quality.
- Work with Product, Operations, Customer Success, and Engineering to prioritize incidents, communicate technical risks, and align support efforts with business needs.
- Improve monitoring, logging, alerting, and debugging tools to increase visibility into system health and accelerate issue resolution.
- Own production deployments and support release planning to ensure reliable and controlled software delivery.
- Improve internal tools and workflows to help engineers work more efficiently and resolve issues faster.
- Participate in architecture discussions and recommend improvements to application reliability, scalability, and long-term maintainability.
- Lead continuous improvement initiatives that address legacy issues, strengthen platform health, and reduce operational risk.
- Maintain troubleshooting guides, incident documentation, and technical knowledge resources to improve consistency and team effectiveness.
- Improve platform stability, reduce recurring incidents and resolution times, build a high-performing support team, strengthen observability, and use AI-assisted development tools to accelerate engineering outcomes.
Requirements
- Approximately 3–5 or more years of professional software development experience, with strong practical experience building and maintaining production applications.
- Strong proficiency in PHP and experience developing, debugging, and supporting backend applications in production environments.
- Solid knowledge of MySQL, including query optimization, indexing, database performance analysis, and troubleshooting.
- Hands-on experience developing modern frontend applications using React, JavaScript, and HTML5.
- Demonstrated ability to investigate and resolve complex production issues across full-stack applications and interconnected services.
- Experience leading developers or technical support teams, with the ability to coordinate work, prioritize incidents, and guide technical decisions.
- Strong understanding of software architecture, scalable application design, system reliability, and maintainable code.
- Experience conducting code reviews, mentoring developers, and promoting engineering standards and best practices.
- Familiarity with REST APIs and troubleshooting integrations between application components and external services.
- Strong debugging, analytical reasoning, and problem-solving skills, especially when working under pressure or addressing time-sensitive production issues.
- Experience improving application monitoring, logging, alerting, and observability is an advantage.
- Knowledge of Docker and containerized development environments is beneficial.
- Experience with AWS infrastructure and cloud-based application deployment is a plus.
- Familiarity with message queue systems such as RabbitMQ is desirable.
- Understanding of CI/CD pipelines, automated testing, and release management practices is beneficial.
- Experience working within Agile software development teams is an advantage.