Move Fast and Do It Right

May 03, 2021

“Move Fast and Break Things” is something that most of us have probably heard before, but does it really make sense?

What does it mean?

When I first heard this statement I thought it made sense. You know, you make something as fast as you can, release it for your users to use and fix what’s broken in the next iteration. For something like a minimum viable product (MVP) this sounds pretty good; reach your users faster, validate your ideas and iterate to make it better.

I Couldn’t Disagree More

You have this amazing idea. You spend the time and money building this product, marketing it, building excitement for the launch date. Launch day comes and it’s in the hands of your users. They use your MVP and it just doesn’t work. It’s riddled with bugs.

What kind of impression does that leave?

What does that say about your brand?

Even if your product solves your consumer’s problem, if it’s frustrating to use, they’ll use another product that meets some of their needs because it works. Don’t forget, you are competing with other companies.

Do It Right

Let’s take a look at this through the lens of an MVP launch.

What Are You Solving?

One reason why you may be caught in the “Move Fast and Break Things” trap is because your MVP doesn’t focus on the problem you are trying to solve. Your MVP should only aim to solve this problem. I mean, that’s what “minimum” in MVP is for. It’s the least you need to accomplish for your product to be usable.

What are your solving?

Put your effort into really solving that problem rather than the “complementary features” around it. Do you really need feature “X” in your MVP for it to be a viable solution or, is it a nice to have that will compliment your core solution? If it’s just a complimentary feature, then it may not be worth putting time and effort into making right now. Use that time on the core solution.

In the past I’ve worked at companies, as an engineer, that have really stretched the idea of their MVP and what their customers really need without having any validation or data to prove it. It didn’t take long for the team to realize that it created scope creep, unhappy clients, and bad reviews. Once we did fix the bugs, we had to reach out to customers and apologize for the bugs in the hopes that they would give us a second chance. We could’ve avoided all this if we focused on the core problem and made sure things worked the way they were supposed to.

Test It

This may seem obvious, but you need to test what you’ve built. Writing unit tests and using the app are simple, yet fantastic ways to test your product.

You should aim to write unit tests for each feature you build. A good unit test should cover not only each criteria for success, but failure as well. Out in the hands of users, many crashes or failures that weren’t accounted for can show up. We can’t expect users to follow an exact “happy path” when using our products. Writing tests lets us validate that the code we’ve written works and helps us confidently ship our code. Additionally, as you iterate, you ensure that new features do not break existing ones which saves time in the long run. Unit tests let us ship confidently and ensure our product works.

Manually test it. As a team, you can use alpha and beta builds to test what you make in real life scenarios. Try using your own product and see if it works. Realistically, if you don’t like it, your users won’t. Your app is crashing? Well, it’s probably crashing for your users too. This is the closest we can get to simulating how the app will behave when your users use the app. It’s a fantastic way to make sure things work the way they were intended to.

Lack of Experience on the Team

We need to be honest with ourselves and reflect over our capabilities as a team. A lack of experience on the team can hurt the success of your product. I’m not trying to say, “Hey don’t hire junior engineers!”, but more so looking at the team as a whole and understanding that there may not be a technical expert present that can guide the team.

Expertise

A technical expert can guide the team, give input on what is feasible and ultimately speed up the development process. Technical experts can formulate the best approach to solving problems within their domain. They can help guide others using proper architecture and set development standards that will increase the stability and performance of your product. Not only do you benefit from a product perspective, but the team as a whole grows from this experience. Instead of having one technical expert, after time spent learning from the expert, team members will start to progress and may even become experts in certain areas.

Get Help

We can help your business move fast and do it right. If you’re looking to launch a new product or improve your existing tech, reach out to us at www.applit.io. Our team has years of experience in mobile development and has worked on apps used by millions of people around the world. Chances are, you’ve probably used something one of us has made.

Let's work together

Find out how we can help you grow.