As a senior member of the Schedule Engine Engineering team, you’ll be responsible for system architecture, design, implementation, and operation of a distributed dynamic capacity planning engine that enables thousands of Home Services contractors to schedule tens of thousands of service calls every month to hundreds of thousands of residential properties across the US and Canada, either online or via our Live Services offerings.
You’re a full stack developer with extensive experience of creating simple solutions to complex problems. You’re comfortable with taking ambiguous requirements directly from customers and working with your fellow engineers to deliver products and services for use directly by customers and by internal operations teams. You’re able to balance rapid delivery of functional requirements while holding yourself and your peers to the highest standards, and keep maintainability and extensibility top of mind.
You have a solid grasp of well architected software and systems principles including security, operational excellence, cost optimisation, scalability and resilience. You know that all these principles are important and are able to articulate their importance to your technical peers and non technical audiences to ensure they’re dealt with appropriately. You understand how to operate systems in an always on, 24 x 7 x 365 environment, and have a continuous improvement mindset that you apply proactively and reactively to ensure the highest level of service possible.
You’re driven by delivering maximum value at all times and have the business acumen and pragmatism to make trade offs that balance short term gain with long term benefits. You enjoy working in a scrappy, startup-like environment where the only constant is change, and adapting to change is something you thrive on. You’re a team player who values working with colleagues across disciplines including but not limited to Design, R&D, and Product Management. You understand that establishing and maintaining strong partnerships allows you to deeply understand what customers want and need - whether they know it or not - and constantly exceed their expectations.
Our development teams are primarily based in Toronto, Ontario, CA, but this role is open to candidates based in most parts of Canada or the US
- Minimum of 6 years industry experience, with at least 2 years in a senior developer role.
- Extensive experience with CI/CD, automated testing, release management, canary deployments, test in production.
- Experience operating production systems including monitoring, alerting, and incident response.
- Proven track record of delivering technology solutions to significant, complex business problems.
- Experience designing and developing RESTful web services and ideally with GraphQL.
- Working knowledge of container deployment in cloud based environments (ideally k8s on AWS).
- Sound understanding of secure coding practices e.g. OWASP Top 10 and of security throughout the Software Development Life Cycle.
- Practical experience with or deep understanding of automated capacity planning principles.
- Web development experience with React, Material-UI, Express.
- Extensive experience with AWS managed services.
- Experience developing and operating microservices implemented in C# and running on the .NET framework.
- Experience with MongoDB including performance optimization.
- Experience with Kafka or similar event streaming technology.
- Experience with Prometheus, Grafana, or similar monitoring and dashboarding tool chains.
- Knowledge of Field Service Management (FSM) software such as ServiceTitan, Successware, Housecall Pro.