When I do DevOps, my ideal day is sitting with my feet up in the sunshine, doing very little active work. The monitoring alarms aren’t going off; the server alarms are quiet. The developers are happy; the managers are smiling.
That’s the purpose of DevOps. To put in place the system that means the workflow between customer – manager – engineer happens without your active input. Because the team has spent time building a devops system that means everyone can just keep working without having to stop and wait for someone else to say “OK, start again”.
The code passes the tests, so we can deploy it to staging; it passes on staging, so we can deploy it live.
If someone commits a code change that breaks, they know about it immediately; but it doesn’t break the code in production.
But when I’m sitting in the sunshine with my eyes closed, this DevOps person is thinking “how can we automate <that bit>? how do we make <this> more resilient?” So I’m not idle, just working on the next stage of scaling the project….
That’s what I think, anyway… What do you think?