How to Design Great Software Products in Small Startups