Top Software Development Mistakes That Kill Startups. Part 2

Sandra Parker
6 min readApr 3, 2019

As a continuation of my previous article, I’ll talk about major software development mistakes that can destroy startups on the earliest stages. Last time I was talking about premature scaling and using the wrong technology. Today, I’ll reveal two more issues that are not so obvious but still powerful enough to destroy small business.

Mistake #3 — Hiring a wrong team or a developer

Startup owners are not always surrounded by friends that can somehow help them in technology development, like in a story with Airbnb. Sometimes, it’s just you and your idea, and you feel a bit lost because you don’t know where to start. Gathering a development team from scratch is hard, and now we’ll figure out the key problems and solutions related to this process.

The problem

Еach engineer works with technologies of their own preference and usually with those they want to add to their CVs. It is great if you have a couple of in-house developers with different skills. However, their working priorities can be focused more on self-development rather than on the development of your business. For startups, it’s especially important because there’s no much space in the budget for trying and failing.

The most common mistake that can cause issues in product development, is looking for engineers who are super-experienced in a narrow set of technologies. They are usually called “ninjas”. The point you can miss is that these “ninjas” can be incapable of switching to other technologies or learning from scratch. “Ninjas” can simply refuse to adopt something new on your demand because they want to gain even more in-depth experience in what they’re already working with.

On the other hand, hiring inexperienced engineers is also a big risk. They have a limited knowledge pool, and due to the insufficient error-handling experience, such team members are likely to fail when it comes to complex code issues. Such a situation may also result in technical debt and the need for code refactoring, which is quite an expensive service for startups.

The solution

The best advice here would be to look for developers who have experience working with startups specifically. They know which technologies are better for small-scale projects, unlike those engineers who have never worked with startups before.

If you are planning to build a product with monolith architecture, you will likely have one team, whether it’s an in-house team of engineers or an offshore vendor of software development services. On the other hand, if your product is built with microservices architecture, you can delegate a significant part of work to a dedicated team, and still have full control over the process. Microservices allow developers to work on the product simultaneously, and it is very convenient for startups. It’s quick, cheap, and you are able to painlessly add as many features as you like when there’s a need to expand.

Also, it’s super important who is in charge of the engineering process. This person sets the pace and mood for the whole team or teams if there are several. Being just quick on the uptake is not enough. A technical team leader has to be on a first-name basis with each technology that is chosen for product development. Every team lead’s decision has to be mature and well-grounded, while the capability of smoothing out any conflicts is the key to a healthy and productive atmosphere in your team.

Mistake #4 — Inconsistent communication

Inconsistent communication rarely becomes a problem in startups with their own in-house teams of developers. Such an issue usually takes place in the relations between startup owners and vendors of software development services.

The problem

Hiring an offshore dedicated team is probably the most convenient way of developing a product for startups. It is cheaper than an in-house team because there are less or maybe even no overheads at all. The problem is, that communication between two collaborating parts is not often as clear and consistent as they both would like it to be.

A dedicated team usually works transparently and productively if there’s a team leader or product manager, who thoroughly controls the development process. Unfortunately, startup owners tend to hire just a couple of programmers, without managers. Moreover, they often try to manage everything by themselves, which is totally fine as long as you have at least some experience in product development. If not, there’s a possibility that you’ll experience problems with development uptime. Engineers, who are not capable of managing their working time by themselves, can put the deadlines at risk due to delayed iterations.

The second reason for inconsistent communication is timezone. Hiring engineers from the distant part of the world is cheaper but also quite challenging. When they are eager to start their working day, get some instructions and approvals of their plans, you are probably going to be sleeping. And vice versa, when you have a great new idea or just want to check the progress of your team, they are likely to be wrapping up and going home. Inconsistency in communication can lead to lack of trust and loss of clearness in priorities, while for startups, it’s especially important to keep things transparent and progressive.

The solution

It’s important for both the client and the vendor to have regular communication in order to keep track of iterations and smoothly leverage risks if there are some.

For example, we had a client, Quinn Hu. He had a great idea, that soon turned into a profitable and demanded media web platform — Distractify. Quinn Hu hired our dedicated team to make the service load-resistant and well-performing, as it was going to quickly gain popularity and have thousands or even millions of users daily. Our communication with the client was clear and consistent. This eliminated all possible risks like inefficiency and overdue. As a result, the product was launched successfully and made Quinn Hu a millionaire.

Why am I telling all this? Timezones are hard but possible to manage. Thanks to numerous task and time tracking tools, you can check the progress of your team any time you want. Your engineers will know their priorities and requirements for sure, while you will have a possibility to trust your vendor.

Conclusion

There are many more problems that startups can experience on the early software development stages. However, it is great that there are effective ways to leverage them. Be ready to face the challenges with courage and determination, and your idea will become a real product that brings income and pleasure for your audience.

Read the first part here:

--

--

Sandra Parker

Head Of Business Development at QArea. I’m passionate about new technologies and how digital changes the way we do business.