Code for early launch products is, in my experience, some of the most fucked up, horrible, over- or under-engineered, hacky, buggy, usually platform-specific and NIH covered hot mess.
Strong dependencies on half-assed internal data structures, stretch marks everywhere (“we did it like this because we had time pressure, and it was wrong, and now we cant get rid of it”), weird protocols (“we will just use a stringly-typed header for our high performance TCP communications, its easier to debug!”), lack of documentation (“no bro, the code is the documentation!”), and very little if any devops or testing (lol testing).
… And that’s okay.
Thats good that way, otherwise products would never be launched. Thats why a lot of engineers will not launch a product, ever - their standards are too high and theyre too hung up on doing it right, that their window of opportunity for their niche fade. The one thing I haven’t seen a single startup or upcoming product struggle with is quickly churning out a lot of code that mostly/fully does the job and sells.
My point? Early products rarely struggle with churning out large amounts of code.
Unless AI can replace engineers like me, half of who’s job experience is cleaning up, streamlining and refactoring these “quick launch” codebases, in order to make the code last even if core engineers leave and to make onboarding easier, we are NOT going to see new products launch and persist purely by one person and some AI, and stay and stand the test of time.
It’s about that second step - what do we do once we have launched? Its not considered until that moment arrives. Launch of the product happens, and suddenly, the main goal is achieved. Customers come, users sign up, and the bug reports start coming in - and this is one of the few points where the product and the team can fail.
Hire some good engineers, and for the love of god, write documentation. AI helps, but it won’t replace good engineers yet.
If I haven’t been clear, let me be clear now: Not nearly every product launch / startup / early software company is like this. There are products which are launched by engineers who can both churn out a lof of code, and with high code quality.
In my experience, thats a minority, though.
You can hire me to take a look at your code base, DevOps etc. and offer advice, concrete suggestions and refactor/redesign code here: firstname.lastname@example.org