I've joined a company and discovered that the "platform" I would be working on is actually 3-4 different platforms with the same purpose (provide a sort of PaaS environment to developers).
Each of these platforms is highly coupled with the other and there is a lot of gotchas everywhere. I'm coming to the conclusion that various managers were incapable of saying "no" every time a developer decided to use the latest trendy toy. They move on and all of that is here today, for me and my team to support. I don't have management responsibilities though.
I'm starting to resent management. Not because of their past mistakes but because that continues happening today. Not a few weeks ago someone was proposing something new and management was all onboard again with the idea of a new development without a plan for all the legacy. It seems they hope everything will be migrated to the newest platform by a miracle.
Anyway, I prefer to focus on the technical side of things only but this situation is preventing that. The lack of consistency in developing this platform means I waste my days lost learning about a new gotcha in the infrastructure (followed by a long story about "this is that way because...") and forgetting it a few days later. Only to be bit again soon enough.
I have rapport with management but this looks like a very long game. Any technical solutions I should use? Better documentation? Just saying things will take much longer because, well, everything is a mess?
Have you been in the same situation? Did you get out? How?
The solution follows from the first sentence above. You need their priorities to match yours. Now, it's possible this may happen by accident but that's not particularly reliable. By far the best way is to actively help them come to the Promised Land.
So, how do you do that? You put together a proposal that solves your problems and you demonstrate that it solves theirs. Whatever they may be: cost, time to market, uptime etc. And then you sell it to them.
If you don't know what floats their boat, find out. If you don't know why solving your problems benefits them then why would you expect them to? And you need a proposal that's actually achievable.
Do that and you stand a reasonable chance of making progress. Or at least you'll be clear about why you won't.
At this point, most technical folk decide that it's too much like hard work and don't bother. After all, complaining about stuff can be quite cathartic. But if you genuinely want it fixed then taking responsibility is a good start.