Coding practices at Google and Microsoft vs. startups
2 min read
I recently talked to Michael Lynch, an ex-Googler and ex-Microsoftie who now runs his own tech start-up, TinyPilot.
I asked him about software engineering practices at Google and Microsoft and how they differ from what he now does at his own start-up.
We are both code review fans, so we also talked about this engineering practice.
The main difference in developing software for a startup or large corporation
In a nutshell, he stressed that at Google and Microsoft, you write code that has to be supported for many, many years. In a start-up, you might not even know if the code will ever have customers. So, quality concerns are totally different.
He also said that in a start-up, as a technical founder, you do not have to convince anybody to pay back technical debt. It's at your own discretion. So moving fast at the beginning is not such a problem.
Reasonable testing practices at startups
Still, at his own start-up, he does code reviews, also to mentor his contractors and to ensure the code is maintainable and consistent. And he also writes tests. But he does all of that always with an eye on the return on investment, which we should also do in other settings.
So, if it's too hard to write that unit test, he writes an integration test. And if he sees manual testing is sufficient at the moment, he does not write tests.
I found the conversation very interesting and insightful.
If you want to listen to it, you can check it out here: https://www.software-engineering-unlocked.com/coding-practices-maang/