About this role
About the Role Ubisoft Montréal's Online Services team is responsible for fronting Ubisoft’s online services across studios and titles. As a Senior Software Developer for Online Services, you will design, build and operate distributed Gateway services that power hundreds of millions of player interactions, focusing on high availability, low latency and security. What You'll Do
- Write production-grade, well-tested, idiomatic code in Go and TypeScript/Node.js and Lua, with measurable impact on latency, reliability and security.
- Contribute to the technical design of new Gateway features and high-level architecture decisions.
- Drive the evolution toward a self-serve, API-driven Gateway in AWS so internal customers can onboard routes safely without manual intervention.
- Embed security by design into the Gateway: threat modeling, OWASP API Security Top 10 mitigations, WAF and edge protection policies, hardening of routing, authentication and rate-limiting layers.
- Provision and operate Gateway infrastructure with infrastructure-as-code (Terraform, AWS CDK or CloudFormation).
- Build observability into everything: metrics, structured logs, traces, SLO-driven alerting.
- Be part of an agile team collaboratively working on technical designs, new features and steady improvements of existing code.
- Mentor and support less experienced colleagues; participate in code reviews and architecture discussions.
- Debug, profile and improve the existing code base under production load. What We're Looking For
- 5+ years of professional programming experience.
- Strong proficiency in Go and/or Node.js/TypeScript, with the ability to ramp up on Lua (OpenResty) for the edge layer.
- Strong programming fundamentals: clean code, design patterns, idiomatic use of the language (concurrency in Go, async patterns in Node.js).
- Disciplined testing practices: unit tests, integration tests, test pyramids. Comfortable refactoring legacy code with confidence.
- Hands-on experience debugging and profiling production code (CPU, memory, latency) under load.
- Strong experience designing, building and operating RESTful APIs and distributed backend services at scale.
- Hands-on experience with AWS (deployment, networking, IAM, observability).
- Hands-on experience with infrastructure-as-code (Terraform, AWS CDK or CloudFormation) to provision and operate AWS resources.
- Proficient with CI/CD pipelines (GitLab CI, GitHub Actions or equivalent) and modern DevOps practices.
- Solid understanding of HTTP, TLS, networking fundamentals and API gateway concepts (rate limiting, auth, routing, caching).
- Strong experience with API security: threat modeling, OWASP API Security Top 10, secure-by-default design (authentication, authorization, abuse protection).
- Experience with WAF and edge protection technologies (AWS WAF or equivalent): rule writing, bot mitigation, DDoS protection, rate-limiting policies.
- Bachelor’s degree in Computer Science, Software Engineering or equivalent practical experience.
- Fluent in English and French (the role requires interacting with stakeholders across Ubisoft studios and partners worldwide, as well as colleagues based in other Canadian provinces). Nice to Have
- Experience with nginx/OpenResty and Lua scripting.
- Experience building or operating an API Gateway or service mesh (Kong, Envoy, AWS API Gateway, etc.).
- Knowledge of authentication/authorization protocols (OAuth2, OIDC, JWT, mTLS).
- Experience with self-serve/internal developer platforms.
- Experience with non-AWS clouds (Tencent Cloud, GCP, Azure).
- Hands-on experience integrating AI-assisted development tools (Claude, GitHub Copilot) into team workflows.
- Background in SRE practices: SLOs, error budgets, incident response.
- Experience supporting AAA live games or large-scale online platforms.