Are development and operations a partnership in your organization?
I’m sitting at my gate at LAX waiting to board my flight to San Jose for the O’Reilly Velocity 2010 conference, the annual web performance conference. My employer, Shopzilla, Inc. is a sponsor of the event this year. While sitting here, I started thinking about the importance of development and operations and their collaboration.
I’m looking forward to great sessions on both web performance and some operations talks this year. As engineers, it’s important for us to understand both the code and the operational aspects of the designs we propose and implement. Without this basic knowledge, when outages occur (and they will!), you will be ill-prepared to assist your operations teams in recovering from the outage. You cannot adequate plan disaster recovery, nor can you plan for scalability without basic operational knowledge of the systems you rely on.
Basically, walk a mile in your operations teams shoes, see how they fit, and see what sort of systems you’re building that they have to help support and deploy. This will change your perspective on design greatly, it will make you a better engineer, and it will benefit your organization.
At Shopzilla, engineers such as myself regularly work directly with our configuration management, network operations and systems operations teams. Without this direct engagement and collaboration, software releases, outages, and our general software development lifecycle would be quite costly.
One line of the Agile Manifesto really encompasses this idea for me:
[we have come to value] Individuals and interactions over processes and tools
See you at Velocity!