I hear these two things about Facebook: They’re a tier-0 engineering org with only Google as their peers, and they have the worst code quality of any major tech company and it’s mostly PHP and is so bad it will make your eyes bleed. Is the bad code just all legacy stuff? Are they using more general programming languages now? Or is it taking top engineering talent to push the limits of poor early technology choices? It seems like both of these things can’t be true at the same time.
Lol they definitely don't have the worst code quality imo, and there is alot of non php. Imo their testing simply isn't robust enough, causing wack shit to go into prod
You ever see academic or govt code?
Don't raise the bar too high there, James Cameron
No but I’ve had to use their applications lol. I definitely agree they’re worse. I’m mostly interested in the comparison between all the FAANG/GAFA/Unicorns/Legacies/etc that make up most of the demographic here.
Who says fb had worse code quality? Can't be worse than Amazon's
🤔 Don't know their code quality but AWS runs smooth af
Fb code is much worse then amzn. Amzn actually has very good code quality on average.
Why are they regarded as top tier: because the metrics people care about trend highly positive! $$$
Where did you hear that? Blind?
Mostly from current Facebook employees
Sdes can have very strong opinion on “code quality”. Just ask any random sde and see what they say about peers’ code.
1 check out some C++ code for quality 2 PHP is no more - Hack is a completely different language 3 code quality is not that high in product teams but do check out some infra teams and then make your decision
As you rightly pointed out, these two things can’t be true at the same time. Which one of them is less likely to be true? What do you think? Each company has pockets of good and bad code. Facebookers shitting on our code are probably from the latter teams. My team’s codebase is squeaky clean and we have good practices in place.
By our do you mean fb as a whole or your team? And which team?
We use python and C++ very extensively in our codebase as well as other languages to a lower degree. And we don’t use PHP, we use Hack which is a strongly typed version of PHP developed by FB. Code base is a mess true but you kinda get used to it unfortunately and it’s mostly dependent on teams.
Won't you get pipped for bad engineering excellence for writing hacky code?
lol no. If anything people write shitty code and fix towards the ending of the half after harnessing the impact. So you get impact and better engineering at the same time, win win.
1. Strongish DevOps that lets them deal with it 2. Research divisions with good marketing and famous hires 3. Popular consumer product 4. They're leetcoders and get paid the most for it 5. It's a Wall St thing, not an engineering thing FB doesn't actually have the best engineers.
Oracle does.