The greatest difficulty I find programming today is hard dependency on cloud services without an adequate simulation of those services locally. I strongly believe that you need to be able to run your code, and many teams just can’t without sprawling (expensive) test environments. If you can’t run things on your machine, you sacrifice the ability to experiment without spending time deploying, checking with colleagues about shared test infrastructure, burning cash to run dev clusters, etc., etc. It just slows down the feedback loop.