Startup engineering is different from software engineering. Startup engineering values engineers who are able to iterate quickly and hack the code comfortably. It requires practicality in choosing technology like picking up trending technology vs stable technology.
If you are still figuring out your product-market fit, then here are four common engineering mistakes you should avoid.
1. Premature scaling
Premature scaling is one of the most common engineering mistake made by the startup. Quite often, startups trade immediate pay-offs to long term never realized benefits. They invest a lot of time and resource towards building large-scale systems when the company doesn’t require such systems at this point in time. In early 2010s rational databases were ignored with an objective for infinite scalability of NoSQL database like MongoDB. Many startups lost its productivity with the excitement to switch.
Startups need to understand that, scaling before reaching product-market fit is a waste of engineering resource. A startup often works on limited resources of time and money and such things can be such devastation for startups.
When all know premature scaling is deadly for startups, why is it such a common mistake?
Scaling is fun. During the early days of Twitter, it was just a simple monolithic CRUD application. In just a few years of their launch, they had many interesting problems to solve like – managing a huge amount of data, cutting downtime, handling user spikes, etc. These kinds of problems excite engineers, and it would attract people to join the team. Startup engineers dream these problems and start working even before they acquire userbase.
There is a reason why the quote – Do things that don’t scale is often mentioned in Y Combinator. Most of the engineers fight technical debts with moral values. But, technical debts don’t kill many startups – when a startup becomes successful, you will have money and resources to fix those engineering hacks which you did in the early days.
Most of the engineering tools and roadmaps are built with hyper optimistic views of the future. But, you can’t blame the system because entrepreneurs start the business with the view to make it big.
2. Using shiny, untested technology
Failure states are poorly understood, because of which it’s hard to anticipate how things will break. New programming languages and frameworks don’t have libraries which makes it hard to work with, and it becomes harder to recruit new engineers. You will end up in utilizing your resources time to learn these new technologies instead of using them to create features that can benefit your users.
Engineers who are not part of the founding team often push to use technologies that are trending in the market. It might help build their skills and stay up to date with market trends buy it would become a burden for a startup. Also, in the cycle of adopting to new tech, you will end up rewriting stack every 6-12 months. Unless you have engineers who have experience in choosing the tech and experiencing the downsides of working with the latest technology, it will become complicated for startups to scale their tech stack.
As an engineer, you are taking a risk by joining in a startup, and working on these unnecessary and unstable technologies will add more risks. In a startup, engineers don’t have access to mentorship from experienced engineers. Startups have to understand that, just because the technology is hyped doesn’t mean it is useful for their startup.
3. Hiring the wrong engineers
Startups often make a mistake by looking for startup ninjas and rockstars – they want their employees from fancy colleges and other successful startups. And, they favour engineers who use the latest technologies and people who can learn new techniques quickly. But in reality, the majority of the engineers don’t work for startups, and engineers coming to startup don’t have skills to be up to date. Eventually, startups would end up hiring engineers who are not the right fit for their product.
Every kind of engineer brings in their own kind of risk,
Engineers working in large companies can only work in a scaled system and may not feel comfortable working in startup hacks.
Elite engineers will get bored with plumbing type engineering tasks, and they would often over-engineer the solutions.
Junior engineers joining startups would often push new technology or poorly architect their system.
So, startups should often look beyond fancy degrees and resumes, instead find engineers ideal for their project. Find engineers who have a Minimum Viable Product mindset and who can handle constant iterations. Your engineers should also have empathy and ideology for your users. This will also help a startup to retain their employees.
Sometimes you will find startup engineer who was effective in a team of 5 members might be terrible in the team of 25. So while hiring your talent, don’t let previous experience guide your decision to hire them to your team.
4. Problems with product and management
Startup founders are optimistic, there is no harm in it, but it becomes an issue when they create an unrealistic product roadmap. They would end up hiring too much, burning too much money, etc. and eventually fail badly.
‘Always pitching’ mentality of founders will misguide engineers on how the product should be structured. The management might feel like engineers are not performing, but in reality, management doesn’t have a proper plan and vision.
These are not the only traps startups face in managing their engineers. But these are most common traps and have a clear head in managing your engineering team for tasting success.
You may also like,
More from Entrepreneur
There are 100s of factors which influence the company’s culture – and most prominent factor is the office design (everything …
Premium beer brand White Owl has raised Rs 40 crore funding led by IIFL India Private Equity Fund, and supported …
San Francisco and Mumbai-based mobile marketing platform CleverTap, has raised a $35 Mn Series C funding round from existing investors …