Senior Software Engineer – Data & ML Platform
GoMaterialsGoMaterials is one of Canada's fastest-growing companies, recognized by Deloitte, the Globe & Mail, and the Lazaridis Scaleup Program. We’re revolutionizing how landscape contractors source plant and hardscape materials through a B2B marketplace that simplifies procurement in a traditionally outdated industry. Since our inception, we have helped landscapers save time, money, and stress and plant over 1.5 million plants and trees. Led by a young and eager group of entrepreneurs, GoMaterials is aggressively expanding across North America. We are therefore looking for amazing people to add to our team! About the Role We’re looking for a Senior Software Engineer to take ownership of the production systems and internal data platform that power our Machine Learning (ML) and Operations Research (OR) work. This is a hands-on, high-ownership role at the intersection of backend engineering, cloud infrastructure, and data engineering . You’ll work closely with our ML and OR specialists to ensure models and optimization solutions can move reliably from experimentation into production. You’ll inherit existing production systems and have the opportunity to improve and evolve them over time—from architecture and infrastructure to deployment, observability, and developer tooling. As our needs grow, you’ll also help shape the roadmap for our internal data and ML platform. Because we’re a small team, you’ll have meaningful autonomy. You’ll be the primary owner of these systems, collaborate directly with technical specialists and product teams, and have significant influence over architecture, tooling, and engineering practices. What You’ll Do Own and Evolve Production Systems Own, operate, and improve backend services running in Azure, including serverless services, batch workloads, and ML inference endpoints. Manage deployments and reliability across environments, including CI/CD, monitoring, alerting, incident response, and operational runbooks. Operate and optimize cloud compute environments, including autoscaling, container images, identity, and resource management. Improve the reliability, scalability, and maintainability of existing production systems over time. Build Our Data & Cloud Platform Design and build reliable ETL/ELT pipelines that transform data from relational and document databases into analysis-ready datasets. Help develop our lakehouse-style analytical layer and the infrastructure that supports it. Build and maintain infrastructure-as-code across environments using tools such as Terraform or Bicep. Manage cloud infrastructure including storage, application hosting, identity and access management, Key Vault, and cost optimization. Implement monitoring, logging, data-quality checks, and freshness alerting across data workflows. Ensure data is handled securely through appropriate access controls, secrets management, and responsible treatment of sensitive information. Build new internal services, APIs, and developer tooling as the team's needs evolve. Enable ML & Operations Research Build the infrastructure and tooling our ML and OR specialists need for experimentation, deployment, evaluation, and reproducibility. Turn research prototypes into reliable, production-ready services and workflows. Own model packaging, versioning, deployment, and CI processes for ML and OR codebases. Build automated evaluation and benchmarking pipelines to monitor model performance, drift, and system reliability. Partner with Data Scientists and OR specialists to run and operationalize experiments. Raise the Engineering Bar Establish strong practices around code quality, automated testing, version control, and CI/CD. Conduct peer code reviews and help teammates adopt scalable engineering practices. Improve existing systems incrementally rather than rebuilding for the sake of rebuilding. Help ensure our codebases remain maintainable and releasable as the team and platform grow. Collaborate A…