paint-brush
The Best Tech Stack for Powering Your MVPby@sergii-shanin
3,761 reads
3,761 reads

The Best Tech Stack for Powering Your MVP

by Sergii ShaninOctober 2nd, 2018
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

You don’t have to wade your way through a sea of buzzwords to find the right tech stack for your startup. As you get ready to <a href="https://hackernoon.com/how-do-i-present-my-app-idea-to-an-engineer-9da92657fb9c" target="_blank">present your app to an engineer</a>, you also need to think about what technology you’re eventually going to use.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - The Best Tech Stack for Powering Your MVP
Sergii Shanin HackerNoon profile picture

You don’t have to wade your way through a sea of buzzwords to find the right tech stack for your startup. As you get ready to present your app to an engineer, you also need to think about what technology you’re eventually going to use.

This is the time that founders are most vulnerable to being bamboozled by hype driven development. Ask a ‘hypester’ and you’re bound to hear that the current JS framework of the week is the only option for your startup; ask a programmer’s programmer and you’ll get some moralistic sermon about Elm or Elixir. I’m sure these all have their niche, but I doubt any of them are the best choice for your startup.

I’ve been working on the business side of tech for over a decade, including helping startups develop their MVPs. From this I can say a few simple points that every founder should consider:

  1. Go with proven technologies; as you grow and need more developers this will be critical for hiring.
  2. Don’t reinvent the wheel; client acquisition comes first during the early days of your startup, not R&D for some new technology.

That leaves me with both an old standby and a newcomer as my number one recommendation for building an MVP: Ruby on Rails for your backend and browser based apps with React Native for iOS and Android apps. This one-two punch gets you to market faster and cheaper that gives you a powerful set of tools to build a great product.

Ruby on Rails makes business sense

Ruby on Rails has a strong following among developers. Clear cut best practices make it faster and easier to write and debug code. A robust community means that Rubyists can draw from tons of open source gems to speed up development.

All of this matters to a business beyond the benefits of having happy developers. In cold hard cash, it’s 30–40% faster to develop with Ruby on Rails compared to similar technologies. Developer time is usually the biggest expense when building an MVP, so it goes without saying that reducing this by a third or more is important for bootstrapped startups. Martin Fowler has a detailed comparison of Ruby and the enterprise heavyweights Java and .NET — not surprisingly most PMs said Ruby on Rails was faster to build projects with.

Saving on development costs isn’t just for cash-strapped startups. Established companies also use Ruby on Rails: Basecamp, GitHub, Airbnb and Hulu. So much for the myth that Ruby on Rails doesn’t scale! Rails gets the job done in less time, for less money and keeps your developers happy.

Photo by Artem Sapegin on Unsplash

React Native is the king of mobile apps

Another way for lean startups to cut down on development costs is using React Native for both Android and iOS apps. You can reuse about 90% of your code when you create Android and iOS apps with React Native. You still get the boost that true native apps bring.

React Native isn’t just for bootstrapped startups looking to bring their first app to the market. Facebook, Instagram, Skype, Uber, Walmart and other big companies use React Native

Ruby on Rails isn’t always the answer

True mastery of a tool is knowing when that particular tool isn’t the best choice. Hence the old adage that if a hammer is your only tool, everything looks like a nail. Ruby is great, but we also have other tricks up our sleeves when Rails isn’t a good fit.

We have a client with a super high load app that processes millions of requests. Golang was clearly the best choice, so we wrote the app in Go. One of our engineers even devised a scheme to black box test the Go app using Rails.

Other projects required machine learning and advanced data science. Python is a much better fit in this case, so plenty of our projects use Python.

We also inherit projects with legacy code, especially PHP. In most cases it doesn’t make business sense to reinvent the wheel and rewrite the codebase from scratch in Ruby. Most commonly this happens when clients approach us to add new features to their Magento stores. While we advise clients to open new stores in Solidus or Spree, there’s little point in migrating an existing Magento store to either of these platforms.

Other frameworks to consider

Rails definitely isn’t the only framework out there. While you’re doing your due diligence, it’s worth taking a look at some other contenders. Laravel, Django and all-JavaScript apps with Node on the backend are all legitimate options for startups.

There’s no harm in exploring other options, but at the end of the day those frameworks deliver more or less the same result. Rails still has the advantage of generally being cheaper and faster to build.

Tech is still just a tool

At the end of the day, you’re building a profitable business. Technology is the tool that gets you there, but don’t fall into the trap of technology for the sake of technology. Your end users aren’t going to care whether your tech stack is trendy; all they care about is that your app actually works.

From a business perspective, you need to make sure your tech supports your needs, is maintainable and sustainable both in terms of cost and your expansion plans. That’s why Ruby on Rails on the backend plus iOS and Android apps with React Native is the way to go for most startups.

Originally posted on eTeam’s blog.