Understanding the Problem

One of the biggest challenges you face when building software is to know what features to include. Using tools like Jobs-to-be-done Theory and Design Sprints, we help you determine the features you need to meet this need. We learn everything we can about what you’re trying to achieve. We explore what people are doing when they turn to your app. We want to know what they are feeling, what their motivations are, and why they’ve decided to use your app. We want to know so much about the problem that we could make a documentary about it.

Make it Real

With a clear understanding of the problem and of what the first steps to solving it are, we begin development. Our goal is to put something real into your hands as soon as possible. The only way to truly understand if a solution is going to work for you is to use it.

Watercolor painting of roller skates, skateboard, scooter, car, and plane
An example of iteration enhancing the solution

A Viable Solution

We organize our work into iterations lasting about two weeks. During the two weeks, we write HTML, CSS, Javascript, and Ruby to bring a minimal set of features to life. We refer to this as the minimal viable product (MVP). This is the smallest, most simply implemented set of features that meets your need. We use sketches to design the features and begin coding as soon as we’re satisfied with the logic of the app.

Reliable Code

We avoid building too much or building the wrong thing by keeping the time between deciding to include a feature and using it as short as possible. We make sure our code works by writing tests describing how we expect the app to work first and then writing only enough code to satisfy the tests. Having a robust test suite gives you confidence that your app will work reliably.

roller skates being worked on by little construction workers

Develop in Real-time

As soon as there’s something for you to see, normally within the first week, we provide you with a link where you can see the site live. We call this a staging site. You can begin playing with it. It won’t be complete, but you immediately see the app taking shape. With each addition we make, our work is automatically deployed to the staging site.This means you will always have access to the latest. There’s no waiting for us to invite you in for a review. You experience the app comes to life in real-time.

roller skates being inspected with a magifying glass

Learn and Prioritize

At the end of the two weeks we pause and review what we’ve done so far. We walk you through the features that we’ve built and gather your feedback. Together, we work through the feedback and prioritize the next round of work. Each iteration adds to the app, giving it more polish. We continue this process until you decide the project is finished for now.