What Tech Company Has the Best Code Quality?
Code quality is a funny thing. In my opinion, it’s situational.
What company has the best code quality between Google, Apple, Microsoft and Amazon? originally appeared on Quora, the place to gain and share knowledge, empowering people to learn from others and better understand the world. You can follow Quora on Twitter, Facebook, and Google Plus.
I have worked at Google, Microsoft, Amazon, and Oracle (among others).
Code quality is a funny thing. In my opinion, it’s situational.
For example, writing production-quality code for a research project would be a HUGE waste of time. Too much focus on resilience, maintainability, extensibility. You pay for those features. For one project I worked on: research quality prototype: 2 person-months. Production-quality version: 117 person-months. The prototype had some extra features not seen in the production version.
You write to the quality you need, and which fits your business objective and the code’s lifetime. Doing otherwise is squandering valuable resources, and potentially painting yourself into a corner.
Amazon focuses on agility and speed of delivery. For their less mature products, this equates to lower code quality in absolute terms, but also MUCH shorter time from initiation to delivery. For them it’s a winning strategy.
Google focuses on uniformity and quality. They’ve invested heavily in tools and it’s really paid off, making it easier to have a single gargantuan consistent code base for the web services. Best tools I’ve ever used. Sensible standards. For me, they’re the pinnacle of code quality and engineering. but, as a side effect, it can be difficult to innovate on the main code trees. Everything (in my experience) winds up feeling like a maintenance project rather than an adventure.
Microsoft focuses on enterprise-level performance and maintainability. Which is to say, correctness and robustness of the code is important, as is the ability for the same piece of code to be alive and maintained and augmented over the course of a decade or longer.
All three companies have good code quality for their goals. In absolute, academic terms I would say Amazon code is the most raw, Google code is the best quality and uniformity, and Microsoft code is a close second to Google. And of course there are exceptions to trends at everyone one of these companies.
Your mileage may vary.
This question originally appeared on Quora. More questions on Quora:
* Software Engineering: What kind of process did great software companies go through to establish their engineering values and best practices?
* Job Interviews: How do I answer the question "what is your favourite data structure"?
* Computer Science: What is the most important skill to learn in college for a CS major?
Photo Credit: DigitalVision/Getty Images