I hear this a lot from a lot of my coworkers who like Java Spring - they trust Spring to do things right, more than themselves.
On the other hand, I hate Java Spring because I feel like I don't trust it - it doesn't let me look into and understand the internals easily, making me feel like I'm afloat on a pile of abstracts I'm not allowed to look down into.
Looking at some other projects enterprise js/ts codebases though, I see a lot of "I don't understand how this works so I'll try random things until it works". In that kind of environment, I can understand the attraction of Spring - it's not great, but it also won't be a flaming pile of unbaked abstractions.
Spring framework may look complicated only at start, until you get it, but then it becomes quite easy to reason about.
OTOH, Spring Boot is a huge pile of various loosely coupled framework connectors, web, queues, security, databases etc. Some of them are of good quality, some are not so good. It is that uneven mix giving the perception that Spring is a mess.
> it doesn't let me look into and understand the internals easily
what does this mean? you can single step into framework code
Mostly just boils down to a Chain-of-Responsibility pattern which is incredibly easy to reason about. Just a way to compose functions.
As far as digging into internal, how often do you look into Express or Rails internals or any other? For me it’s a rare day to need to do so.
Only time I recall having to read Spring source code was when I used their Social Media Auth library sometime in the early 2010s when it was quite a primitive experience.