About the job
ngrok Inc. builds a cloud networking platform that helps developers securely route and transform traffic to services deployed anywhere. Instead of managing multiple tools like nginx, load balancers, or VPNs, developers use ngrok as a single gateway for networking needs. The platform supports everything from sharing localhost to managing AI workloads in production, and is trusted by over 9 million developers at organizations such as GitHub, Okta, HashiCorp, and Twilio.
ngrok began as a way to expose local applications via public URLs and has grown into a universal gateway for API delivery, AI inference, device fleets, and site-to-site connectivity. The company values strong software development and a lighthearted culture, with a fondness for pets, Viper sunglasses, and Bufo the toad. Even the Chief Emoji Officer plays a part in daily success.
Role overview
The Senior Software Engineer on the Admin Team works on systems that determine user access, permissions, and configuration settings. This team manages identity, access control, and configuration at scale, covering users, certificates, service accounts, domains, and policies. The focus is on answering, "Who can do what?" across the platform. When these systems work well, users barely notice, but if they fail, it can result in lockouts or unintended exposure of sensitive data.
The Admin Team aims to provide customers with powerful control and API access while maintaining sensible security safeguards and defaults. This role involves building systems that balance flexibility and safety without making the user experience cumbersome.
What you will do
- Develop the Control Plane: Design and operate services and APIs that drive admin workflows and shape ngrok's production environment.
- Manage Identity and Access: Enhance and maintain IAM/RBAC systems for users, certificates, and service accounts, covering authentication and authorization.
- Scale Configuration Management: Build global configuration systems for domains, policies, and traffic behavior, supporting both automation and secure human interaction.
- Facilitate Debugging: Improve observability to make diagnosing and resolving issues more efficient.

