Tugulab Blog.

The proper way and the good-enough way

author avatar

clacla

I am an entrepreneur-developer. I build the products that I imagine. It is cool, but you’re constantly facing an internal battle. On one side you want to “do more faster”. On the other, you want to have something done properly (who require 50 to 100% more time).

I always followed the entrepreneurial side of my conscience and it worked… for a while. When your product grows and the codebase expands, it start to get unstable. It starts cracking. It becomes trickier to add stuff. Or to fix old stuff.

Then the worst nightmare of every CEO happens: “we need to rewrite the app/platform/codebase… it’s impossible to deal with it anymore… the team is not happy and it’s leaving… etc”. The five minutes of terrors are followed by imprecations, mystic invocations and blame of incompetence. An initial estimation of 3 to 6 months is given, who then becomes 9. Followed by other 3 months of fixing.

To save time during the development, you pushed for the good-enough solutions, and now you need (you cannot do otherwise) invest a lot of time to do it again. In the proper way this time (hopefully).

This year thank to Luca, Juan and Luca (awesome iOS engineers) and other great engineers, I learned why it is really important to not sacrifice quality. In the short term you’re slower implementing features, but in the medium/long term you’re not forced to do big rewrite your codebase.

The overall velocity is higher. Doing things properly, you actually do more. The engineers are happy, because they work well. Business people is happy, because they’re not forced to pause the business for half year. It becomes easier to recruit engineers when you’re building start-of-art technology. And it’s also easier to retain them too.

Your job as an entrepreneur/CEO becomes picking the right things to do. Your job is to understand what is a priority and what can wait. What has to be done and what can be not done. This way you’ll let the engineerings do their job properly, not the good-enough way.