GitLab

Intermediate Backend Engineer, Authorization

Listed by employer · Checked

Posted within 60 days ·

  • Workplace not specified
  • Sec Engineering
  • Bangalore, India
  • India
Work arrangement
Not stated
Employment
Not stated
Stated compensation
Not specified
Stated sponsorship
Not stated
Apply on company website ↗
01 / A QUICK CHECK BEFORE YOU APPLY

Does the location policy fit?

Choose where you would work from. We’ll compare it with the posting’s stated requirements.

Choose the country you will work from. You can change this anytime.

Country and sponsorship changes take effect when you click Check eligibility.

Applying from Sri Lanka

Not enough information in this posting — confirm with the employer

Checked for applicants in Sri Lanka; employer sponsorship is needed. Based on the source posting · not a hiring or work-authorization guarantee.

The posting does not specify whether applicants from your country are accepted.

Why this result?

1 supporting signals

  • The role is described as remote; geographic restrictions still apply.

2 still unclear

  • The posting does not specify whether applicants from your country are accepted.
  • Visa sponsorship is not specified.
Source: greenhouseChecked Original posting ↗

Requirements

1 with evidence8 unclear or unstated
Remote policy
remote
“The engine represents access relationships and evaluates permission rules, and can run within the monolith's process or be reached through remote procedure calls using gRPC.”
See matched passage in original description ↓
10 fields not stated in this posting
Employer sponsorship
Not specified
Geographic scope
Not specified
Degree requirement
Not specified
Security clearance
Not mentioned
Timezone / hours
Not specified
Citizenship requirement
Not mentioned
Minimum experience (years)
Not specified
Work authorization
Not specified
Employment type
Not specified
Compensation
Not specified

These details were not stated in the tracked posting. Confirm with the employer.

READ IT IN THE EMPLOYER’S OWN WORDS

Original job description

Reading view uses normalized posting text so exact evidence excerpts can be highlighted.

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. *Fortune 500® is a registered trademark of Fortune Media IP Limited, used under license. Claim based on GitLab data. Fortune 100 refers to the top 20% ranked companies in the 2025 Fortune 500 list, published in June 2025. Fortune and Fortune Media IP Limited are not affiliated with, and do not endorse products or services of GitLab.
Read full descriptionShow less description
An overview of this role As a Software Engineer on GitLab's Authorization team, you'll help build and maintain the system that decides what every user, token, and automated agent can access on GitLab.com, Self-Managed, and Dedicated. You'll work alongside experienced engineers who guide the larger design decisions, delivering well-scoped changes and growing into ownership of larger parts of the system. Today, that work is Ruby on Rails. Roughly 400 policy classes and a catalog of about 1,900 permissions sit behind every application programming interface (API) request. You'll work on fine-grained token permissions, custom roles, and the GraphQL and representational state transfer (REST) APIs that enforce them. A single request can trigger hundreds of permission checks, so correctness and performance both matter. You'll also contribute to moving the permission model to a new authorization stack that pairs the Rails monolith with a Rust policy engine. The engine represents access relationships and evaluates permission rules, and can run within the monolith's process or be reached through remote procedure calls using gRPC. You don't need prior Rust experience: several engineers on the team learned it for this work, and we'll support you doing the same. Some examples of our projects: Refactoring GitLab's policy layer so the same permission definitions can be evaluated by the monolith and the new authorization service Extending fine-grained token permissions to more resources, with guidance from senior engineers on the design What you'll do Implement authorization changes in GitLab's Ruby on Rails monolith so permission checks allow intended access and deny unauthorized access. Deliver well-scoped workstreams from feature-flagged rollout through verifying that the old and new systems produce the same results, with review and guidance from senior engineers. Build and extend fine-grained permissions for tokens and roles so additional resources have permission coverage consistent with the established catalog. Extend and fix authorization enforcement so GraphQL and the REST API enforce the intended permissions consistently. Make incremental refactors to long-lived policy code without changing behavior for existing customers. Investigate and fix reliability, performance, and security issues so affected permission checks return the expected results without regressions. Work with the authentication, platform, and artificial intelligence (AI) teams to document interface contracts that keep permission checks consistent as authorization moves toward a shared service. Contribute to design documents, merge requests, and code reviews so proposed changes have a documented rationale and review feedback is addressed asynchronously. What you'll bring Solid experience building and maintaining production Ruby on Rails applications, typically gained over 2 to 4 years or more. Hands-on experience with authorization concepts, such as role-based access control or fine-grained permissions, from work or projects. A security mindset: you treat a permission bug as a security bug and consider who a change could affect before choosing an implementation. Experience making careful changes to existing codebases, including incremental refactors and feature-flagged rollouts that preserve existing behavior. Familiarity with GraphQL or API authorization patterns. Awareness of performance, including how repeated permission checks can add up on every request. Strong written communication and the ability to work effectively when most decisions happen in a document or merge request rather than a meeting. Helpful, but not required: hands-on PostgreSQL experience, or experience with Rust, gRPC or Protocol Buffers, Cedar or other policy languages, Zanzibar-style authorization systems, Go, or service-oriented architecture. We welcome transferable experience from adjacent domains such as identity, policy engines, and platform security. About the team We work in a fully asynchronous organization, with most decisions made in documents or merge requests rather than meetings. GitLab's mission is to enable everyone to contribute to and co-create the software that powers our world. Our values include collaboration, results, efficiency, diversity, inclusion and belonging, iteration, and transparency. We expect all GitLab team members to incorporate AI into their daily workflows to drive efficiency, innovation, and impact. 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.
Original formatting and links

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.

*Fortune 500® is a registered trademark of Fortune Media IP Limited, used under license. Claim based on GitLab data. Fortune 100 refers to the top 20% ranked companies in the 2025 Fortune 500 list, published in June 2025. Fortune and Fortune Media IP Limited are not affiliated with, and do not endorse products or services of GitLab.

An overview of this role

As a Software Engineer on GitLab's Authorization team, you'll help build and maintain the system that decides what every user, token, and automated agent can access on GitLab.com, Self-Managed, and Dedicated. You'll work alongside experienced engineers who guide the larger design decisions, delivering well-scoped changes and growing into ownership of larger parts of the system.

Today, that work is Ruby on Rails. Roughly 400 policy classes and a catalog of about 1,900 permissions sit behind every application programming interface (API) request. You'll work on fine-grained token permissions, custom roles, and the GraphQL and representational state transfer (REST) APIs that enforce them. A single request can trigger hundreds of permission checks, so correctness and performance both matter.

You'll also contribute to moving the permission model to a new authorization stack that pairs the Rails monolith with a Rust policy engine. The engine represents access relationships and evaluates permission rules, and can run within the monolith's process or be reached through remote procedure calls using gRPC. You don't need prior Rust experience: several engineers on the team learned it for this work, and we'll support you doing the same.

Some examples of our projects:

  • Refactoring GitLab's policy layer so the same permission definitions can be evaluated by the monolith and the new authorization service
  • Extending fine-grained token permissions to more resources, with guidance from senior engineers on the design

What you'll do

  • Implement authorization changes in GitLab's Ruby on Rails monolith so permission checks allow intended access and deny unauthorized access.
  • Deliver well-scoped workstreams from feature-flagged rollout through verifying that the old and new systems produce the same results, with review and guidance from senior engineers.
  • Build and extend fine-grained permissions for tokens and roles so additional resources have permission coverage consistent with the established catalog.
  • Extend and fix authorization enforcement so GraphQL and the REST API enforce the intended permissions consistently.
  • Make incremental refactors to long-lived policy code without changing behavior for existing customers.
  • Investigate and fix reliability, performance, and security issues so affected permission checks return the expected results without regressions.
  • Work with the authentication, platform, and artificial intelligence (AI) teams to document interface contracts that keep permission checks consistent as authorization moves toward a shared service.
  • Contribute to design documents, merge requests, and code reviews so proposed changes have a documented rationale and review feedback is addressed asynchronously.

What you'll bring

  • Solid experience building and maintaining production Ruby on Rails applications, typically gained over 2 to 4 years or more.
  • Hands-on experience with authorization concepts, such as role-based access control or fine-grained permissions, from work or projects.
  • A security mindset: you treat a permission bug as a security bug and consider who a change could affect before choosing an implementation.
  • Experience making careful changes to existing codebases, including incremental refactors and feature-flagged rollouts that preserve existing behavior.
  • Familiarity with GraphQL or API authorization patterns.
  • Awareness of performance, including how repeated permission checks can add up on every request.
  • Strong written communication and the ability to work effectively when most decisions happen in a document or merge request rather than a meeting.
  • Helpful, but not required: hands-on PostgreSQL experience, or experience with Rust, gRPC or Protocol Buffers, Cedar or other policy languages, Zanzibar-style authorization systems, Go, or service-oriented architecture.

We welcome transferable experience from adjacent domains such as identity, policy engines, and platform security.

About the team

We work in a fully asynchronous organization, with most decisions made in documents or merge requests rather than meetings.

GitLab's mission is to enable everyone to contribute to and co-create the software that powers our world. Our values include collaboration, results, efficiency, diversity, inclusion and belonging, iteration, and transparency. We expect all GitLab team members to incorporate AI into their daily workflows to drive efficiency, innovation, and impact.

How GitLab Supports Full-Time Employees

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.

Similar roles

All GitLab jobs →

Matched by role category. Review each posting’s requirements before applying.

Explore stated remote geography

These collections reflect applicant location statements, not authorization or citizenship.

THE JOB ELIGIBILITY CHECKER

Check a job