Senior Software Engineer, SSCS : Authentication

GitLab · Bengaluru, Karnataka

GitLab is the intelligent orchestration platform for DevSecOps. GitLab enables organizations to increase developer productivity, improve operational efficiency, reduce security and compliance risk, and accelerate digital transformation. More than 50 million registered users and more than 50% of the Fortune 100* trust GitLab to ship better, more secure software faster.

The same principles built into our products are reflected in how our team works: we embrace AI as a core productivity multiplier, with all team members expected to incorporate AI into their daily workflows to drive efficiency, innovation, and impact. GitLab is where careers accelerate, innovation flourishes, and every voice is valued. Our high-performance culture is driven by our values and continuous knowledge exchange, enabling our team members to reach their full potential while collaborating with industry leaders to solve complex problems. Co-create the future with us as we build technology that transforms how the world develops software.

An overview of this role

Help us build the next generation of authentication services at GitLab. As a Senior Backend Engineer on the Authentication team, you'll build authentication features across the Rails monolith and GATE. GATE is our new service for issuing and validating tokens and managing identities, designed to support every GitLab deployment model.

You'll expand authentication mechanisms, including support for identities used by artificial intelligence (AI) agents. You'll also help keep GitLab and its customers secure by building access management tooling and addressing vulnerabilities reported through our HackerOne program.

GATE will become the foundation for token issuance, validation, and identity services across GitLab.com multi-tenant software as a service (SaaS), Self-Managed, Dedicated, and air-gapped environments. Your work will affect core components that customers, users, and GitLab teams rely on.

Some of our projects include:
- Building GATE as the centralized service for token issuance and validation
- Consolidating tokens and migrating authentication paths out of the Rails monolith
- Building passkeys and passwordless authentication
- Developing composite identities that combine machine and human authorization for AI
- Improving service accounts and secure automation
- Enhancing Security Assertion Markup Language (SAML), Lightweight Directory Access Protocol (LDAP), OpenID Connect (OIDC), and System for Cross-domain Identity Management (SCIM) capabilities for automated user provisioning and single sign-on (SSO)

What you'll do
- Shape the roadmap for GATE and GitLab's authentication services with the team.
- Design and implement token issuance, validation, and identity services in Go and Ruby across the Rails monolith and GATE, including new authentication mechanisms such as Workload Identity Federation.
- Migrate authentication and token management paths from the monolith into GATE while maintaining reliability across all deployment models.
- Build authentication mechanisms from the ground up, such as Workload Identity Federation.
- Strengthen security for users and organizations through access management tooling and by addressing vulnerabilities reported through our HackerOne program.
- Define and improve standards for style, maintainability, and engineering practices in a high-scale environment, and advocate for them through code review.
- Communicate publicly about GitLab initiatives, projects, and contributions from people not working for GitLab Inc. Reflect GitLab's values in these communications.
- Ship moderately sized features and improvements with moderate guidance and support from other team members, and collaborate on larger projects, including the build-out of GATE.
- Participate in the maintainer trainee program at your own comfortable pace while working toward becoming a project maintainer.

What you'll bring
- Professional experience with Go and/or Ruby in scaling or mission-critical SaaS products.
- Familiarity with authentication and authorization technologies or techniques, such as OAuth, OIDC, SAML, SSO, SCIM, LDAP, JSON Web Tokens (JWTs), role-based access control (RBAC), or identity and access management (IAM).
- Knowledge of token systems, cryptographic signing, and key management.
- Experience building or contributing to a service from concept to production, including proposal, discussion, and execution.
- Proficiency in written and verbal English, with the ability to communicate complex problems and solutions clearly in a remote, largely asynchronous work environment.
- Experience diagnosing, preventing, and resolving performance and optimization problems.
- Experience working in an iterative software development process, managing your work effectively, staying organized, and following through on priorities.

About the team

Our mission is to empower GitLab system administrators with the toolkit they need to create their desired balance of security and accessibility for their GitLab experience.

Authentication is the first impression a new customer has when they configure a new GitLab instance. We aim to make it as seamless as possible, from that first login to onboarding users and managing security rules for their instance in a secure, flexible, and scalable way.
How GitLab Supports Full-Time Employees
- Benefits to support your health, finances, and well-being
- Flexible Paid Time Off
- Team Member Resource Groups
- Equity Compensation & Employee Stock Purchase Plan
- Growth and Development Fund
- Parental Leave

Please note that we welcome interest from candidates with varying levels of experience; many successful candidates do not meet every single requirement. Additionally, studies have shown that people from underrepresented groups are less likely to apply to a job unless they meet every single qualification. If you're excited about this role, please apply and allow our recruiters to assess your application.

Country Hiring Guidelines: GitLab hires new team members in countries around the world. All of our roles are remote, however some roles may carry specific location-based eligibility requirements. Our Talent Acquisition team can help answer any questions about location after starting the recruiting process.

Privacy Policy: Please review our Recruitment Privacy Policy. Your privacy is important to us.

GitLab is proud to be an equal opportunity workplace and is an affirmative action employer. GitLab’s policies and practices relating to recruitment, employment, career development and advancement, promotion, and retirement are based solely on merit, regardless of race, color, religion, ancestry, sex (including pregnancy, lactation, sexual orientation, gender identity, or gender expression), national origin, age, citizenship, marital status, mental or physical disability, genetic information (including family medical history), discharge status from the military, protected veteran status (which includes disabled veterans, recently separated veterans, active duty wartime or campaign badge veterans, and Armed Forces service medal veterans), or any other basis protected by law. GitLab will not tolerate discrimination or harassment based on any of these characteristics. See also GitLab’s EEO Policy and EEO is the Law . If you have a disability or special need that requires accommodation , please let us know during the recruiting process .

Apply on GitLab's site