256 is plenty, I only had 256GB on my last work machine and was able to maintain 4 different checkouts of our entire (large) codebase and still tons of space for caches.
I can live off 256GB on a notebook (I run Linux), but 4GB of RAM would be ridiculous and I still see notebooks from various makers being offered with 4GB.
> We left product development teams without anyone focused on production. We undid everything that made DevOps work in the first place.
Very good point, that's the same I have observed for the past couple of years when working on a devops team. Product team engineers nowadays feels like spoiled kids, they had no current how server runs, and asked for things unreasonable. I still remembered someone came to my desk and asked for me to increase the mem request to 10s of GB, he claimed that's the best solution he could think of is to load everything in mem.. and very often people don't even know what status code means 500, 502, 503, 504...
An interface with many methods is already a bad design. limiting it to a handful methods is way easier to maintain. it's fine to return an object has implement many interfaces, but you really don't need to use them all on the input side.
Oh, this brought back a lot of good memory in Yahoo. This thing was originally called YTS, it has a very flexible plugin system, the caching functionality was pretty good and easy to use at the time.