In a recent episode of the Art of Modern Ops, Cornelia Davis (@cdavisacf) in conversation with Steve Wade (@swade1987) takes a look at GitOps, DevOp and the metrics used to measure your progress as a newly formed DevOps team.
Steve Wade is the platform lead at Mettle, a fintech company in the UK that provides free digital business accounts that can help small businesses and the self-employed start, run and grow their business.
Steve thinks about DevOps in terms of a process rather than a technology. DevOps to him is using automation to eliminate waste from development and platform management cycles. In addition to this it can be thought of as a type of systems engineering that when done effectively, enables information sharing across all business units. But to close those information gaps across an entire company, you need to make iterative improvements that can be easily measured and improved upon. Once you’ve identified those improvement areas the entire organization is propelled towards a much higher velocity.
What is value stream mapping?
The Mettle team exercises value stream mapping in order to identify waste, reduce process cycle times and implement process improvement. The idea behind value mapping is if you can eliminate the waste, you can move much faster. As an example to identify and reduce waste, the team measures how long it takes from committing a code change via PR to production. In practice that means you look at a single commit and then track it back to a branch or back to the main in your repo for one of your microservices and then plot that one code change and measure how long that one change took to get from the repo all the way into production. You do this across a number of repositories and then you essentially lay these charts on top of each other. After having done this exercise for a number of weeks, you can easily identify waste areas.
And while waste in software development is an important concept, stability and reliability is really the number one concern for everyone, says Steve. You need both stability and reliability so that you have not only the ability but the confidence to make changes requested from your customers. You need to be able to make those changes today and not wait for next month or the next three months.
Metrics for all engineers
At Mettle, everyone is an engineer and generally the team doesn’t make the distinction between developers and operators. The platform team has platform metrics that they need to track against and the application engineers are focused on specific application metrics. The entire team thinks more in terms of what impact a particular change has on both the platform and the application.
The Mettle team thinks about metrics in terms of principles. For example the platform team uses a set of principles for any changes that get made to the platform; things like: the ability to self-heal, always making sure that they take regular backups and that they practice good restore procedures. And for everybody on the team there is an overarching principle of the need to document everything; for that they use wikis and they also keep extensive runbooks for when things fail so they can get back to running everything smoothly should something fail.
“We all succeed together and we all fail together, we’re all just working on different components of the machine,” -- Steve Wade, Platform Lead, Mettle
About Steve Wade
Steve Wade currently leads the Platform Team at Mettle in London. Prior to his current role, Steve was Principal Kubernetes Consultant at Apprenda providing Kubernetes training and implementation services. Steve has served in technology leadership roles across multiple verticals including real estate, gaming, and the UK parliament. Steve has a BSc in Computer Science and is passionate about cloud-native software development and distributed computing.
To be notified of future episodes:
Listen to the entire episode on your favourite platform listed below: