Note: This article does not advise against the startup culture but aims to point out a few pit-holes to avoid.
Here are the top five mistakes that startups make, in my perspective, that adversely affect the productivity of the whole team:
I've seen companies chilling out when they have enough runway and take desperate actions to fulfil the expectations of their investors with short term profitability eventually ruining the potential success that the product could have had.
If you are not willing to change anything based on ideas from your team, you should rather hire people who are good just with tech and have no interest in anything other than tech. A lot of product engineers get wasted who could be contributing to other startups which are more open to ideas than being stuck in the frustration of not being listened to.
When you think about ethics/culture, its not all black and white for everyone. There are in fact many things that people truly understand with experience in different kinds of organizations with different sizes of team. It really helps to have people from different culture including larger organizations so that the culture continues to be maintained as the team grows.
Startups do need engineers who go beyond technicalities and understand the product and its need, moreover in help with suggestion during product discussions, but there is a limit to it when the team grows. Not all decisions are binary, there is no single right path to success. Everyone has their own point of view and may have different 'right' solutions for the same problem. It helps to have more ideas on the table, but when its too much and the leadership is not strong enough it creates chaos.
The skills expected from a candidate appearing for an interview changes a whole lot depending on the open position and role they are being hired for. It often happens that the person interviewing the candidates is not properly trained or in fact, the whole team unanimously takes weird paths to judge a candidate. If the expectations are not set right, chances are high that you might recruit a wrong person for the job. For example, a front-end developer may end up excelling in your problem-solving sessions but might screw up your customer-facing app/website beyond manageable/extensible condition.
Each and every member of your team contributes to the product, culture, and ethics of the company and that gets even more 'dangerously' considerable when your team is small. You should choose wisely!