I love going to SQLSaturday events because I’m always asked questions that make me think. I was just at SQLSaturday Indianapolis (a great event, if you weren’t there, you missed out). I was giving a session called “Extending DevOps to SQL Server” (which I’m giving this Saturday at SQLSaturday Providence). I was talking about the fact that I’ve been involved in successful DevOps implementations and I’ve been involved in failed DevOps implementations. The question that came up was, “What were the key differences between the failed and successful organizations?”
I’ve seen attempts to implement DevOps strictly from the IT side of things. A relatively high functioning team recognizes the benefits an agile approach that’s oriented towards improved collaboration between people that uses automation in support of process is, for want of a better phrase, a good thing.
They begin the process of implementation of DevOps.
They also slow down some in what they deliver. This is not because a DevOps approach is slow. It’s because there is a learning curve and a ramp-up period where you’re figuring everything out, adjusting your processes, working on the automation, and, most importantly, getting your teams to communicate better.
The project managers and others flip. Delivery is slipping. The amount of code being written has changed. Stuff is happening that wasn’t on the schedule. The implementation of DevOps is shut down quickly.
You have to get buy-in from management before you attempt to implement DevOps or it will fail. They have to understand what you’re doing, why you’re doing it, and the measurable benefits it will bring.
The successful implementations of DevOps that I’ve seen always had a champion. It was an single individual, or a single team in the organization, that had really drank the koolaid. They were all the way in on DevOps.
Having that champion ensured that during the initial phase when establishing the discipline necessary to do DevOps, the frustrations experienced were met with calm understanding, a willingness to explain again how things will work, and a passion to see it through.
I’ve seen organizations where they knew that they should do something to eliminate the pain they were experiencing through development and deployment and they recognized that DevOps was that something. However, no one in the organization really believed that DevOps was worth doing. They were people who think it’s more of a buzz word than a really worthy process. So, as things get hard, they just give up because there’s no one there to champion the process.
You need to be, build, or find, a champion within the organization who can help shepherd the whole DevOps process into being.
All Way Training
I’ve seen attempts at implementing DevOps where management gets some training in it and tries to then force it down to the indvidual, or, where the individuals get training, but have to try to force it up to the management who still don’t really know what’s going.
To say the least, these attempts fail. Everyone needs to know what’s expected of them, how the process is going to work, and what exactly will get delivered when. Heck, this is fundamental to getting DevOps going anyway. Yet, organizations will fail to ensure that they’re getting everyone the knowledge they need to deliver.
You must train everyone involved in DevOps. No, this doesn’t mean sending them all out to a class. It does mean holding classes within your organization. Do a whole bunch of lunch & learns for everyone involved. Have the development team teach what they do. The DBAs teach what they do. The business & management teaches what it does. Everyone should have some understanding of the larger picture and how they fit into it.
You Can Succeed In DevOps
High functioning teams and mature organizations are implementing DevOps like mad. They are succeeding at it. They’re doing it by ensuring that management is on board, there is a champion for DevOps in the organization, and they’re ensuring that everyone learns the process.
There’s a lot of work involved in making DevOps work in the organization. Probably the single biggest hurdle is for the organization to have a willingness to change. However, once that occurs, you need the three things I’ve listed here to make that change as successful as possible.
Want to learn a whole bunch more about why, and how, to get your databases into a DevOps framework? I’ve got an opportunity for you.
SQLSaturday Oslo Precon, Friday August 30th, 2019. Click here to register.