Top 5 Biggest Challenges when Building an MVP and how to Avoid Them

Ilya Matanov
JetRuby Agency
Published in
11 min readJun 20, 2018

What is MVP?

The term “MVP” was first introduced by Frank Robinson in 2001 and stands for “Minimum Viable Product”.

In a nutshell, the idea of an MVP is that you build a fully operating website or a mobile app with just enough pieces of functionality to satisfy early users and gather feedback for future improvement.

As opposed to the old approach to developing products, MVP enables startups to see if what they offer is what their potential users are actually ready to buy without spending much time and risking to waste money for nothing.

The image below is a perfect example of what an MVP is.

image source: http://www.expressiveproductdesign.com/

Your target audience needs a specific means of transport, but they’re not sure if they want to buy a premium product right away.

What do you do then?

In the beginning, you create the most basic version of your product. It may be really simple and straightforward, but it does the job. It allows your end users to move from point A to point B.

Your next step will be to gather the feedback on your product. Do users like it? If so, you can implement a new feature to improve the product. If not, you need to go back to the previous step and see what can be done differently.

But wait, the second example on the image is what you’ve just described. Why is it wrong then?

At first glance, it may seem that it fits the MVP model. However, there is one thing… or two actually.

For starters, how much money do you think you’ll need to get from a scooter to a car? Not only do they rely on entirely different operating principles, but are also meant for different audiences. Basically, you’ll have to create a completely new product. It doesn’t take a seasoned mechanic to understand that you can’t turn a bike into a car… well, unless you’re Tony Stark that is.

As for different audiences, a person who has been riding a bike their whole life is unlikely to suddenly switch to a car. Do you agree?

Plus, think about how you’re going to pitch your product to investors in this case. You may receive funding for a scooter, but there is no way investors will give you money on something that you haven’t built yet.

The key takeaway:

Focus on a single audience and building a product that delivers real value to users.

For example, instead of stuffing your mobile app with numerous unnecessary features that’ll take months to develop, determine the main goal of your app and focus on one or two features that will contribute to implementing this goal.

MVP vs proof of concept vs prototype

Even though proof of concept (POC), prototype and MVP are all used for validating ideas, each of them serves a slightly different purpose.

image source: https://www.codementor.io/blog/MVP-product-market-fit-2lvrzn68b2

Basically, a proof of concept is a way to check whether your idea can be applied in a real-world scenario before actually implementing it. In other words, it’s a visual demonstration of what that idea may look like allowing you to confirm your assumptions in the fastest and cheapest way possible.

For example, you have an idea for a cool app, but you’re not sure if it’s something that investors would fund. How can you know that? You create sketches of your application and bring them to investors. If they like it, you’ll receive money to create a working prototype.

A prototype is the next step after the proof of concept. In short, it’s a working simulation of your product, something that you can touch and interact with. Compared to the proof of concept, the purpose a prototype is to answer the following question: how you’re going to build what you’re going to build?

Lastly, there is MVP, which represents a fully working version of your product ready to be launched on the market. Oftentimes, MVPs are created based on successful prototypes.

If you’re not certain about the feasibility of your product, build a proof of concept first. If things go well, create a prototype of the product. Still ok? Proceed to building an MVP!

Now that you have a better understanding of what MVP is and know how it’s different to a proof of concept and a prototype, let’s get to the challenges that you may face when implementing it.

Most common MVP challenges

Failing to identify the needs of your audience

Just because you have a brilliant idea for your future web or mobile app doesn’t guarantee success. If you want people to download it, you have to make sure that they want what you’re offering. To get an overall view of your users, you need to do research before, during, and even after the development process.

To illustrate how to approach finding your target audience, let’s take the following example. Imagine you created an app that allows users to book car wash services. Consequently, your target users will be car owners who are interested in giving their cars a wash.

The next step is to find out more information on those car owners. How often people use car wash services and how much time do they spend on it? Does gender play a role in how often people wash their cars? What about location or occupation? Finding out as much about your potential users will help you to better understand and solve their problem.

To find this information, you can start by looking at potential competitors and their users. Additionally, there are a bunch of tools that will be able to help you in gathering data about your potential markets: Google Trends/Adwords, Flurry, Quantcast, and App Annie.

Hiring amateurs

We all know what happens when you entrust somebody with a task they don’t have enough qualification to complete. Best case scenario, they’ll turn out to be really creative people and somehow manage to complete most of the task. Of course, the quality of the job is out of the question. Worst case scenario, they’ll waste your time and effort, leaving you back to square one.

When it comes to business, though, the consequences of entrusting tasks to amateurs are much direr.

It’s not just the effort, money, and time that you may lose, it’s also your reputation and the trust of your users that are at stake.

That’s not to mention possible exposure of confidential information. Believe me, with the market being so saturated and full of competitors, people won’t hesitate to switch to another product even for a second if yours won’t be able to live up to their expectations.

You might be tempted to go cheap, but that will often be a grave error. Base your choice on quality, not on price; a good outsourcing team will have cost-efficiency high on their priority list.

So where do you find a skilled team?

The first place that people usually go to is Clutch. It’s a website where you can find professional developers to implement your project. Clutch has a ton of different filters such as your project size, average hourly rate, industry focus, etc. so you can choose the team that fits your requirements the most.

However, not everyone who offers outsourcing services is as experienced as they say they are.

What can you do about it?

Go through their portfolio, read feedback from their current/previous clients, download and click through the apps that they’ve built. You can also ask your friends if they know any good web development companies that they’ve already worked with.

Lastly, you can contact JetRuby Agency for implementing your project. With eight years of experience in developing both web and mobile applications for businesses of all shapes and sizes and satisfied clients from all across the globe, we have skilled teams of IT specialists capable of bringing your boldest dreams into reality.

Choosing the wrong project management methodology

In the world of software development, there are two most popular methodologies of project management: Waterfall and Agile. In the context of MVP, the difference between them boils down to how frequently you’re going to deliver your product to users. However, there are other aspects that you should consider.

Briefly, the Waterfall model consists of a sequence of strictly defined development phases: planning, design, implementation, testing, production, and support. Proceeding to the next phase is possible only if the previous one is fully completed.

For example, you can’t test your project for bugs or change the design of this or that button until the entire functionality of the app or website is implemented. So you have to define all project requirements before the development process starts.

Unless it’s a REALLY major problem, Waterfall doesn’t assume making changes on the go. On the bright side, when you have a thorough description of every piece of functionality, there is a clear understanding of what you’ll have at the end.

Nonetheless, you need to wait at least a few months until your product is finished. However, by the time that happens, someone else may already launch a similar product. What’s more, it may turn out that what you’ve developed is not exactly what users wanted and are ready to buy.

Agile, on the other hand, is the complete opposite of Waterfall. As the name of the methodology implies, it’s highly flexible and provides much more room for changing requirements. This is especially helpful when you don’t have time for preparing hundred-page-long documentation and have many ideas for your product.

With Agile, the development process is broken down into short periods called “iterations” (usually, it’s 2–4 weeks). The idea is that you can deliver a working product (i.e. an app or a piece of functionality) after each iteration.

The 2015 CHAOS report by Standish Group shows that Agile demonstrates higher success rates across projects of all sizes, including mid-size and large projects.

image source: https://www.infoq.com/articles/standish-chaos-2015

When it comes to small projects which are usually developed as MVPs, Agile is a clear winner here. Not only does it result in more successful projects, but also reduces the failure risk down to 4%.

Other than that, Agile encourages more frequent communication between the development team and the business owner. This allows both parties to avoid misunderstandings or false assumptions, making the development process more transparent and productive.

However, Agile has its downsides as well. When you know the methodology allows you to change requirements at almost any stage of development, you can exceed your budget if you’re not very careful about prioritizing your ideas. Such flexibility also makes it difficult to know for sure what the end product will look like.

If you want to learn more about advantages and disadvantages of Waterfall and Agile, you can read my article on the subject.

Choosing the wrong tech stack

Before creating an MVP, it’s very important to choose the right stack of technologies from the very outset. Why? In addition to being a huge time saver, as it also ensures a solid basis for future improvements.

Think of it as a footing of the building. The better the materials you use are and the more reliable the entire construction is, the easier and cheaper it’ll be to build up extra stories. In other words, your product will be easier to maintain and scale, if it’s originally built on properly chosen technologies.

But how do you know which programming languages or frameworks to choose, especially when new technologies appear on an annoyingly regular basis?

If you’re not a tech person, the safest and least stressful way here is to entrust this task to your team of developers. That’s, of course, if you didn’t hire amateurs.

If you’re going to build a mobile application, modern cross-platform app development frameworks such as React Native are the best cost-saving solution.

With cross-platform development, you’ll be able to save money as well as allow for early market entry with an MVP. Such frameworks also allow for reusing the code of your app so you can target several platforms at the same time. To know more about cross-platform applications, you can check this article:

As for web development, you should focus on building a solid back-end since it’ll be the footing of your website.

There are many technologies on the market and each of them has its own application scenarios. For example, if you need to build a beautiful and profitable E-commerce website, aim for Ruby on Rails. This framework is a perfect choice for creating powerful and great-looking online marketplaces and stores.

From a business viewpoint, choosing Ruby on Rails for an MVP makes absolute sense because it’s up to 40% faster in terms of development speed compared to similar technologies.

If you’re interested, here is a cool article about Ruby on Rails written by one of our experts (btw, it was retweeted by Yukihiro Matsumoto, the creator of the Ruby language, himself):

Perfectionism

Let me tell you a story about Everpix, which is one of the saddest stories about how perfectionism can ruin a great product.

Seven years ago, a guy named Pierre-Olivier Latour decided to spend his vacation in Asia. As he was traveling from one country to another, he took photos. Lots of photos. Eventually, his digital gallery got overwhelmed and it became difficult to navigate through it. It was that moment when he came up with an idea of Everpix, a mobile application that was meant to solve that problem.

Without much hesitation, Latour brought his idea to life. in 2012, Everpix was used by 55k people. However, just a year after, Latour and his team were broke.

How’s that possible?

The team became fixated on the idea of doing things perfectly. Everpix was a good app; it had great design and user experience, powerful functionality, and some very unique features. But perfectionism doesn’t come cheap. It took a year and a half for the team to develop the application.

By the time Everpix was introduced to the market, Latour and his friends had neither money, nor time to raise more capital. Even though Everpix was a cool app, it simply wasn’t able to attract the necessary number of users to ensure further growth.

MVP isn’t about making a PERFECT and versatile product for all case scenarios. It’s about making a WORKING product with a minimum set of really VALUABLE features that will allow you to enter the market before your competitors.

However, if you’re not sure about the feasibility of your idea, you can create a proof of concept first. This way you’ll see if what you’re planning to build can be applied in a real world. After that, you can proceed to creating a prototype of your idea to see how all elements of your product stick together.

P/S — If you want to learn more about building successful MVPs or looking to build one for yourself, feel free to drop us a line at questions@jetruby.com.

P/S — If you liked the article, please support it with claps and don’t forget to leave your thoughts in the comments. Cheers!

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Published in JetRuby Agency

We believe sharing knowledge pushes the industry forward and creates communication bridges. Our technical expertise includes Agritech, Healthcare, and many more.

Responses (1)

What are your thoughts?

Hi Ilya,
I love the details about how you launched your MVP! And especially the fact about identifying the needs of your audience.
I know you didn’t discuss much if any about how to do the Customer Development part, so how to identify those needs.
Becau…...

--