DevOps is all the rage in the trendiest IT circles. Many organizations are spinning up their own DevOps team, while others are building entirely new organizations around the idea. With the recent growth of ultra-scaling startups like Uber and AirBNB, DevOps is the next standard in how IT organizations produce great outcomes in a faster and easier way.
Why is DevOps hot right now? Traditionally, IT organizations have been run as independent silos, with specialists working within their departments and communicating when needed with other branches of the company. This has lead to a centralized IT department — with demand coming from a sprawling developer community within an organization. With today’s 24/7/365-Internet-facing projects and tight timelines, business leaders have realized that it’s a tedious and inefficient way to run IT — hence, the rise of DevOps.
What is it? DevOps, broadly stated, is a way for organizations to integrate their IT and developer environments into a continuous delivery system that allows faster, more agile outcomes from IT teams. By having everyone work together rather than in silos, and involving everyone in the process, problematic designs or challenges can be addressed earlier in the development lifecycle. In addition, by having everyone involved with at least a bird’s eye view of the project, all members have a better understanding of the challenges involved, reducing drama and accelerating deployments.
In this slideshow, Marty Puranik, Atlantic.Net, provides five tips for getting DevOps started in your organization.
Get Going with DevOps
Click through for five tips that can help your organization start its own DevOps project, as identified by Marty Puranik, Atlantic.Net.
State Your Intentions
Clearly state your intentions for moving towards a DevOps environment.
Gather all stakeholders and clearly state that your teams are moving toward a DevOps culture, and be sure to explain what that will mean and entail. Specifically, address the problem areas in your current deployment environment and what you are hoping to solve — faster development cycles, catching bugs sooner, faster repair of new bugs that are found, and better communication from the operations side with the development side. This allows the team to be aware of the changes that are coming, gather support, and provide measurable results.
Go in Stages
Deploy DevOps in stages.
Human nature and legacy systems can make changing how business is done more difficult. Therefore, it’s important to deploy in stages. With small wins along the way, it’ll become easier to get team buy-in and move on to the next phase. For example, you might begin by having operation and development teams meet to discuss and select the collaboration tools they want to use. You may also want to survey the group to evaluate how well they currently collaborate – say on a 10-point scale, and set a goal of improving it two points in eight weeks. The goal is to get everyone moving in the right direction, and setting checkpoints along the way gives everyone a measurable way to see progress, which helps keep motivation high.
Select DevOps Tools
Encourage your team to select its own DevOps tools.
Sure, there are hot chat apps like Slack, and project management tools like Atlassian’s Jira, but it’s best to let your team select their own tools. While the goal is not necessarily to get consensus, at least team members are selecting the tools that they are going to use to drive the integration and communication. Pushing tools that no one wants to use is a sure way to shoot the project in the foot.
Be sure to praise and congratulate successful progress through the stages.
At each stage, different team members will be needed to champion the process through that particular stage. Be sure to congratulate those that are ‘with the program,’ as once again the more buy-in you have the more successful you’ll be.
Foster the DevOps Culture
Keep on fostering the DevOps culture.
DevOps culture needs constant commitment by the stakeholders involved. While the tools your DevOps teams use might change, you’ll need the team to be committed to making the process continually better. What does that mean? It means that sometimes, you might plan for a certain outcome but it just doesn’t work out. It’s easy to give up, but a true DevOps team will look at why it failed (post mortem), how it can be avoided in the future/what did we learn, and how to move forward from this point. Successful DevOps teams aren’t a result, but a constant effort at improving the speed, accuracy and agility of the development environment.