Earlier quoted context omitted.
It is practical, a lot of us do it. Besides, the amount of bullshit it takes to make the spaghetti stick to the wall is dictated by how it was made. Make nice spaghetti and it sticks to the wall effortlessly. Make bad spaghetti and it takes 4 people and a dozen rolls of duct tape to get it up there.
> the amount of bullshit it takes to make the spaghetti stick to the wall is dictated by how it was made I really don't know where the bullshit coming from. Often it looks like every single person is fighting for their lives against it, and yet it keeps growing. But it's mostly dictated by overarching decisions that constrain both how it runs and how it's made (AKA, outside somewhere). Of course, there exist people o…
While annoying, there's often a good reason behind those if you can drill down to the engineers that asked for that rule.
Just as an example, it's easy to provide a single HA solution at the infrastructure tier... provided the infra people can make a few assumptions about your app (stateless, can handle multiple copies running at once, etc). It's virtually impossible to build HA that makes no assumptions, and it's incredibly burdensome to support 85 different HA implementations with varying sets of assumptions.
It makes business sense to have infra do the HA instead of each developer team, and that means restrictions on how apps are built and run.
What you're experiencing is the platform-ization of a bunch of aspects of the app.
Making nice spaghetti usually consists of finding the rules, finding the people who made them, and then grabbing them and asking "what does it take for this app to be in prod 15 minutes after we push the last commit?". It sounds like it will be a lot of people because there's a lot of rules, but there's usually like a half-dozen teams that make all the rules.
It will likely force you to build differently than you would have, but it will also mean that you're more likely to have 0 friction and you're more likely to get help with the friction you do encounter.