Software Engineer
Company: CircleCI
Salary: Not provided
Location: , Canada
CircleCI seeks a Software Engineer passionate about maintaining and crafting the future of services that power the heart of our product. You’ll work across a deep slice of our system on features and capabilities ranging from:
- User identity management.
- User and group access management.
- Login and browser session management.
- API authentication and authorization.
- Secure credentials management.
You’ll collaborate daily with dedicated colleagues across the world. This is a full-time, fully remote role that requires you to participate in our on-call support rotation as well as incident management.
About The CIAM Team
The CIAM team, embedded within the Foundations division, is responsible for the user identity experience from sign-up, through to access management. We power the authentication/authorization of all CircleCI APIs, including rate-limiting. We are engaging in exciting projects like Single Sign-On (SSO), and more advanced fine-grained authorization.
About Foundations
The Foundations division is the very heart of CircleCI; its teams build, own, and operate the collection of services that fully realize customer builds, from a trigger into a status out and everything in between. Teams within the Foundations division work on capabilities like user access and management, pipeline processing, orchestration, job execution, and focus heavily on reliability, security, and performance.
What You’ll Do
- Design and build new features, simplify existing services, automate and scale our systems as we continue to rapidly grow and evolve.
- Write sustainable, testable, high-quality, high-performance code.
- Support, maintain, and debug production microservices in a highly complex distributed system.
- Champion a culture of observability and monitoring by using operational data to help your team improve the stability and performance of our systems.
- Partner with members of a cross-functional team and other partners to set the direction of our platform and product: learn about our business problems, explore solutions, weigh design tradeoffs, and prioritize them to deliver maximum value in a sustainable, incremental fashion.
What You’ll Bring
- 3-5 years as a full time professional developer with experience building reliable, zero-downtime, observable distributed systems.
- The utmost care in regards to how your code runs in production. You have familiarity with observability tools like Honeycomb, Datadog, Graylog, and Rollbar, and understand how to use that information to address a problem.
- Ability to write code that’s easily readable, testable, maintainable, and documented.
- Interest in improving the lives of our customers and the team, and can use just enough code with a keen eye on constraining complexity. We use Go primarily, but you'll also encounter TypeScript, and Clojure - all deployed into Kubernetes and as agents on our compute fleet.
- Ability to learn and think critically about both system design and software engineering concepts and blend those perspectives pragmatically based on project needs.
- Ability to quickly adapt when priorities change and making conscious tradeoffs with incomplete information.
- Bonus: Experience with identity management systems, OAuth, OIDC, JWTs and/or React with Next.js.
Get TypeScript jobs in your inbox
Copyright © ReadingWaters 2025.