“Our setup is very mature”. I hear that all the time. Great! But what’s that supposed to mean?
Is a setup mature if it is cloud-native? If most of your developers are ok with updating the values-section in YAML scripts? If some of your colleagues are using IaaC?
I sometimes have the feeling that teams confuse complexity with maturity. You’re not mature if you’re complex. Not true for your personality, neither for your DevOps setup.
“We build things in a way developers cannot easily go off-path. Going off the path is dangerous.” That’s not me, that’s GitHub’s CTO, Jason Warner.
Elite teams have complex infrastructure but very, very simple DevOps setups! They limit the variability thus making it harder to get off-path. As a developer in those teams, you cannot
- Hard-code environment variables
- Hack a Helm chart the way you desire
- Just run commands against the infrastructure to change things bit by bit
The key, I know I’m repeating myself, are Internal Developer Platforms (IDP). All of those teams have them. In our upcoming webinar, I will personally explain what an IDP is, how you can build your own and when you should look at this. I’d love to see you there, even if you’re very mature. If you want to have a summary in an article, I’ve written this defining piece. I would love to hear your thoughts.
If you want to assess your team's DevOps maturity, we’ve set up this test for you. Looks simple but we now have data from over 500 teams (will share findings soon) and we can benchmark you. Pretty cool I think.
Two more webinars that are really worth it:
- Next week brilliant James Whinn is talking about challenges when building internal platform teams and how to navigate them.
- And Forto’s super impressive Masa is sharing some insights on how the #1 digital freight forwarder migrated from Heroku to Kubernetes.
We’ll be shipping amazing stuff soon, I cannot wait to tell you! For now, that’s it. Stay safe and sound (physically and psychologically),
Kaspar
PS: one fun story on how hard it is to go off-path if you have an Internal Developer Platform: my colleague Aziz is currently optimizing our debugging info for deployments. He really struggled to knock out a deployment to create an error-code. This means something. We do a 3-digit number of deployments/week.