A fast-growing business is like walking off a cliff – how to avoid a painful landing?

In the previous entry in this series, we presented data that prove that running a startup is rather like hanging over an abyss. You can fall to the bottom at any time, for a dozen or so different reasons, ranging from problems with obtaining financing, ending with an inept approach to building and product development. If you have not read our post: The Top 5 Reasons why your startup will fail, we invite you to read it.

In today’s post, we will focus directly on the product and technological problems that we observe from the perspective of a software development company, and which often lead startups and fast-growing companies to a fatal end – if not at the outset of their journey, then after several years on the market, when they should have stabilised their position. We will also suggest how to protect yourself against them or what to do when we notice the first disturbing signals.

Houston, we have a problem or, when do businesses get into trouble?

At first, it seems as if everything will go smoothly. There is an idea, there is a solution, there is a team ready to work. However, as discussed in the previous article, most startups fail (as well as companies focused on rapid development).

Sometimes the problem starts at the beginning, and sometimes it comes out only in subsequent years of the company’s operation. But it is heartening to know that almost any danger can be avoided, and many of them can be solved if caught quickly enough.

The problems faced by companies can be divided into four main categories, with the first three directly related to the phase of work on the solution:

  • Problems with product in phase I – the very beginning of work on the product, or rather on its discovery.
  • Problems with production in phase II – gradual implementation of the product, release of the first MVPs.
  • Technological problems in phase III – product maintenance and development over the following years.
  • Human related problems in each phase – the most difficult to solve

1. Product problems

Let’s be honest: there is nothing worse than investing time, money and commitment in a product that will not interest anyone or will turn out to be completely useless. As the data show, over 40% of startups and newly created companies make a mistake as early as at the stage of drawing up a business model and thinking about the target solution.

These are very disturbing conclusions and a serious problem: why is there such a large gap between an apparently good idea and the actual market need?

Companies are often created on the spur of the moment. The first noticeable changes appear on the market, and entrepreneurs are already looking for a business idea that will have a chance to appear in the new reality. This could be seen at the outbreak of the pandemic, which first halted all activities for a few months, and then caused many new ventures to flourish.

The willingness to react quickly and stay ahead of potential competition often leads to overly shallow market analysis. Creators focus on product innovation, and they can see with eyes of imagination how it will help future recipients. The difficulty is that there can be a huge gulf between imagination and actual demand.

The most common product mistakes that companies focused on rapid growth make:

  • Shallow market analysis or a complete lack of it, following your own ideas;
  • Failure to define and analyse the target group;
  • Ignoring customer needs and assuming you “know better” what they need;
  • Premature release of the product (the product may be underdeveloped or the timing may be inadequate. For example, releasing a new solution at the start of a pandemic when people were most afraid could lead to a negative reception or total ignoring of the offer);
  • Delayed release of the product (difficulty to break through the competition or the market need has changed and the product is out of date from the very beginning);
  • Weak business model (failure to specify the direction in which the product and offer will be developed in the future, when the main customer needs are satisfied);
  • No ideas for monetization of the solution;
  • Product unfriendly to recipients, difficult to use, not very intuitive;
  • Wrong selection of technology for the project.

What is the best way to validate your ideas before the entire production and promotion machine of activities around a solution that perhaps no one needs is launched? It is best to refer to the mechanisms behind the Product Discovery approach, i.e., ways that have been developed to discover valuable products.

Product Discovery reduces the uncertainty that comes with introducing a new solution to market. It is a repeatable process aimed at discovering the real needs or problems of the target audience. The collected information helps to validate the original idea, set the next design steps and develop the product in line with market expectations.

Importantly, however, it doesn’t have one imposed form, but rather several phases in which individually selected research tools are used. It all depends on the design and the hypotheses set for the solution being built – it can be in-depth data analysis, techniques for creating product visions, workshops with creators, research with users, experiments, interviews or building prototypes.

The Discovery process is largely based on feedback collected from the market, and the whole fits perfectly with agile software development methodologies. The activities are carried out in short iterations, thanks to which the production process of the first MVPs can be started relatively quickly.

Conclusion: Given the time pressure under which startups and young companies operate, it is hardly surprising that they are looking for shortcuts in many ways. However, for the project to be successful, you need to work out a certain balance and look for solutions that will allow you to work quickly and wisely.

The product discovery process increases the chances that all subsequent activities will be more effective, and that the business will not turn out to be just an empty shell with big plans, but small opportunities.

Learn more about Product Discovery:


2. Production problems

When we are sure what problem we want to solve and what tool we need for it, it is time to start programming work. Virtually every company cares about time, but startups and young businesses feel the pressure of the passing weeks even more.

As a result, work on the solution is based on constant changes and constant publishing of new versions of the software. In the long run, this approach is undoubtedly a challenge, so the whole thing should be thought over in advance and closely monitored. Otherwise, any omissions and shortcomings will painfully make themselves apparent in subsequent stages of the project.

What are the most common production problems of IT projects?

  • Long waiting time from the change in the code to its implementation in the environment;
  • No automatic tests for each code change, which makes it difficult to detect an error if several changes are added to the repository at the same time;
  • No systematic standard of work. The solution being built may work differently for different programmers and not create a coherent whole;
  • Forgetting to run tests regularly.

All this causes delays and missed deadlines, and work on the product is inflexible and often more expensive than in the original assumptions. And this, especially in the case of startups, can translate into financing problems.

Fortunately, good practices of continuity and automation of all stages of code implementation come to our help here, i.e. work with the use of Continuous Development components (Continuous Integration and Continuous Delivery). Each team involved in the modern software development process should be aware of the benefits of using them in the project and what this translates into product development.

In fact, it is a kind of culture of work on software development, thanks to which the development team can more regularly deliver tested and proven changes to the code. In general, Continuous Development processes are responsible for the continuity of compilation and tests of the code being created, and thus they automate the building of ready-made packages, testing, code analysis and implementation of changes to various environments.

In this approach to software development, changes are as small as possible and as often as possible (automatically) hit the target environments.

The biggest advantages of implementing solutions based on Continuous Development:

  • Faster development and implementation of new functionalities;
  • Flexible response to user needs and continuous work to improve the quality of the solution;
  • Streamlining the testing process and constant monitoring of product development;
  • Less bugs and faster catching of mistakes or wrong code fragments;
  • Greater attention to the quality and purity of the code, so a lower entry threshold in the event of a change or extension of the team;
  • Improved team productivity and greater job satisfaction.

Conclusion: Although working on the basis of a mature CI/CD process requires an experienced team and investment in additional tools, as a result, it is the best way to avoid delays in the delivery of subsequent versions of the software. The dream of many companies is to have a fully automated work environment, but reaching this level, especially in ongoing projects, is not that easy.

Startups and companies that are at the beginning of their journey can immediately introduce good practices and consciously build a product, and those that are already at some stage of work advancement should strive for gradual process automation. Especially if they are already beginning to feel the effects of delays and errors in the project.

Learn more about CI/CD process:


3. Technological problems

Nobody likes to take on debts, but sometimes we make a conscious decision to go into debt if that is the only way to achieve our goal. And just as in the case of a home loan we realise that we will have to pay back the loan, so, in the case of software development, technical debt will also require financial investments. And the longer we delay with the repayment, the higher the total cost.

Time is the currency for startups and fast-growing companies. You have to start with the product before the competition, verify the idea and start making money from it. The pressure is enormous, and the software development, after all, has been ongoing. And the more thought-out and refined the project, the more expensive and time-consuming it is initially.

That is why companies decide to take shortcuts and implement a cheaper and faster option, which is not ideal at the start, but will allow you to take your first steps. If this is a fully conscious choice, along with a well-thought-out and planned repayment, it doesn’t have to be a bad option at all.

Worse, if we are not always aware of the technical debt incurred, or we do not realise how quickly interest on it will start to increase. The repayment cost may at some point start to outweigh the project investment. Thus, the created solution ceases to be profitable, and the funds melt away before our eyes.

Examples of situations in which businesses unknowingly incur technical debt

Focus on quick customer acquisition instead of software development

Companies treat the problem superficially and create a solution that only partially addresses it. They focus on promoting their idea, accelerating the implementation of unfinished versions. When it turns out that the application does not meet all customer expectations, the nervous addition of new functionalities begins, or the company meets the wall. Sometimes it’s easier to start from scratch than to work with poorly designed software.

No looking to the future and limited cooperation between business and technology

Solving current problems is an easy way to get customers in the here and now, but what next? Will the developed business model still exist in two, three, five years? If so, in what form: unchanged or is constant development planned?

The lack of long-term plans is not only a threat from the business side, but also for the technical side of the project. IT leaders need to know the plans for the business’s future, and it’s best to participate in them. As a result, they will be prepared for future technological challenges and will make architectural decisions more consciously.

Being satisfied with the stability of the solution and ignoring market signals

The product works, the customers are satisfied, so why mess around? Such an attitude often heralds the beginning of serious problems. The moment we enter the market with an interesting product is also the moment when the competition starts working on its better version.

The world is moving forward, and the solution is standing still. At some point, it may be so indebted (e.g., due to a lack of software updates) that when the owners finally need to change, it is too late to effectively get out of debt.

Conclusion: Even if we create a stripped down product, with a view to taking shortcuts, its basis (architecture, selected technology) must be thought out so as not to be a limitation in the future. By limiting ourselves from the very beginning, we can completely block our path of development. And if the weight of the next functionalities outweighs the built foundation, the solution will start to fall apart before our eyes. And maybe there will be a shortage of people who will want to patch them up in any way – programmers do not want to work on outdated technologies and investors do not want to add to something that is already passing away.

Learn more about technical debt:


4. Human problems

The fourth category includes all problems with recruitment, loss of passion, professional burnout, lack of perseverance, inappropriate marketing, obtaining financing or difficulties in communication and the future vision of a startup’s development. It is no less important than the other problems, and – in our opinion – it is the most difficult to protect against. We do not have a ready-made solution to the difficulties that may arise in most human aspects, but as you can see above, we have prepared a recipe for the other three categories.

Although the phrase “software development process” does not sound too tempting, it is a solution to the vast majority of problems that sooner or later almost every growing company will encounter along the way. Despite the pressures of time and the various constraints associated with creating digital products in an unfamiliar environment and business model, there are processes and tools that can help you gain confidence and then create a solution that will be successful.

For this purpose, it is worth reaching for the help of an experienced partner who will take you on a journey through the process of building dedicated software. Step by step, it will show you how to effectively lead an IT project, avoid errors, delays and technical debts and, at the same time, act on a regular basis and quickly notice the desired results.

Software as a Journey

Let’s get to know the path that will protect your business from a painful collapse