From Engineering to DevOps
I presented this cartoon to our development staff during a recent planning meeting because I think it’s a nice illustration of the progressive change in software engineering process over the past twenty years. While the cartoon portrays the change as evolutionary, it has also been revolutionary. Continuous development and continuous operations enable developers to deliver rapid iterations on their products in response to customer needs--meaning what previously took months to deliver can now be done in a matter of days or hours.
When I joined Sauce Labs a few months ago as the Vice President of Engineering. I knew I wasn’t signing on for your typical, run-of-the-mill engineering management job. Sauce Labs is a young company, working with a new technology, that is experiencing tremendous growth. With its roots in open source, and a strong ethos formed around supporting individual developers, Sauce Labs is evolving into an enterprise software company. In order to scale to meet the demands of large enterprise customers, the Engineering discipline at Sauce Labs would also need to evolve. So, I wasn’t just accepting a job, but accepting responsibility for leading the Sauce Labs Engineering team through this critical journey which can be challenging but also very rewarding. I've done this before at companies like Citrix Online, Lynda.com, and GoDaddy, so I went into this with eyes wide open for the journey ahead.
What I like about this cartoon is that it’s not just a good illustration of evolution within the software industry, but also of evolution within software companies as they mature. All companies start with a few clever founders who have had a good idea about some problem that needs solving. If they stay small, with a handful of developers at the controls, they can remain at an early evolutionary stage for a long time. If they grow, however, there always arrives a point where the company needs to evolve its organization, processes, and technical systems so it can continue to deliver a high-quality product. When evaluating the Engineering team at Sauce Labs, all the typical signs of this inflection point were present. Maybe you've seen them in your own organization. For example, silos within the dev team, a solid wall between dev and ops, a lack of project focus, a lack project ownership, interminable projects as opposed to iterative development, an unhealthy tension between dev and product, a lack of trust between eng and management - there was no question about it, now is the time for Sauce Labs to evolve from Engineering to DevOps.
What’s in a name? “Engineering” calls to mind a very particular way of doing things: someone comes up with a problem, and the Engineering team solves it. They then hand their solution, in the form of code, to some other group, probably called “Operations,” which takes on the responsibility of deploying and maintaining the solution. Once the code is handed off, the responsibility of the Engineering team ends, and they go to work on some other problem that has been set for them. “Engineering” implies that there are silos of both process and responsibility in the development cycle, and it may take months after Engineering has delivered its solution before it becomes available to customers. “DevOps” implies a much different approach, in which teams are smaller and more focused, and processes are more tightly integrated and often automated, to break silos and achieve rapid iteration and deployment.
Over the course of the next year, we are going to evolve from Engineering to DevOps at Sauce Labs. I will chronicle that journey here on the Sauce blog. I know it’s worth going through both the victories and hard moments, because I've done this before and I've seen how rapid iteration and delivery increases the value we deliver to customers. It is also my hope that by being transparent about our own journey that we can help others on the same journey to becoming lean, mean, continuous operations machines.
Joe Alfaro is VP of Engineering at Sauce Labs. This is the first post in a series dedicated to chronicling our journey to transform Sauce Labs from Engineering to DevOps. Read the next installment here.