Too often, I see startups running into serious issues because their technology infrastructure and engineering discipline has not kept pace with the growth of the business. Most companies start out with the 2–3 founders and early engineers hacking up the initial tech to get the initial product out of the door. Then comes the funding, pressure to grow business quickly, release apps on new platforms, add features. Company hires more engineers to cope with up with this but what most founders don’t realise is that their initial architecture, code base, coding practices that worked when they were at prototype stage no longer works when they have 10–15 engineers with serious demands placed by the business. Result: Long iteration cycles, frustrated engineers, and frequent outages. Not something that you can afford for a long time. I understand it is often hard for the tech team to resist the pressure to just get things done somehow. Basically, you need to take 2–3 weeks to set your tech stack, processes in place before you resume the march for greater glory. Typically, this happens couple months after Series A when the company is trying to scale fast so it is important to set your VC’s expectation also when you are undertaking this exercise.
Now most of the below is not rocket science, but given our young ecosystem with majority first-time founders and engineers who don't get drilled into these engineering best practices in their careers before, these issues creep up slowly but surely.
When you do the above steps, you should also put in place metrics that measure how the health of tech base is improving: frequency with which releases happen on schedule, number of regressions and release rollbacks, time spent on regression vs on building new features etc.
I have seen tremendous improvement in team’s morale and execution efficiency wherever this is done, though these are just the basics of putting in place an engineering culture that can make a truly great org.