Oh yes. I've seen that in my day job where a current project is a custom ASIC with a luxurious 1 megabyte of RAM. At the beginning of the project we were all optimistic, and people spent RAM with wanton abandon. But kilobyte by kilobyte, allocation by allocation, function by function, we started running into those limits for both code and data.
When you're in a custom ASIC though, there is no "just plug more RAM in", so I've had to jump through hoops to eliminate excessive allocations and push to other parts of the system the computations that require significant scratch space. But it all takes time and effort. The last two major refactors that restored our buffer took 6 months to complete. They did nothing to improve system functionality, they just bought us the space to implement new features.
That's a lot of developer time to burn for something that will help in the future, but isn't delivering value now.
And that's undoubtedly why we're always in a RAM crunch. We value tools for the speed in development and flexibility, but do not care about how much storage or power they waste. Otherwise JavaScript wouldn't be running the web.