They've built themselves a special kind of hell. I
call this sort of thing Winchester Mystery House development. It's
amazing what you can get away with when you're sitting in a fire-hydrant
of money. Entropy, gradients, etc., like radiotrophic fungi in a cracked
reactor this codebase has burgeoned and now they have a tiger by the
tail, a mutant three-headed tiger with laser eyes.
Anyway...
Imagining myself coming in as CTO or whatever, with the mandate to "fix"
the situation (is Instagram in any sort of trouble? I don't follow such
things. The point is, maybe it isn't broken by the metrics that IG cares
about.) ...this is what I'd do.
Since I don't have a lot of data on the details of IG's code (and I can't
bring myself to reread that horror story this early in the morning) I can
only speak in generalities. The most important thing would be that
there's a real mandate to "get 'er done", with that hypothetical
postulated, I'd issue some top-level directives:
#1) Reduce LoC by 10% per month.
#2) 1/5 of all coders are on refactoring duty, not features.
#3) Start counting the beans. Track the cost of existing features to
be able to predict the cost of proposed features.
What would your replacement language of choice be? Personally I'd balk at forcing all my developers to learn the new, untested language. The grass always seems greener before jumping over the fence.
You don't necessarily need to replace the language. Python can be used for large projects with some discipline, I feel. But I might look into compiling with Cython or Nuitka (I have no idea why Nuitka isn't a bigger deal in the Python ecosystem!)