> However, startups don't fail because the codebase is ugly, or convoluted, or not following best practices.
Startups do fail due to a failure to execute. Best practices aren't always about aesthetics. Ignore them too much and you end up with write-only code. You can compensate in various ways, such as designing the code so that it's possible to throw away the ugly parts later.
You are correct that good senior engineers are apt at striking this balance. I do not agree that the typical senior engineer is competent at this.
Startups do fail due to a failure to execute. Best practices aren't always about aesthetics. Ignore them too much and you end up with write-only code. You can compensate in various ways, such as designing the code so that it's possible to throw away the ugly parts later.
You are correct that good senior engineers are apt at striking this balance. I do not agree that the typical senior engineer is competent at this.