Everyone in DevOps knows Adrian Cockcroft (@adrianco). Among other things, he’s the director of architecture for the Cloud Systems team at Netflix. He is focused on availability, resilience, performance, and measurement of the Netflix cloud platform. While he was a Sun Distinguished Engineer, he wrote the famous “Sun Performance and Tuning; Resource Management; and Capacity Planning for Web Services,” which ten years ago, every sysadmin running a major site knew merely as “the Porsche book.”
Adrian Cockcroft is one of my favorite people on the planet. He’s one of those people that you get smarter just by being in proximity with him. He’ll utter simple statements that will often have me pondering for weeks, usually resulting in a big “a-ha” moment.
Adrian is a consummate IT practitioner. I first learned about his work when I was an intern at Sun Microsystems almost twenty years ago — he was one of the fifty or so rarefied Distinguished Engineers, who were obviously some of the smartest people on the planet. I learned more recently that he was the first person invited to join those ranks from the field professional services organization. Neat.
Adrian is one of those people you find near every significant inflection point in the last twenty years of our industry’s history. During the 1990s, he was helping organizations deploy systems at unprecedented scale, paving the way towards the dot-com boom. When eBay was having their chronic site availability and capacity issues during the early-2000s, Adrian was helping them get back on their feet. And at Netflix, he was part of the team that made the earliest engineering design decisions at Netflix that led to massive adoption of cloud services, Chaos Monkey and the rest of the Simian Army.
Now he wants you to submit your best DevOps automation work in the Netflix OSS Cloud Prize. Not only will this earn you fame (you wrote the DevOps Monkey!) and friends (you’ll meet the Netflix engineering team!), but also a shot at winning $10,000!
Below, you’ll learn more about why Adrian is so passionate the Netflix OSS, DevOps and tips on submitting a winning entry.
Q: You’ve spent most of this year getting the word out about the Netflix OSS. Why is this project so important to you?
Speed wins. Everything we can do to speed up delivery of business value increases competitiveness and makes all employees happier. Speed comes from getting out of the way of innovation, using big data analytics, freedom and responsibility culture for decisions, and cloud.
The Netflix OSS defines how a cloud native architecture provides the patterns to support self service agile continuous delivery. I’m excited to share the way Netflix does this as OSS, both to see what others do with our code, and to test/validate our approach.
(A huge milestone for Adrian was when IBM rearchitected and rewrote their famous canonical Acme Air WebSphere application using Netflix OSS. Wow. Read how and why they did it here.)
Q: How does this fit into the work you’ve been doing at Netflix, such as the famous Chaos Monkey and the rest of the Simian Army?
At Netflix, architecture implements patterns that we hope our developers will follow. You can do it by having a big stick and an architecture review board forcing everyone to do something a certain way, but we do it by creating patterns and tooling that encourage people to have an easier life when they follow the architecture. It’s much more of an emergent system, where the architecture emerges from everything that we do.
Q: You’ve mentioned to me that you’re looking for more ops automation projects in the Netflix Cloud Prize, that ends on September 9/15. What are elements of a winning entry? In other words, what kinds of projects are you hoping will get contributed?
We have several entrants who have automated installation of NetflixOSS components by providing AMIs, Chef, Puppet, Ansible and Juju charms, but I would like to see more people running performance stress tests and documenting response times and throughput for various configurations. This is particularly needed for Zuul, our API gateway, but in general I’m looking for contributions that will make it easier to pick the right configuration settings and instance type for a service and get up and running more easily.
Q: Is there any advice you’d give to anyone who is looking to contribute to the next DevOps Monkey project?
Every bit helps. Taking an existing tool you know well and adding some glue code or config to make it work with NetflixOSS is probably the easiest way to make an entry. If other people find it useful it’s quite likely to be nominated.
And remember, The Netflix Cloud Prize ends September 15th, so we are trying to get the procrastinators to get moving. We don’t have as many entries from individuals or entries in the ops automation categories as I’d like yet.
Lastly, A Life Lesson From Adrian
In July, I had the pleasure of hanging out with Adrian while he was driving through town. Among other things, I had mentioned to him how much I believe in this pithy saying: “You’re only as smart as the average of the top five people you hang out with.”
Adrian related some of his experiences as a Sun Distinguished Engineer. One of the questions he get asked was, “How does someone actually become a Sun DE?” His response was this, umm, PowerPoint slide. (Actually, it was probably written in LaTeX or troff or something. 🙂
To me, this is a wonderful, as well as tried-and-true life strategy. Here’s how I would paraphrase it: “To become a Sun DE, you first need to be very good at something, ideally something to solve other Sun DE’s biggest problems. To do this requires that you know who the Sun DEs are. When you solve their biggest problems, not only will the other Sun DEs know you, they’ll be waiting in line to talk to you. And voila, you’re a Sun DE.”
Of course, it’s not that easy. But that’s what’s so awesome about Adrian. He makes everything look easy. 🙂