The Fundamentals program has helped us address tech debt, improve reliability, and enhance observability of our engineering systems.
Overview
GitHub's Engineering Fundamentals program aims to ensure the availability, security, and accessibility of its platform for over 100 million users. The program focuses on addressing technical debt, improving reliability, and enhancing observability through a structured governance approach.
What You'll Learn
1
How to measure progress against Availability, Security, and Accessibility goals using Fundamental Scorecards
2
Why establishing a culture of accountability is crucial for engineering governance
3
How to implement automated monitoring for service compliance with engineering fundamentals
Key Questions Answered
What are the main pillars of GitHub's Engineering Fundamentals program?
The main pillars of GitHub's Engineering Fundamentals program are Accessibility, Security, and Availability. These pillars guide the organization's focus areas to ensure that products and services are built right for all users.
How does GitHub measure progress in its Engineering Fundamentals program?
GitHub measures progress using Fundamental Scorecards that assess services against specific performance standards related to Availability, Security, and Accessibility. Each service's attributes are captured in a YAML file, which the scorecards monitor for compliance.
What roles are involved in maintaining the Fundamentals program?
Key roles in maintaining the Fundamentals program include the Executive Sponsor, Pillar Sponsor, Directly Responsible Individual (DRI), Scorecard Champion, Service Sponsors, and Fundamentals Delegates. Each role contributes to ensuring compliance and driving the program's success.
What actions does GitHub take when a service does not meet scorecard requirements?
When a service does not meet scorecard requirements, an action item is generated with a Service Level Agreement (SLA) for resolution. An issue is automatically created in the service's repository to facilitate tracking and resolution of the unmet requirements.
Key Statistics & Figures
Number of users on GitHub
over 100 million
This statistic highlights the scale at which GitHub operates and the importance of maintaining high standards of availability and security.
Percentage of Fortune 100 supported by GitHub
90%
This indicates the trust major enterprises place in GitHub's platform and underscores the need for robust engineering practices.
Key Actionable Insights
1Implementing Fundamental Scorecards can significantly enhance service compliance and reliability.By utilizing scorecards, teams can systematically monitor their services against established standards, ensuring that they meet the necessary requirements for Availability, Security, and Accessibility.
2Fostering a culture of accountability within engineering teams is essential for the success of governance programs.When teams understand their roles and responsibilities in maintaining service quality, it leads to better collaboration and proactive risk management.
3Automating processes related to monitoring and compliance can reduce manual overhead and improve efficiency.GitHub emphasizes that anything done more than once should be automated, which aligns with best practices in software engineering to streamline workflows.
Common Pitfalls
1
Neglecting to automate processes can lead to increased manual workload and potential errors.
In fast-paced engineering environments, relying on manual processes can slow down development and increase the risk of oversight. Automation helps maintain consistency and efficiency.