Software Engineer II, End User Protection
Build and operate scalable Attack Protection and identity services for Auth0, using Node.js and cloud technologies while implementing protocols such as OAuth, OpenID Connect, and SAML. The role requires experience with reliable distributed systems, application security, and cross-functional technical leadership.
About the job
Responsibilities
- Design and build features using Node.js, JavaScript/TypeScript, AWS, Azure, MongoDB, PostgreSQL, DynamoDB, and Kubernetes.
- Break down complex requirements into clear, modular, actionable engineering tasks.
- Estimate medium- to large-sized initiatives while managing risk and communicating technical trade-offs, timelines, and dependencies.
- Collaborate with Product Management, Security, and Infrastructure stakeholders and advocate for technical roadmaps.
- Implement identity protocols and open standards, including OpenID Connect, OAuth, and SAML.
- Maintain and operate services at large scale.
- Participate in scheduled on-call rotations.
- Foster technical excellence and collaborative ownership.
Requirements
- Practical experience with Node.js, JavaScript, TypeScript, or a similar language.
- Experience building highly reliable, maintainable, and scalable systems.
- Understanding of application security and cloud security best practices.
- Systematic problem-solving, strong communication, ownership, and drive.
- Experience influencing engineering strategy and completing complex, multi-quarter projects across organizational boundaries.
- Experience with cloud environments, preferably AWS and Azure.
- Ability to communicate and collaborate effectively in a remote working environment.
- Experience designing, analyzing, and troubleshooting large-scale distributed systems.
- Enthusiasm for identity protocols such as OAuth, OpenID Connect, and SAML.
Nice to Have
- Knowledge of OAuth, OpenID Connect, and SAML.
- Knowledge of security engineering and application security.
- Experience with architecture principles across infrastructure, security, data, integration, and application layers.
Compensation and Benefits
- Annual base salary range in Canada: $110,000–$151,800 CAD.
- Equity, bonus, health, dental and vision insurance, RRSP matching, healthcare spending, telemedicine, and paid leave, including PTO and parental leave.
Skills
Node.js, JavaScript, TypeScript, AWS, Azure, MongoDB, Postgres, DynamoDB, Kubernetes, Openid Connect, OAuth, SAML, Application Security, Cloud Security, Distributed Systems
Similar jobs
Backend Engineering jobsBuild scalable backend tools and features that improve trust and safety for Lyft riders and drivers. The role requires 3+ years of software engineering experience, strong Python or Go skills, and experience with distributed systems and concurrency.
Build and launch pricing and rider-engagement systems for Lyft’s marketplace, focusing on latency-sensitive distributed systems, concurrency, experimentation, and scalable backend services. The role requires 3+ years of software engineering experience and strong Python or Go skills.
Software engineer responsible for designing and delivering reliable, large-scale fulfillment systems for Lyft’s ridesharing marketplace. The role requires 3+ years of industry experience, distributed-systems expertise, cloud-platform experience, and proficiency with CI tools.
Build and operate production backend features, APIs, integrations, and services for a large-scale DevSecOps platform. The role requires professional backend development experience, strong database and testing fundamentals, independent feature ownership, and clear asynchronous communication.
Build and maintain Ruby on Rails backend systems for GitLab’s vulnerability management workflows, including security dashboards, reports, and ingestion pipelines. The role requires backend application experience, PostgreSQL knowledge, technical problem-solving, and effective collaboration in a distributed team.