Never Skip a Leg Day in DevOps - Part 3
Getting in Shape for DevOps
September 02, 2016

Mark Heistek
Devopsense

Start with Never Skip a Leg Day in DevOps - Part 1

Start with Never Skip a Leg Day in DevOps - Part 2

The Muscle Groups of a DevOps Transition

When you start to work out in order to get your body and mind in shape, you need to know why you want to do it, how you want to do it and what you need to do. In my case it was:

WHY: Become the best goalkeeper in the competition in order to become champion with my squad.

HOW: Get to a certain level of physical strength and mental well being.

WHAT: Follow a balanced routine to train all muscle groups based on best practices and with help of professionals.

By answering the why, how, what questions I had a clear understanding of how to achieve my goals. The injuries were caused by an incomplete view of what to do to reach my goals. I was optimizing the upper body and neglected my legs. I did not reach out to good trainers to help me to understand my "why" translating this to my "how" and "what".

The neglection of "legs" or "skipping the leg day" happens a lot in companies where they transform towards a DevOps organization. I am going to explain this based on the pillars or "muscles groups" of a DevOps transition.

To transform towards a DevOps organization you need to cover all DevOps "muscle groups". Let's dive into these groups.

Company Organization
Profit driven towards Culture-Purpose driven

Purpose driven companies gives them the ability to measure customer satisfaction. Well defined measures give manageability and therefore a feedback loop to learn and improve your product or product delivery. If you are not purpose driven you can cannot measure progress of your product.

For more insights I'd like to refer to this Financial Times' article of Simon Caulkin.

Work Methodology
Waterfall structure towards Agile/Scrum

The waterfall methodology of building software products can be compared by constructing buildings.

■ You analyse what to do and arrange budget for developing the building

■ You hire a few architects to design the whole building

■ You hire a construction company to build the building based on the design and specifications

■ Finally you open the doors and hand over the keys to the new residents

This process can take months or years.

Since software products need to change rapidly to meet customer needs and external circumstances, the waterfall methodology takes too much time.

You need to move away from creating big blocks of software and start to deliver small products which can be improved based on customer feedback. An Scrum framework can be used to achieve this. Working is short periods to shorten the feedback loop.

Implementation of the Product
Manual delivery towards Continuous Delivery

Delivering increments to add value to your product means doing the same process over and over again. This can result in dull and repetitive manual work. There is also a huge possibility of making mistakes.

Tools to build, test and deploy your software can do the dull and repetitive work for you. They'll do it faster, make no mistakes and therefore a higher quality.

By automating the delivery process you can reuse the process as much as you like and get instant feedback, so you can immediately respond to improve the product.

Architecture
Monolith towards Micro Services

Creating changes to a monolith application can have a huge negative impact to your product. A monolith application is build with many dependencies, so it is hard to change just a small part without taking into account the effect on other parts in the application. It can break quickly.

Breaking down your application towards micro services makes it much easier to make small changes. When it breaks it will not affect other micro services, so your application will just not work in a small part. Benefit of this you can do changed independently and when it breaks, you can fix it quickly.

Environment
Autocratic towards Autonomy

Delegate to the team. Do not tell how to do stuff, but coach them to improve themselves, so they can improve the product. Let the team decide how to change the product. Give trust to the team and give them time to proof this trust.

If you want to get better in doing things better, you need to fail and learn. Failing is not an option, it is a must.

You Can't Change Overnight - It Takes Time and It Will Hurt

The change towards an Agile organization with a DevOps mindset is a natural one. It can not be captured in processes and procedures.

DevOps is more than just a way to build better and faster software/products. It's more than just a cultural shift in the way we work. DevOps is a self-organizing force that becomes part of your company DNA, driving complete organizational change. Therefore you can never skip a leg day in DevOps. All muscle groups matter and it will make your company a better athlete, increase its range of motion, reduce its risk of injury, improve its balance and it will run faster and longer.

Practice every day. Take small steps. Fall, get up, learn and get better.

Mark Heistek is Head of Delivery and Founder of Devopsense.

The Latest

June 23, 2017

Why Agile? DEVOPSdigest asked the experts for their opinions on what are the most important advantages of being Agile. Part 3 covers how Agile enables you to grow and adapt to change ...

June 21, 2017

Why Agile? DEVOPSdigest asked the experts for their opinions on what are the most important advantages of being Agile. Part 2 is all about speed ...

June 19, 2017

Earlier this year, DEVOPSdigest featured a list of expert opinions on the essential steps to become agile. Now that we have an idea on how to achieve agility, however, we have to consider why. What's the payoff? With this question in mind, DEVOPSdigest asked the experts — including analysts, consultants and vendors — for their opinions on what are the most important advantages of being Agile ...

June 15, 2017

In the development community, creating additional efficiency through improved collaboration has been prevalent for some time. But despite the head start on the rest of the corporate world when it comes to collaboration, many organizations function today as they did 15-20 years ago. Since time is money in the tech world, outdated collaboration is a huge missed opportunity ...

June 14, 2017

Given the efforts we put in these days to deconstructing monolithic applications, and using distributed microservices to make us more agile, the potential for app performance to take a nosedive because of unseen (and unanticipated) network congestion and outages is only getting greater. There is help at hand, though, in the form of new ways to program network awareness directly into your code ...

June 12, 2017

What if you discover a fatal error or an exploit in your app? What if your app is down during a crucial time? As a developer, how you react to a crisis can mean the difference between minor blip and an embarrassing or costly company blunder. Here's a crisis management plan to get things right when they go wrong ...

June 08, 2017

Recently, the results from SmartBear Software's annual survey, the State of Code Review 2017: Trends & Insights into Dev Collaboration were released. One point I found interesting is that it suggests only 66 percent of organizations can get releases out on time. Why are the other 34 percent struggling to get releases out the door? ...

June 06, 2017

Today's app development landscape is competitive and expensive. Thousands of apps are released each month, and user acquisition and retention are costing app developers millions. User abandonment is one of the main battles of every app developer — as every lost user means another wasted investment ...

June 05, 2017

Developers love using containers to build, run and ship applications in a flexible and simple way. However, the technology has received backlash for not being as secure as other (traditional) methods, such as Virtual Machines (VMs). Securing containers and securing VMs requires a completely different process. Below are four key differences between securing containers versus securing VMs ...

May 31, 2017

DevOps results in improvements in software delivery performance, according to a new first-of-its-kind study by CA Technologies to quantify the benefits for companies that combine DevOps methodologies with Cloud-based tools and delivery mechanisms ...

Share this