4 Things To Remember When Working on a Device Companion App

Michał Pisarski
SwingDev Insights
Published in
7 min readApr 9, 2020


Stress, constant changes, synchronizing with several other teams, getting numerous prototypes — the process of creating an app that connects with a device is a complicated task. Read our advice, and you’ll make it to the finish line without ripping your hair out.

We’re a software development company. Usually, we create software that connects to the cloud, makes some magic happen in the background, and voila. After countless projects, it seems pretty straightforward. However, if you add one more thing to the equation, things change drastically.

In recent months our team has been working on an official app for the Robn smart harness. It’s a highly innovative device for runners, with hands-free smart assistant support, a built-in walkie-talkie, a music player, and an activity tracker. It sounds a bit unusual, and it is, but that’s why we were interested in the project in the first place.

It turned out to be one of our biggest challenges to date. Along the way, we’ve learned some lessons that will be useful for every developer, designer and project manager who works on a similar project. So, why not support our community and pass this knowledge on?

1. You Don’t Need to Know Everything

In projects like Robn, you roll up your sleeves long before the device hits the shelves. When you’re writing the first lines of code, another team thousands of miles away is designing the hardware. Things change drastically every week, so you often wander in the dark.

Feelings of uncertainty will surely find you more than once during the project lifecycle. A device’s feature that you were most excited about may even end up being cut out in the last phase of the development. Of course, similar stories also apply to “regular” apps, but in this case, a lot of things depend on factors outside of your control. There’s one thing that you need to remember: don’t break down.

It’s not just the software team, people who are responsible for the hardware are going through the same thing. Heck, even the CEO of the client company may become disappointed if the results of initial testing won’t align with his initial vision.

Feelings of uncertainty will surely find you more than once during the project lifecycle.

Robn had several prototypes. Features appeared and disappeared, and a couple of times, we weren’t even sure what the final app would be doing. It wasn’t even called Robn at first, but we still call it by the secret codename. Thankfully, it didn’t take us long to find out that we don’t need to know everything to move forward. The app’s features and priorities became clear over time. Experimenting was a natural part of the process, and we learned to use it to our advantage.

2. Join the Creative Side

When you first hear the term “smart harness”, you might not yet be convinced that it will instantly become your most desirable fitness product. However, it takes about 10 seconds to become more convinced after you visit the website, and the advantages become clear pretty quickly.

When it comes to working on such a product, it’s a completely different story. We didn’t even have a prototype at first. The Robn team was considering several different features. Although they knew why Robn would make thousands of workouts much better, they were still deciding on the main selling points to focus on. Making a barebones device can make it less exciting, but overloading it with features softens the message.

We were nervous, but we quickly realized that the constant changes, and the fact that we don’t get all the information on a silver platter, are not only a difficulty, but also an opportunity.

We started to propose solutions ourselves. Not only software development solutions, but things related to the product itself. Some of them actually got accepted, and you can find them in Robn now. Thanks to this, the work was much more pleasant! We have a feeling that we contributed and know where we are going, and our satisfaction from the finished product is beyond great!

3. You Can Try to Solve Every Problem

At some stages of the project, there was difficulty communicating with the third-party hardware team that was working on other elements of Robn. The situation was serious to the point where we were wondering if we will be able to complete our part of the work. We needed some firmware elements that were supposed to be handled by the other team, but we didn’t get them.

We could’ve said that it isn’t our problem. After all, we did our job. Instead though, we went beyond our scope and took care of these elements. We just wanted this project to be a success, not even as programmers, as people. We truly wanted success for the internal Robn team. We enjoyed working with them and wanted to do our part. We had to learn a lot of new things, we worked overtime, but ultimately, we made it to the release day.

We just wanted this project to be a success, not even as programmers, as people

So ok, cool, we’re nice guys, but what was in it for us? Well, we didn’t take on this task for these next reasons, but it was worth it. First of all, we were forced to get a ton of experience in a short time. We’re sure that we’ll utilize it in our future projects and do even better.

Secondly, we will utilize more of it in this project 😉 Although the app is released, and you can buy Robn, the client wants the app to get even better. We have proven our value and secured long-term cooperation. Bear in mind, if we hadn’t gone above and beyond, the software side of Robn might never have come into being by the release date. This is why it is important to treat your clients as partners and be part of their success.

4. UX and App Design Are a Crucial Part of the Experience

When we first discussed the project, we were tempted to design the app using all of the most fashionable trends. An app connected to a one-of-a-kind fitness device? Boy, it would be our time to shine! Time to prepare something that will become an instant Dribbble hit and charm fellow designers with fancy animations, illustrations, and shapes. Except not. Not at all.

Downloading the app will probably be the first thing that users do after buying Robn. Maybe even before actually trying it on

The most important thing for us was actually to calm down a little and look at the app with the product in mind. When designing something like this, you have to focus on nuts-and-bolts and convey the spirit of the product.

After all, downloading the app will probably be the first thing that users do after buying Robn. Maybe even before actually trying it on. It needs to be simple, intuitive, and cohesive with the device.

Always think about how people will use the app. In our cases, some of the things to consider were:

  • Most of the time, when using the app, people will have the harness on. They will be on the move, or just after their workout.
  • Robn was designed as a display-free, headphone-free experience, created for people who want to minimize their time spent with screens.
  • Nevertheless, it’s always tempting to take a glance and see the battery level or activity stats. It was our job to make this glance last as short as possible.

Therefore, we put all the vital information on the main screen of the app. We used large elements to make them visible on the go and to make it easy to hit the icon even with a sweaty finger. The design isn’t complicated, nor very subtle, but neither is Robn. It’s a cool, useful gadget, that deserves a similar app.

Think straight!

When you already know it, it seems obvious. It’s not rocket science. But even smart harness science can cause you trouble when you work under pressure and don’t think straight. If you’re handling a project like this, come back to this article from time to time. It will help you focus on what’s important.

We make cool projects here at SwingDev. If you need a software development company, check out our website!



Michał Pisarski
SwingDev Insights

Technology lover. Head of Marketing at SwingDev. YouTube creator. Former managing editor of the largest Polish tech website.