DevOps is more than DEV + OPS

Posted by

Initially, when I heard about DevOps around 5 years back, I understood that we were trying to remove barriers between teams, which were created based on phases in traditional development life cycles. It started with Agile, which put the Dev and QA teams together, and now by implementing DevOps, we are merging the Operations team too in order to avoid any communication gaps, and achieve smoother and quicker delivery.

When I studied some more on this topic, I got to know, that there are tools like Hudson, Jenkins, Chef, Selenium, and many others, which help teams to work smartly, manage environments and deliver faster. Later, I realized that the ultimate target of DevOps is to deliver every change made to system.

I thought, it is quite impractical to push every code change to production, but soon when we started to implement this, I noticed that it was very much possible, by making everything Continuous and Automated. There could be some business/domain/legal concerns which may not allow pushing changes to market, but neither are these valid justifications nor do they stop the engineering team to be ready to move live. It is an all in all a business decision to stop /push any change in the system to market, and by providing this control of final deployment to system owners, we name it as Push-button deployment.

At one point, I thought, I know most of DevOps, and my DevOps team is mature enough, as the same team is not only taking care of every task till delivery, but also has the required level of automation in place, where every change is passing through a pipeline, being monitored on dashboard at each step, and eligible for production deployment.

Last year I attended one seminar on people skills and productivity, and learned about “I”, “T”, “M”, “Pi” and “E” shaped people. When I relooked at my team, most of team members were categorized as “I” shaped, means, team members were specialized in their area. Inside my team there were smaller groups, few people who were taking ownership to develop, and other 2 guys were ensuring testing and similarly for other phases of delivery. Also, within one of the development groups, we had UI person, one java professional, a middleware expert and another DB expert. That’s when we discussed and decided to improve on individual capabilities and getting people cross trained.

I am not saying that my current team structure was bad, but there was definitely scope of improvement. We reached one milestone by changing the structure of the team and then it was time to change the skillset of the team members as they needed to come out of the mindset “I have done my job now it is in other team member’s bucket”.  I think “Pi” shaped people (people with multiple specializations) is most suited for DevOps team, as it not only removes dependency but also promotes end to end ownership by individuals.

We also see the demand of full stack developers rising high in the market, which alarms each team member to not only focus on what he/she has been doing, but also know the other parts of system, how each component is getting integrated to form one system, and solving specific business problem for the end user.

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *