Startup Pains: How to Develop IT Infrastructure Properly

If we believe StatisticsOnly 1% of startups survive. We will not talk about the reasons for this level of mortality, this is not our business. Rather, we will tell you how to increase the likelihood of survival with the help of competent IT infrastructure management.

Startup Pains: How to Develop IT Infrastructure Properly

In the article:

  • typical mistakes of startups in IT;
  • How managed IT approach helps to avoid these mistakes;
  • instructive examples from practice.

What's wrong with IT at startups

It’s worth clarifying that by startups, we don’t mean a coffee shop or an insectarium in a shopping center. We are talking about technology startups - about those who are haunted by the success of GitHub, Uber, Slack, Miro, etc.

Startups always have a lot of problems that prevent them from shooting: from insufficient investments to an undeveloped business model. In the same row, oddly enough, there is a problem with the first successes.

The first successes are evil for startups who overestimate their capabilities, especially financial and personnel. After closing the first successful cases, such optimists have a desire to immediately expand: rent another office, recruit new sellers, developers, and at the same time scale the backend (yes, so that with a margin). This is where problem #1 comes in.

People in a startup do what they can't

And they do not do what is required for the development of a startup. Let's explain.

In every startup, at least three roles must be closed:

  • IT specialist (or technologist);
  • seller (or marketer);
  • visionary (or entrepreneur, who is also often an investor).

Often these roles are mixed. For example, a startup is an IT specialist who, in addition, is forced to sell. He never sold and does it the best he can. Such a startup is a kind of malignant cross-functional team.

But let's say a startup is lucky: there is someone to sell to, and an IT specialist goes about his business. However, a rare IT specialist combines different qualifications: a developer, a tester, an administrator, an architect-engineer. And if they combine, it is unlikely that they are equally good. He can understand middleware, but not very much about the operation of cloud services and virtualization software.

Startup Pains: How to Develop IT Infrastructure Properly

When the backend expands, the workload on the IT specialist increases. Something starts to "sag". Worst of all, if this is a critical area for a startup, such as product development. And now a person has to work overtime, and sometimes around the clock.

Overload due to a lack of people and skills is a characteristic feature of most startups, a consequence of people doing the wrong things.

All services are deployed on one virtual machine

Startups often, based on their own ideas about savings, host development environments, databases, a web server, monitoring, and so on on one VM. At first, all this economy works more or less tolerably. The problems start when you need to scale.

Startups usually scale vertically. That is, they simply increase the number of CPUs, the amount of RAM, disks, etc. - this is a classic monolithic approach, the negative effect of which at some point becomes irreversible. If a young company grows, at a certain stage the price tag for the increased resources jumps to an unaffordable level. In this case, there is only one way to optimize the infrastructure: to assemble it again.

How managed IT helps

For this type of projects, we have a managed services class service - managed DevOps.

The customer receives "out of the box":

  • preparation of the necessary environments for work: dev, test, prod;
  • customized CI/CD processes;
  • prepared tools for teamwork: task trackers, version control systems, deployment, testing, etc.

At the level of infrastructure and tools, all startups need about the same thing. If you compare the venture market with gold mining, the Managed Services Provider (MSP) provides new, high-quality tools: picks and carts that do not break, cards that do not lie. The miner only has to choose a place where to dig.

Advantages of managed IT

Managed IT is a comprehensive service that covers a number of mandatory needs.

  • At the start, we provide the necessary and customized resources for work, growth and hypothesis testing.
  • We can say exactly how the cost will increase when scaling, because we know that the key metric is the convergence of the startup economy.
  • We consult to save a startup a significant amount of man-hours. We can also help with calculations of the unit-economy of the project.
  • We share the best practices of the market. The people at ITGLOBAL.COM have worked with quite a few startups. Many of these startups are on monthly maintenance. This allows us to bring together the best (and worst) examples and share the experience with clients.

Two cases from practice

According to the NDA, we cannot name specific companies, but the scope and product are.

Scope: fintech/retail

Product: marketplace

Problems:

  • There was no testing in the CI/CD chain. The addition of remote testers only made the build process more difficult.
  • Developers worked simultaneously on the same dev server without dedicated environments in containers.
  • 70% of developers' time was spent on the same actions from release to release. Development speed was very slow.
  • The infrastructure was deployed on a low-cost hosting in Germany (i.e. neither speed nor reliability).

This, by the way, is observed in every first project.

The solution is managed DevOps: we implemented CI / CD processes, set up correct testing and monitoring, intervened in development at the business process level, transferred the infrastructure to productive servers in a Tier III level data center.

Result:

  • development efficiency increased: new features and updates began to come out faster with less labor;
  • as a result, the cost of the development process as a whole has decreased;
  • the infrastructure has become flexible: the client can quickly scale both up and down;
  • the costs of managed DevOps, according to the client, paid off within six months.

Scope: web advertising

Product: AI platform for automating advertising campaigns

Problems:

  • backend on old hardware, in a data center with a low level of fault tolerance;
  • lack of regular backups;
  • monolithic infrastructure.

The solution is managed IT: we transferred the infrastructure to the top hardware, set up the Galera cluster for horizontal scaling, showed how the load on the VM will be distributed, set up backups and monitoring. Now, in addition to maintenance, we are actively consulting, including on DevOps.

Result:

  • the infrastructure has become microservice: the cost of expansion has significantly decreased, and the ability to scale, at the same cost, has increased;
  • increased reliability and security of the infrastructure;
  • developers switched from a waterfall assembly model to CI / CD, which helped to reduce costs;
  • the financial benefit from managed IT, according to the client, became immediately apparent.

Conclusion

The survival of startups largely depends on luck. One startup can spend money on expensive equipment and get nothing out of it. Another will succeed even with a lousy IT infrastructure, much like a gold digger finds a gold mine with an old pickaxe.

However, the modern tools, practices, and professional staff that a Managed IT provider provides greatly reduce the likelihood of failure.

Source: habr.com

Add a comment