Why Should Your Startup Avoid the Edge of Technology?

Hasan Noori
The Startup
Published in
7 min readDec 16, 2020

--

Image credits: https://www.glasbergen.com/

Think about it: You are living in the world of technology, where everything is on a constant and rapid change. Technologies come and go and a daily basis. What you’re using today, may become an obsolete technology tomorrow. Not only that, if you don’t move to the new technologies as soon as possible, you will lose the improvements, and new opportunities they bring. On top of all this, you are building a startup. Your job is to be innovative, to make a change, to create the ‘next thing’. You yourself are an agent of change, of moving forward, putting the old thing behind. How can you do this, without using the best new things yourself?

How can you call yourself innovative and new, if you can’t keep up with the trendiest tools and technologies? You could easily fall behind, with the old and obsolete technologies, which will deprive you of any chance of growth, from the all-new opportunities which come with the cutting edge tech, and form the most efficient and secure ways to do your job! Thus, you should always be looking for cutting edge technology, and never let any stale technology enter the holy land of your startup, right?

The really short answer is NO.

The somewhat longer answer is that, as a startup, you can’t afford all the ambiguity which comes with the cutting-edge technologies, and it’s not even your main goal to follow them. So you should avoid them as much as possible.

For the long answer, follow me through the next few paragraphs.

What is the main goal of a startup? To create new and innovative solutions, or to use new and innovative solutions? The answer is simple, the main goal is to provide your customers new (and better) ways to do things. Or the possibility of the things they couldn’t do before. How you do this? As fast, flexible, and efficient as possible. And unless your very service depends on new technology, you don’t really have to use them to provide your innovative service. In fact, more often than not, you’re better off without them.

The main role of the tech team in a startup is to provide the business side with the fastest solution for their needs. If your business needs to provide your customers with an order management system, neither them nor your customers, don’t care which technology you used to develop it. Did you use PHP, python, or ruby on the backend? Did you store your data using NoSQL databases, or you used a good old SQL database, or even wrote them on paper and served them by a really fast and capable operator? (Ok the last solution doesn’t really seem possible, but you get the idea!).

All that your customers care about is that you providing them with a new solution, and in a fast and secure manner. What do all your business developers care about? They want to deliver it fast, and efficiently.

It doesn’t matter if your current solutions will be obsolete in five years if your startup doesn’t live to see the next year. And believe me, no matter how shiny and new and innovative your technologies are, if they don’t help you deliver fast, you won’t make it far.

So far I’m making a point on why the cutting edge technologies won’t necessarily help you. But why avoid them? The main reason is that when working on a startup, you will have to deal with a lot of ambiguity and change on every side, your business plan, your market, your customers, your team, your structure, etc. You simply my not afford the new ambiguities and challenges that the cutting-edge technologies will bring you.

Here are some of the problems the cutting edge technologies may bring to your team:

  • You haven’t really seen them in many actions Most probably, they were created in a bigger company, or by a great and innovative community, to solve a set of shortcomings on the existing technologies. But how many companies or teams have used them? Have they succeeded? Has technology helped them? Are their problems like yours, or they used it to solve a problem you don’t even have?
  • They’re not tested in many scenarios What if the solution comes with a set of security risks? What if the solution has a scaling issue? What if they don’t go well with other technologies? And many other what-ifs, which will be hard to answer, unless the solution is tested on a big enough scale of projects and users for an acceptable period of time.
  • You don’t have the experience to use them to a great effect Unless you are one of the developers of the new solution, chances are that you and your team will have to go through a learning curve to adopt the technology. Not only your current team, but even the process of hiring the new team members will also become harder, more time consuming, and more costly.
  • They’re not yet mature enough to solve most of your needs and problems Technologies grow over time, to cover more and more areas of need. Most of them were developed around a handful of main problems and no more. When the technology is young, chances are that it won’t cover all of your needs, and you will have to use a workaround, third party, or custom made solutions to cover for them. Meaning in many cases, it will cost you a great deal of time and effort.
  • They don’t have a great community to help you. When you face a problem with a technology you’re using, even if they have well-written and sophisticated documentation, probably, you won’t find your answer in the official documentation. Most of the time, you will try to reach for the community of users and read their tutorials, helps, and QAs to find your answer. And, well, what will happen if there is not a big community to help you?

For all these reasons, cutting edge technologies can cause more problems than they solve, decreasing the speed and agility and increasing the costs and complexities. This can easily become a life or death situation for your startup, as you won’t be able to respond to the business needs as fast and easily as you should.

It’s mostly the CTO or the technical director’s job to decide about using these technologies. Although there’s no one global answer for this decision, there’re some important aspects to consider on the issue:

  • First of all, the technical team’s main (and critical) role in an early-stage startup is to respond to the requirement and changes of the business, as quickly and effectively as possible. They also should provide the necessary technical infrastructure to support the company’s activities effectively and efficiently. To achieve these goals, it’s much better to rely on more reliable technologies. We’re not talking about out of date or dying tools and technologies, but more well-known and stable solutions.
  • If the product or service we’re providing, relies on a cutting edge technology, the technical team should adopt it. In this situation, we’re still sticking to the main goal of the technical team: providing the business with what it needs.
  • A startup team (naturally) is mostly formed by a group of creative individuals who always look for more new and creative ways to do things, and, naturally, they’re always eager to find adopt new tools as technologies. As much as it’s an important factor in a startup’s culture and its success, it can bring its own problem too. If you keep adopting the new tools and technologies, you will face many unneeded costs; and if up stick with the same tools and technologies for a long time, you may deprive the team members of some of the things they value the most: dynamicity and creativity. There should be a balance between using the existing and more reliable technologies and adopting the new ones. If you don’t find this balance, you may end up either jumping from technology to technology, draining the company from its critical resources, or killing the team members’ morales and satisfaction by creating a stale and dull work experience for them.

Using side-projects is a good solution to adopt new technologies. Instead of moving the main products and projects to the new technologies right-away, and facing many unpredictable problems, you can test them in side-projects or pet-projects first. This way the team will get the chance to evaluate the technologies, and get some experience in them. Reducing the risks by a great deal.

One more thing to consider is that sometimes the lifespan of technologies is greatly underestimated, especially when comparing to a startup's life stages. Powerful and popular technologies can easily live for many years. Even programming frameworks (which sometimes are considered short-lived) can live more than a decade. While a startup’s early stages (where they should look for more technical stability), shouldn’t take more than 2–3 years.

The following questions can help the team to decide whether to adopt a cutting edge technology or not:

  • What value will it bring to the company, now, or in the future?
  • What are the costs of adopting it?
  • How will it change the cost of product development in the future?
  • What are the risks of adopting or not adopting it?
  • Who is currently using it now, and where? What are their experiences? How do their problem domains relate or differ from ours?
  • Does it have a good community of users? Can we rely on the community to solve any problems or questions?

A technical team’s important job is to create a balance between the technical and business growth in the company. In the early stages, the business side normally should get a greater focus, but as time passes and the company grows more stables, the technical part can get more focus too. And that’s when we can adopt the cutting edge technology with greater ease, and lesser risk.

--

--

Hasan Noori
The Startup

Co-founder and CTO of Formaloo | Part-time Geek | Philosophy lover