The DevOps Handbook - Create Organizational Learning

Topics covered
Popular Clips
Episode Highlights
Non-functional Req.
Incorporating non-functional requirements into system design is crucial for enhancing operational performance. Alan Underwood explains that when developers are accountable for incidents, applications are designed with better operational capabilities, such as faster deployment and improved reliability 1. Michael Outlaw adds that non-functional requirements include metrics, telemetry, and the ability to trace requests, which are often overlooked but essential for troubleshooting 1.
Non-functionals are all the stuff that you want to do that your boss doesn't want you to do.
--- Joe Zack
By focusing on these aspects, systems become more robust and easier to maintain, ultimately benefiting the entire organization.
Shared Repo
Maintaining a single shared code repository can significantly enhance consistency and collaboration across an organization. Alan Underwood highlights Google's approach, where a single repository includes not just code, but also configuration standards, deployment tools, and testing standards 2. This strategy ensures that all engineers work with the latest code, reducing dependency issues and improving efficiency 3.
By building everything off a single source tree, you eliminate the problems you encounter when you use external dependency management systems.
--- Alan Underwood
However, Michael Outlaw notes that this approach requires careful planning and agreement on workflows to avoid potential challenges 3.
Build Systems
Efficient build systems are essential for large organizations to ensure fast and reliable software development. Michael Outlaw discusses the importance of using tools like Bazel, which optimize build processes by understanding dependencies and changes 4. This approach minimizes the time and resources needed for builds, making it ideal for companies with extensive codebases 5.
If you build from source, you have exactly what it is that you need.
--- Alan Underwood
While this method is not suitable for every organization, it offers significant advantages for those that can implement it effectively.
Related Episodes
The DevOps Handbook – Enable Daily Learning
Answers 383 questionsThe DevOps Handbook – Architecting for Low-Risk Releases
Answers 383 questions

The DevOps Handbook – Enabling Safe Deployments
Answers 383 questions

The DevOps Handbook – Anticipating Problems
Answers 383 questionsThe DevOps Handbook – The Technical Practices of Feedback
Answers 383 questions

The DevOps Handbook - The Technical Practices of Flow
Answers 383 questions

DevOps: Job Title or Job Responsibility?
Answers 383 questions

The DevOps Handbook – The Value of A/B Testing
Answers 383 questionsJob Hopping an Favorite Dev Books
Answers 383 questionsDocker for Developers
Answers 383 questions

Keyboards, Cloud Costs, Static Analysis, and Philosophy
Answers 383 questionsHow to be a Programmer
Answers 383 questions

Clean Code - How to Build Maintainable Systems
Answers 383 questions

Is Kubernetes Programming?
Answers 383 questions

We <3 Kubernetes
Answers 383 questions
