Job Description
### About Supabase
Supabase is the Postgres development platform, built by developers for developers. We provide a complete backend solution including Database, Auth, Storage, Edge Functions, Realtime, and Vector Search. All services are deeply integrated and designed for growth.
### About the Role
Auth, written in Go (server) and with client libraries for TypeScript, SSR, and other frameworks, is one of the most popular products in the Supabase stack. We are seeking someone to help us build new and maintain existing Auth features.
### Responsibilities
- Design and implement secure, scalable authentication features in Go and TypeScript.
- Work across the stack: from server-side protocols to client-side libraries for frameworks like Next.js.
- Own the performance, reliability, and scalability of the Auth server across Supabase's infrastructure.
- Contribute to the evolution of our Auth architecture, including support for OAuth, OIDC, SAML, and other protocols.
- Plan and execute safe database migrations across a large fleet of Postgres instances.
- Build and improve observability: metrics, tracing, alerting, and dashboards to keep the system healthy at scale.
- Write and review RFCs as part of our product development process.
- Collaborate with engineers across Supabase to ensure a seamless experience for developers using our tools.
- Support the community and respond to developer feedback on GitHub, Discord, and other channels.
### You Might Be a Good Fit If You Have:
- 4+ years of professional experience writing and shipping Go in production.
- 2+ years of professional experience working on an authentication system.
- Strong relational database experience (Postgres or MySQL); Postgres experience is a bonus.
- Strong knowledge of TypeScript in addition to Go.
- Good knowledge of web technology fundamentals (cookies, sessions, JWT, HTTP, browser APIs).
- Deep interest in authentication security (passwords, protocols such as OAuth, OIDC, or SAML).
- Experience with multiple web frameworks like Next.js, Ruby on Rails, Django, or Laravel.
- Good technical writing skills (RFC process is important).
- Hands-on experience building and operating services at significant scale.
- Deep understanding of systems-level concerns in Go.
- Experience with Kubernetes and AWS (or comparable cloud platform) in a production setting.
- Solid grasp of observability practices (metrics, distributed tracing, structured logging, and alerting).