Home / Companies / GitHub / Blog / Post Details
Content Deep Dive

How we organize and get things done with SERVICEOWNERS

Blog post from GitHub

Post Details
Company
Date Published
Author
Max Beizer
Word Count
1,010
Language
English
Hacker News Points
-
Summary

GitHub's primary codebase, a large Ruby on Rails monolith, has adopted a new organizational layer called SERVICEOWNERS to enhance the management of its growing platform. This service-oriented approach introduces a "maintainer" model instead of "ownership," aligning with GitHub's open-source ethos and creating clarity in service relationships. The SERVICEOWNERS file, alongside the existing CODEOWNERS, links code to specific services and maintainers, which is further detailed in a service catalog. This catalog centralizes information about service performance, dependencies, and maintainers, facilitating efficient communication and reducing incident remediation times. A Ruby gem integrates with the Rails app to automate updates and provide queries about service maintainers, while an ownership.yaml file allows service boundaries to span multiple repositories. This framework, beneficial for both open-source and corporate environments, aims to make maintaining services more straightforward and aligns with GitHub's open-source identity and access management initiatives.