In my last article, I painted a pretty rosy picture of DevOps: increased automation and efficiency, improved business-IT alignment, more interesting work for IT. Of course, there's a little more to it than that.
Before we can welcome a new age of DevOps glory, we're going to have to figure out who'll actually be doing the work. People often cite technology and culture as potential pitfalls on the drive toward automation, but staffing will make or break DevOps.
A lot of IT people are great at solving tactical problems, but they don't think like programmers. Put them in a DevOps role and they'll struggle to make sense of it. Software engineers and architects might be a quirky lot, but they're used to organizing complicated ideas in their heads. They can understand the flow of logic through an entire app and sort through the relationships among all the moving parts to make it work. They're always looking for ways to make things more efficient, automated, and reproducible.
[How will you react to the next work crisis? Read IT Career Change & Crisis: Rapid Lessons.]
Of course, programmers can't just waltz in and work their magic on operations. They also need to understand the discipline IT has for availability, stability, and other nuts-and-bolts priorities. When the people in your organization can mind-meld on programming and operations, the culture part takes care of itself.
So how will we re-engineer IT around a programmer-like mindset? There are three basic options.
1. Retrain and retrench.
There's clearly a need to teach people throughout IT how to think like programmers. But how? What organizations have the programs or resources in place to retrain large chunks of their staff at the same time they are trying to keep up with day-to-day operations?
We don't need to teach system admins to write massive enterprise apps, but they do need to become proficient enough with scripting tools to be able to write meaningful code and work with APIs. To benefit from DevOps, organizations must figure out how best to teach people what they need to know, and then drive that training effort forward.
2. Bring up a new generation.
A lot of older systems programmers are retiring and taking their deep knowledge with them, including an understanding of the logic of programming. Who will take their places? These days, it's not hard to get a basic IT certification with minimal programming knowledge. That's fine for a help desk role, but it hardly fills your pipeline with potential DevOps talent. We need to bring in people who understand that programming skills will be essential for any kind of IT career.
Over the past couple of years there's been an upswing in efforts to get kids to learn how to program, from groups like Code.org to programmable robots on toy store shelves. Code for America seeks to channel youthful idealism into programming, and vice versa. Mobile appringing a new cool factor to the field. STEM (Science, Technology, Engineering and Math) programs are becoming familiar to schools and parents around the country. Developments like these will help over time, but for now, there are relatively few people in the US who want to go into software engineering.
On some fundamental level, most people just don't think of themselves as "computer people" -- as if there were only one way to be one. Does the average person on the street understand the difference between a help desk jockey and someone who writes kernels?
We've got to break open that black box and show people that there's more to technology than flashing lights and beeps. As a way of thinking, programming isn't all that different from literature or philosophy or psychology or many other fields. It's about logic, relationships, and insight, and the deeper you get into it, the more fascinating it can become.
There's one group in particular that we need to get this message out to, one that's been absent and overlooked by IT for far too long. Which leads to the third option.
3. Get more women into technology.
We should all ask ourselves what more we can do to make programming a more attractive and inviting field for women. Women are particularly underrepresented in technology. Much of this has to do with the traditional image of the computer lab nerd or the IT guy, but those stereotypes are increasingly outdated, if they were ever really accurate in the first place.
Women need to understand the intrinsic appeal of programming -- in an ideal world, we could clone Ellen Ullman and have her address high schools and Girl Scout troops around the country -- but they also need to know that IT can be a place for them. That's a cultural shift we all need to focus on, because it will affect everything from the way we recruit to the faces that appear on tech industry panels.
I'll talk more about bringing women in to technology in a future article. After all, we can't make DevOps work -- or our industry as a whole -- if we're only drawing from half of the talent pool.
Don't miss Humans Aren't Computers: Effective Management Strategies for IT Leaders at Interop Las Vegas. Participants will learn assertive communication and conflict resolution strategies to encourage organizational change. Register now for Interop Las Vegas. Use the code SMBLOG to get $200 off the current price of Total Access and Conference Passes.