For Employers
Apply Now

Please mention DailyRemote when applying

?Not checked yet0100
Resume Match Score

See how much of this job your resume covers, and what’s missing.

Want a recruiter to go through it line by line?

Get professional review

Tailor your resume to this job

One click makes a copy of your resume for this role, scores it against the posting, and proposes edits line by line. Your default resume is never changed.

  • Job match score for this posting
  • Edits you accept or skip, no invented facts
  • Download it when it reads right: TXT free, PDF with Premium

Create a cover letter for this job

Upload your resume and we draft a letter for this exact role, tailored to what it asks for.

  • Tailored to this role
  • Based on your resume
  • Fully editable
AI Summary

You will implement and maintain authorization logic within the Ruby on Rails monolith and contribute to the migration toward a Rust-based policy engine. This involves building fine-grained permissions for tokens and roles while ensuring consistent enforcement across GraphQL and REST APIs.

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.

Automatically Apply to the Best Remote Jobs

Stop the endless job search. Our AI finds and applies to the best jobs for you.

Try it Now
Keep looking

Similar Jobs

See all Remote Software Development jobs →

BI Developer

Full Time United States $125K per year Software Development

Digital Health Technical Lead

Full Time United States $37.95 - $64.92 per hour Software Development

Application Engineer CAD/CAM California or Michigan

Full Time United States $90000 - $130K per year Software Development

Software Engineer II and/or Senior Software Engineer - AI Compilers

Full Time United States $102K - $261K per year Software Development

Database Developer

Freelance United States $40 - $60 per hour Software Development

Salesforce Developer (Remote in India)

Full Time India 1770K - 2840K per year Software Development
Apply Now

Personalize your Remote Job Search in 3 Easy Steps!

Featuring 215,609+ Jobs in Backend Engineer

Answer easy questions

Answer easy questions

215,609+ jobs across 15+ categories

Get your best job matches

Get your best job matches

Only hand-screened, legit jobs

Find a remote job faster

Find a remote job faster

No ads, scams, or junk

“I was the first applicant for a remote marketing position that got listed on the company website the same day I applied. Had an interview within 48 hours!”

Sarah J. — Sarah J. · Marketing Manager ★★★★★ Verified