10 things to reuse between your startups

Dmytro Chaban
StartGap
Published in
6 min readSep 6, 2022

Since up to 90% of startups will fail, you’ll probably need to create not just one startup, but 10 or even more, before you’ll have something successful. If you think about this process as a continuous loop, you can quite easily optimize it, so you won’t need to re-do some parts of it over and over again. The cars are not being manufactured from scratch every time — they’re being assembled from modular parts that, at the end, shape a new car. Some parts can be used in different cars. Same analog can be applied for your Startup. You can re-use some parts of it quite easily by just thinking about it in advance and designing it modular. Here are 10 things that you can easily re-use in your next startup that will save you in total more than 140 hours.

1. Tech stack

Time saved: 20+ hours

When you start with your first startup, idea phase will go smoothly, and once you’ll hit the implementation phase — you’ll encounter a few day delays before you start writing logic. This is where you’ll configure your development environment, investigate how to use your framework, unexpected “unknown unknowns”, programming language barrier, docker image creation… the list goes on for ages. Even if you have a team of great senior engineers, you’ll still have such problems since you never worked together before.

When startup owners start their next startup, they might see some shiny new tech stack that promises time savers and decide to use it instead of their old tech stuck. While such thing can be true — most likely you’ll need to repeat same problems that you experienced with your old tech stack.

Instead — spend one time a few hours on different technologies, pick the one that is comfortable with good community, and stick with it. Performance issues are usually not that important when you have 0$ in revenue. Once you’ll reach significant number of users, you can then start thinking about scaling the app, changing the tech stack. Again — don’t forget that we’re working on something that might be thrown into the bin in a few months or years.

2. Authorisation

Time saved: 20+ hours

This is a big thing that you will probably spend at least a day or two. How will your backend communicate with a frontend? OAuth, JWT? Self-made OAuth server, Firebase? What about Google sign-in? Apple sign-in? TFA? Password recovery? The best part of re-using it is that it can almost completely be modularized. The only thing that you’ll need to extract from such thing is usually user or token that you can use. Also, if you’ll change your tech stack, you’ll need to do the same thing all over again.

I’m a real fan of Firebase, quite easy to use on any language, saves time.

3. App navigation

Time saved: 8+ hours

App navigation is a really painful topic for applications that’ll have nested screens. If it’s a web app, you’ll need to think about routing for every screen. If it’s a mobile app — you’ll need to think how deep links can work.

Most of the projects will usually have registration, main screen, profile, settings. This navigation logic can be saved and re-used in every other startup apps with small modifications.

You can also have permissions and different user roles — so saving both authentication and navigation may be beneficial 🙂

4. Payment logic

Time saved : 30+ hours

Getting paid is a really complex logic that requires a lot of attention. Some small problems — your clients won’t be able to pay — you lose money. While this initial logic can be hard to set up, copying it to another project usually takes way less time.

Additional tip to this point: write a step-by-step guide on how you configured the payment. Since payment logic is partially code, primarily you’ll need to get an SHA hash and submit it to the payment platform, configure keys, permissions and similar stuff. After a few months, you’ll completely forget on how to set it up again and will have many issues that are hard to figure out why they’re happening. So record every step you take first time, and re-use it later, you’ll thank me later.

5. API communication

Time saved: 20 hours

Unless you have one of those backend-less applications, you’ll probably need some backend, and for that you’ll need to define how to communicate with it.

One optimization that you can do right away is to use something like OpenApi or Swagger. You’ll auto-generate your API definition, and then on frontend you’ll have abstraction for schema generation.

6. Settings screen

Time saved: 3+ hours

Settings screen is not something of high priority, but this is something that you’ll need to have either way. Even without investing much time, this may take up a few hours of work. If you can save the logic and re-use it across 10 different projects — that’ll be at least 27 hours saved :)

7. Analytics and Marketing setup

Time saved: 10+ hours

This logic lives partially outside the code, but may take up a large portion of your time if you set it up every time again and again.

One example that you can extract is analytics for your app. You’ll want to know in every app how many users e.g. bought your subscription, or how many users clicked on some particular button. This analytics initialization and how to push events can be easily saved for future.

Another example can be conversion events. For example, S2S conversion tracking can easily be extracted. If your app is web-based, you can have a look at Google Tag Manager and how to set it up for new applications.

8. Team

Time saved: unlimited+ hours

Keeping the same team of passionate, fast-paced, familiar people can save you more time than you can imagine. If you’ll ask any Berlin or New York startup on what is their main struggle — almost all of them will answer that it’s super hard to find good people into the team. Being an engineer myself, I never could believe it, up till a moment when I had to hire someone.

Adding to that topic, keeping good people that already know your stack and have developed every screen of your previous project will create a new one a lot faster than hiring a new people.

9. Marketing channels

Time saved: 10+ hours

It can be really hard to come up with marketing channels initially, but once defined, this list will only grow.

Here are a few organic channels that you can explore:

  1. Social Media(facebook, instagram)
  2. Slack channels
  3. Linkedin skills
  4. Google Maps
  5. Reddit
  6. Product hunt

Additionally, you can record the process of posting something to a specific channel. For Instagram you can have steps on how to best create a picture, where to look for tags. If you’ll opt for paid ads, for Facebook, you can specify what categories to look for or how much to pay per lead.

10. Legal stuff

Saved: 20+ hours and mental health

Setting up a company can be really problematic, especially if you’re an expat in a non-native language country. There’re a few shortcuts that you can take such as Estonian E-Residency, Stripe Atlas, Xolo.

Though you can keep some records on how you opened your company and next time it’ll be much simpler.

Another point on Legal stuff is the Google Play and App Store legal listing. You’ll need to have terms of service and similar pages, which is good to define once, maybe even pay, and then re-use.

And this is how you can save at least 140+ hours just by reusing logic and configurations. This all of course varies from startup to startup and the number is just approximate time you might spend. Still, it’s good to think about re-usage earlier than later and plan your future projects accordingly. If you have any other things that might be helpful to reuse, please comment them below, so the next reader can have a look as well ;)

--

--

Dmytro Chaban
StartGap

Software Engineer, addicted to productivity and automatization