As per the title, what does the term ‘devops’ mean to you? What problems did/do you face? What approaches do you take to solving those problems? What is your mindset around approaching problems, and what premise or ideologies do you follow when designing a solution?

Lots of people start out in devops and say, “I have no idea what to do”. Hopefully, after this post and some discussion, perhaps a framework or at least some ideas have been generated that can answer that statement.

Let’s not discuss specific vendors and their technologies for a second (even open-source) - because that only helps some of the crowd.

For e.g. I’m a Microsoft devops guy. I specifically work with Microsoft, and related technologies. Saying, “devops is all about using jenkins” - well, that doesn’t help. Likewise, me saying, “devops is all about using octopus deploy to deploy into Azure” doesn’t help anyone in devops who don’t use those technologies.

What are problems that ‘devops’ solve?

  • Manual process

  • Manual steps

  • Manual clicking

  • Manual coding (?)

  • Manual building

  • Micro-service configuration

That’s very “dev”y, what are some “ops” things that devops solves?

  • Management of external resources - e.g. if you reverse-proxy through a CDN? What devops approach do you take for that?

  • Management of internal resources - isn’t this your infrastructure team?

  • Manual administration (infrastructure-as-code?)

  • Configuration sprawl of services

  • Migration? For e.g. from monolithic, complex services to micro-service architecture?

  • Monitoring? How/why/what’s the difference from your helpdesk or infrastructure team?

I need to have more of a think, but I’m sure this topic has been covered millions of times on the blogosphere, so I’ll do some reading and post an update about my interpretation.