My team ships with a multi-hour CI pipeline that works 50% of the time and effectively zero local development. It's awful in almost every way developer experience-wise, but rock bottom is deeper than you think!

Lol, that sums up the human experience. You should sell bumper stickers:

"Rock bottom is deeper than you think!"

I had local development in a previous job, but you had to start a whole Kubernetes cluster. No unit tests, but a whole suite of e2e tests. And forget about debuggers as it was all microservices.

When using Java or .NET, it is possible to plug debuggers into microservices, but that needs to be taken into account when designing their Dockerfiles.

Just as heads up for others.

They may not have existed back then, but between kind, and either Tilt or Skaffold, it's at least not as bad as it once was.

My team reimplemented a stripped down binary of what our primary service does just so we could run it on our local machines. Otherwise it would take up well over 100GB of RAM. Iteration was a lot more annoying before we did that :)

I remember being there and the large amount of work many people did to make things better. Dig in for a few years and you can too.