GitLab Inc.

Senior Software Engineer (Ruby), Security Platform: Authorization

GitLab Inc.$139K — $235K *
US-Anywhere
+ 2 other locationsRemote
Information Technology
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • 5-7 years building and operating production Ruby on Rails applications
  • Experience in designing or implementing authorization systems with role-based access control and fine-grained permissions
  • Strong security mindset treating permission issues as critical
  • Comfortable making changes to large, long-lived codebases with a careful approach
  • Knowledge of GraphQL and API authorization patterns
  • Attention to performance at scale regarding permission checks
  • Strong written communication skills for asynchronous decision-making

Responsibilities

  • Design and implement authorization changes in the Ruby on Rails monolith
  • Own workstreams from problem definition to feature rollout and verification
  • Build and manage fine-grained permissions and keep the catalog coherent
  • Enhance authorization enforcement across GraphQL and REST API
  • Refactor policy code for compatibility with both monolith and new engine
  • Improve reliability and security of existing authorization systems
  • Collaborate with teams on interface contracts as authorization evolves

Benefits

  • Health, financial, and well-being support
  • Flexible Paid Time Off
  • Team Member Resource Groups
  • Equity Compensation & Employee Stock Purchase Plan
  • Growth and Development Fund
  • Parental Leave
Full Job Description
An overview of this role

As a Senior Software Engineer on GitLab's Authorization team, you will own significant parts of the system that decides what every user, token, and automated agent can access on GitLab.com, Self-Managed, and Dedicated.

Today that work is Ruby on Rails. Roughly 400 policy classes and a YAML catalog of about 1,900 permissions sit behind every API request. You will work on the permission model itself (fine-grained token permissions, custom roles, and the GraphQL and REST surfaces that enforce them). You will also help move that model onto GitLab's next-generation authorization stack, which pairs the Rails monolith with a Rust policy engine using Zanzibar-style relationship tuples and Cedar policies. The monolith already loads that engine in-process and can reach it over gRPC.

Some examples of our projects:
  • Refactoring GitLab's policy layer so the same permission definitions can be evaluated by the monolith and by our new authorization service
  • Extending fine-grained token permissions to more resources and more kinds of principal, including the service identities behind AI agents
  • Bringing GitLab's first modular service, Artifact Registry, onto the new authorization stack
  • Isolating custom-role and permission data per organization ahead of GitLab Cells
What you'll do
  • Design and ship authorization changes in GitLab's Ruby on Rails monolith, where a single request can trigger hundreds of permission checks.
  • Own a workstream end to end. Problem definition through feature-flagged rollout, dual-run verification, and cleanup.
  • Build and extend fine-grained permissions for tokens and roles, and keep the permission catalog coherent as it grows.
  • Extend and harden authorization enforcement across GraphQL and the REST API.
  • Refactor long-lived policy code so both the monolith and our new authorization engine can evaluate it, without changing behavior for existing customers.
  • Improve the reliability, performance, and security posture of existing authorization systems, including paying down permission-model debt.
  • Partner with the authentication, platform, AI, and modular-service teams on interface contracts as authorization moves toward a shared service.
  • Drive technical decisions in writing. Design docs, architecture decision records, and code review, in a fully asynchronous organization.
What you'll bring
  • Significant experience building and operating production Ruby on Rails applications.
  • Experience designing or implementing authorization systems, including role-based access control and fine-grained permissions.
  • A security mindset. You treat a permission bug as a security bug, and you reason about blast radius before elegance.
  • Comfort making careful changes to large, long-lived codebases. Incremental refactors, feature-flagged rollouts, and migrations that must not change behavior for existing users.
  • Working knowledge of GraphQL and API authorization patterns.
  • Attention to performance at scale. You understand why one uncached check matters when it runs hundreds of times per request.
  • Strong written communication. You are effective when most decisions happen in a document or a merge request rather than a meeting.
  • Helpful but not required: Rust, gRPC or Protocol Buffers, Cedar or other policy languages, Zanzibar-style authorization systems, Go, or service-oriented architecture. Several engineers on this team picked up Rust for this work and we will support you doing the same.
  • We welcome transferable experience from adjacent domains such as identity, policy engines, and platform security.
About the team

The Authorization team owns the capabilities that determine what users, tokens, and automated agents can access across GitLab. Our work runs on two tracks. We are strengthening the permission model inside the Ruby on Rails monolith (fine-grained token permissions, custom roles, and the policy layer that enforces them), and we are moving that model onto a shared authorization platform built for GitLab's modular and cell-based future.

We work closely with the teams building GitLab's authentication layer, its Rust authorization engine, and the first modular services adopting it. The team is small, distributed across time zones, works in the open, and makes its decisions in writing.

The base salary range for this role's listed level is currently for residents of the United States only. This range is intended to reflect the role's base salary rate in locations throughout the US. Grade level and salary ranges are determined through interviews and a review of education, experience, knowledge, skills, abilities of the applicant, equity with other team members, alignment with market data, and geographic location. The base salary range does not include any bonuses, equity, or benefits. See more information on our benefits and equity. Sales roles are also eligible for incentive pay targeted at up to 100% of the offered base salary.

United States Salary Range

$139,200-$235,200 USD

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.

About GitLab Inc.

GitLab Inc. is a web-based Git repository manager that provides source code management, continuous integration and deployment, and other software development-related tools. GitLab Inc. was founded in 2011 by Dmitriy Zaporozhets and Valery Sizov. The company has more than 1,400 employees and more than 100,000 customers. GitLab is a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security. GitLab helps teams accelerate software delivery and reduce the cycle time to bring ideas to market. GitLab is a remote-first company, with team members located in more than 65 countries.
Learn more about GitLab Inc.
Size
1,400 employees
Market Cap
$6.5 billion
Industry
Founded
2014
NASDAQ

Similar Jobs

More Jobs at GitLab Inc.

More Information Technology Jobs

Find similar Senior Software Engineer (Ruby), Security Platform: Authorization jobs: