At my previous job, we had a “Devops” team. We even outsourced some ops to a third party in the worst possible way (I’m talking “oh you want to set up an alert for something related to your service? Send us an email and we’ll look into it” and so on). All the pre-devops pain magnified by an order of magnitude. Sometimes devs would do their own ops (I know, big shock!), and they would call it “shadow devops”. Nearly fell off my chair when I first heard it. Kinda glad I’m not with them anymore.
Unit tests? No matter where you run them, and normally this is done by CI in a prebuilt container image, so you don’t have to wait for “docker building”. Acceptance tests must be run in an environment as close to production as possible, but that’s definitely not a programmer’s job.
Yeah, and it’s useful to just check everything so you don’t forget to add some essential system package for e.g. SSL, especially when working with Alpine.
DevOps, not programmer.
I wonder what the dev part of devops means.
Devil 👿
Short for devine
At my previous job, we had a “Devops” team. We even outsourced some ops to a third party in the worst possible way (I’m talking “oh you want to set up an alert for something related to your service? Send us an email and we’ll look into it” and so on). All the pre-devops pain magnified by an order of magnitude. Sometimes devs would do their own ops (I know, big shock!), and they would call it “shadow devops”. Nearly fell off my chair when I first heard it. Kinda glad I’m not with them anymore.
Why not? Why doesn’t the programmer want to test a container?
True. Nothing beats running your unit tests in the actual container image that will be run in production.
Unit tests? No matter where you run them, and normally this is done by CI in a prebuilt container image, so you don’t have to wait for “docker building”. Acceptance tests must be run in an environment as close to production as possible, but that’s definitely not a programmer’s job.
Race condition that only happens on the much faster production hardware: Allow me to introduce myself
Or an issue that only appears when using ARM and not on my AMD64 dev machine
Unit tests can’t win ’em all. That’s where things like integration tests, staging environments, and load testing come in.
The final layer of protection is the deployment strategy, be it rolling, canary, or blue-geen.
I mean, isn’t that kind of the point of containers? To basically have the same environment everywhere.
Yeah, and it’s useful to just check everything so you don’t forget to add some essential system package for e.g. SSL, especially when working with Alpine.
Most programmers are interacting with containers these days.
The real question is why their build is taking so long.
Because of a few strategically placed wait commands.
Guess I must turn in my programmer-badge.
Apparently doing more than one thing makes you not a programmer 😔
what if I’m doing my programming inside a devcontainer?
How often do you rebuild the image?
Devops isn’t a role.
Platform Engineer maybe, but even then I’d say they were “developing” the platform.
Devops engineer is a role.