DevOps: Ingredients For The Best Recipe - InformationWeek
Software // Enterprise Applications
03:00 PM
Connect Directly

DevOps: Ingredients For The Best Recipe

Here's what one company learned by using the DevOps methodology to create a sense of shared responsibility across teams.

DevOps is a term that's generated loads of interest over the last year, yet many people don't fully understand what it actually means. One thing is clear -- as cool as it sounds, DevOps is not some sort of top secret developer militia group. But it is a terrific ideology that can unite a tech team and take your company to new heights.

From the start at 2U, we knew we were going to need to build a scalable, vertical SaaS model to provide a top-notch educational tech platform. We knew our close-knit team would be relying on great communication, third-party tools, and our ability to build on an enhanced infrastructure using reliable automated processes and feedback.

[Read DevOps Is A Culture Shift, Not A Technology]

In short, we knew we'd be adopting a DevOps culture. We recognized that as our different departments grew, communication was key for us to avoid the unproductive siloing the DevOps movement was confronting. So we embraced DevOps principles from the start -- before we'd even heard the term -- to get everyone on the same page and create a sense of shared responsibility. That was our recipe for success.

The ingredients
Your DevOps success recipe should be made up of several key ingredients. These are three that should be included as the basis of any DevOps plan:

Rule of 3s: If you're doing something more than twice, you should think about converting it into an automated task. Automation ensures your process is repeatable and reliable, because it standardizes the execution of the task to the best way, the same way every time, without any risk of deviations from peer-reviewed code to improve the process for the whole team.

Automation gives a sense of empowerment, allowing your employees to feel like they own the product, because they can go from end-to-end and see the fruits of their labor without delay. A classic example of a process that needs automation is the deployment of source code to production applications. You could get on each server in your architecture and download the code to it by hand, or even operate all the servers at once using common techniques. But both still put you at risk of fat-fingering a vital command and neither give you a log of changes for your team to review.

Better to put the ingredients of a successful build into repeatable deployment scripts run from a continuous integration server, where everyone can see the results of their work going out to your end-users.

Transparency: In most software companies, the operations teams and development teams are siloed. There isn't enough communication between the two groups because they're only worried about doing their own jobs. Transparency gets employees from these groups to take an intimate look into what the others are doing, improving communications and business processes for all, not just for those in your department.

A common example is the use of a source code management (SCM) tool. When someone runs source-code deployment automation from an SCM, everyone gets a look into what is actually happening and what errors might occur. If something breaks, you have information from a variety of sources, making it easier to fix, while saving a history to see where and why it broke for future review.

Talent: You can't breed a successful DevOps culture without the right type of talent working for you. You want employees who put business needs, efficiencies, and automation before their historical knowledge of how hardware works, and don't draw a line in the sand between IT and developers.

Before digging in to solve a problem, they talk to co-workers elsewhere who may have solved the problem in the past. Above all, they are working with the goal of the entire company in mind, not just the tasks at hand.

Creating your own DevOps culture
A DevOps culture doesn't have to start at the inception of the company. You can instill the mindset of "not just writing code for yourself" into your employees at any time. Identify the needs of others around you, including those with other skillsets and responsibilities. Seek out those who would value the tools you are building, and ask them what they need the tool to do. Always factor in the needs of the business.

Your developers need to be empowered to make broad changes in their environments, and encouraged to automate the processes used to make those changes, test them, and verify their positive business impact before getting those changes out to customers.

The team that trains together stays together -- your teams should constantly cross-train across various departments. Your developers should know how QA departments work, and your IT operations group should be aware of the needs of the developers. Employees in general must be aware of everyone else's needs so they can work in silos but still have the transparency and communication necessary to be productive.

Every chef tinkers with ingredients to taste, but like any recipe, if you stick to the basics you'll be on your way to DevOps success.

Can the trendy tech strategy of DevOps really bring peace between developers and IT operations -- and deliver faster, more reliable app creation and delivery? Also in the DevOps Challenge issue of InformationWeek: Execs charting digital business strategies can't afford to take Internet connectivity for granted.

James Kenigsberg is the Chief Technology Officer and a founding member of 2U Inc.He leads an experienced team at 2U that has built an online education platform for students around the globe. View Full Bio

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
User Rank: Apprentice
8/1/2017 | 10:15:27 AM
DevOps challenges
If you are going to customize your client software then you have a checklist for customization and coder should know how to code. Before deployment the software first you do QA process then you know the status of your work.
User Rank: Apprentice
3/15/2017 | 10:24:45 AM
Re: DevOps challenges
The process of customized software development is an important process requiring concentration and creativity from a coder. You can make it much easier with ultra-featured AppyResto app builder.
User Rank: Apprentice
10/7/2014 | 8:09:54 AM
Re: DevOps challenges
DevOps as a methodology is a really new culture step.

Usually at Ainstainer we are using Scrum, but for 2 new projects we are using DevOps for nearly 3 months and i can tell that we have some new challenges in team communications (most os these are due to new responsibilities) but in general it's much better.

I think the point is in the specifics of the project and it can really help you the right methodology.
Charlie Babcock
Charlie Babcock,
User Rank: Author
4/24/2014 | 1:07:01 PM
Silos: It's not unusal
It's the rule, not the exception, that barriers will arise between development and operations, unless the importance of rapid software update and deployment becomes paramount. Even then, it's difficult. The more developes want to push the speed of updates, the more hazard operations feels is implicit in the software changes. 
User Rank: Apprentice
4/24/2014 | 11:16:18 AM
Devops and APM
If Devops do not work and your application and database are too slow to work and you are wodering how to remediate the performance problems and want to analyze root cause and performance bottlenecks. Some companies are helping people do their job smoothly by offering their products.
User Rank: Strategist
4/23/2014 | 6:48:18 AM
DevOps is a great step ahead in the managing the process of software development. But the main challenge is to organize the work of diferent IT departments. At our software development company we're still struggling to introduce DevOps as a main working method, though on some projects it works successfully.
Charlie Babcock
Charlie Babcock,
User Rank: Author
4/22/2014 | 4:42:40 PM
DevOps fits 2U; does it fit you too?
CTO James Kenigsberbg represents a young company establishing new SaaS systens. That's different from most enterprises, with a hodgepodge of new and legacy systems in various configuations. DevOps gets more difficult the more varied and complex the environment.
Register for InformationWeek Newsletters
White Papers
Current Issue
Cybersecurity Strategies for the Digital Era
At its core, digital business relies on strong security practices. In addition, leveraging security intelligence and integrating security with operations and developer teams can help organizations push the boundaries of innovation.
Twitter Feed
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.
Flash Poll