What is premature optimisation?
Most of engineering is about optimising something – making something stronger, making something faster, making something cheaper etc. This activity of constantly optimising something makes business sense when the business landscape is fairly settled and what to optimise is fairly clear.
When you are building something new as a startup, you are assuming that your market is so and so, you are assuming that your customer needs so and so, you are assuming that you will make money in so and so manner. You are working with a ton of assumption. Pareto’s rule applies to your assumptions as well. 80% of your assumptions are likely to be wrong. Only 20% of your assumptions are likely to be right. And you dont know which 20% is right. This means you are stupid to optimise something on such uncertainty.
But But I was always taught to build the best system
The right approach when dealing with such uncertainty is build what you are 100% sure of. Ok, you cant be 100% sure of something. But my point is build something that you are confident that it will not be wasted effort.
Minimising wasted effort is also something that you can focus on.
You also dont want to focus too much on minimising your wasted effort. Part of your job is also to remove some of the uncertinity in the project.