Skip to content

Comment on Twitter engineer explains how it will break in the coming weeks

Comments

I was on the "Twitter will could be dead by the end of the weekend" train in the beginning, mostly because the popular narrative was that Twitter was poorly built, which is why they had 7000 developers. I've come around for a couple of reasons: Those devs seem to have overengineered a lot of stuff, and made it pretty robust, and elon still has at least 1000 people who either believe in his hype or couldn't leave because of their visa. That's plenty to keep some form of website with the twitter logo running at all times. 100 people is enough to keep some semblance of "a" twitter running, but more than several hundred means that twitter will have a web presence as long as elon is willing to burn cash, or forever if he finds some profitability.

I have several years experience now being the sole person on a mission critical portion of an international company that was still abandoned/ignored/whatever by management. All but 5% of the people I worked with have left, and there are entire portions of the code base that nobody left has ever touched or been involved with.

What happens is erosion. A manager will ask "Why is <thing> running poorly, or doing the wrong action" and you will only be able to say "I don't know". You then have to spend an hour tracking down the relevant code and teach yourself something that used to be the remit of a team of twelve and they could have answered/fixed this question in a minute. Now every ticket has to include a section about the required software archeology.

Things will keep running, but you can't really build on the previous code very well, because you have no clue how it was built or the sharp edges it works around. Even minor updates to the system means an entire sprint worth of research and a half solution that is less robust. Bugs on the tracker will never be looked at, and the backlog explodes with tickets that won't be touched before the heat death of the universe. It destroys morale, makes onboarding new devs difficult, kills any advantage a previously smart architecture brought you, makes you a pariah in the local employment environment, and reduces even your most senior devs to the output of a brand new junior dev. Your everyday task is "can I put out more fires than will start today".

This is all very much correct, especially about highly competent devs being turned into researchers that require learning the code base archeology for weeks before every sprint before even the slightest ode can be touched. But this isn’t limited to Twitter. This is like half of all the code based I’ve ever worked with

I hope for the good of humanity that a difference here is that Twitter has some utility, whereas the comparable code bases at large tech firms are mostly useless features/products (i.e. bullshit work).

While they've had some operational difficulties (like locked themselves out of some servers, or stopped services and then couldn't reboot them), just staying up is not that much of a problem.

The problem is making changes. The know-how on the system is 90% gone. So anything you touch risks falling down like a house of cards now.

And without drastic changes, Twitter can't be monetized. So things are pretty bad.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.