Creating a mobile app as a side project — UX and Dev collaboration

What we’ve learned after a year of working together on a side project — a mobile app created by a product manager / designer and a developer. Why side projects are a great opportunity to learn new things and get better at what you do, and how collaborations helps you be more invested and motivated.

Katrin Zotchev
UX Collective

--

This post was written together with Guy Carmeli— an Android developer, a friend and a co-worker. We’re both working for Wix (specifically — the Wix mobile app), but are on 2 different teams.
Over the past year we’ve been working on a side project called “Clippit” — an Android app that allows you to save & organise highlights from all the books you read, in one place.

The Idea

We both try to read as much as we can. We love highlighting specific parts of text so we can re-read it later and discuss with friends. The challenge was, that while these types of features are available when you read a digital copy, we couldn’t find an efficient way to save useful bits of information from physical books, in one place. We reviewed other products that allow similar functionality but eventually decided to create something of our own.

Clippit app

Working together

We found out we had pretty much the same idea, by accident, over lunch. After a short discussion we realised that having a well designed, working app would be much better than having a working, but not so user friendly app, or just a pretty mockup (which is what we could achieve on our own) and that it also can be a great opportunity to learn from each other. That’s when we decided to join forces.

Committing to a personal project can be hard because you’re knowingly “giving up” an unknown chunk of your time to something you’re not paid for and there is no actual deadline. But collaborating with a friend is motivating as this creates an accountability group which drives us to achieve our goals together. Working together means that you always have someone to push you forward and you both inspire each other with new ideas.

The process that worked for us was: we laid out our goals for the project, decided on a reasonable first version and set up a Trello board to manage the tasks. Guy started working on a technical POC while I worked on the design for initial user flows. We met on a regular basis to discuss our progress, get each other’s feedback and plan ahead.

A Trello board showing cards in a workflow
Our Trello board

Besides working on the project on our free time, Guy got some dedicated time to work on it while he was at the office — a practice some high-tech companies have to encourage personal development.

It was (and still is) a valuable experience for us and we want to share some of the insights we got from it:

💡 General insights

“All life is an experiment. The more experiments you make the better.” ― Ralph Waldo Emerson

Working on a side project gives you an opportunity to collaborate with people you don’t usually work with and build something completely new and different from what you do at your daily job.

Unless you’re a senior manager, your day-to-day experience is usually limited to a specific area or a feature, and that’s your domain of expertise. Owning a project end to end makes you aware of some aspects of the process you aren’t responsible for as a UX designer or a developer. You get to think about the product as a whole — that means you also have to create your product’s marketing assets, write your own content and be your own QA.

You also get to be independent and decide about priority and scope of phases — what should be done first and what can wait, whether or not you should compromise on an experience of a certain feature or is it important enough to be finalised. And because you don’t have any dependencies on other teams you’re free to move at your own pace.

Having a side project can be a good conversation starter between you and your peers. It also gives good “internal PR” — you are perceived as someone who works hard to learn new things and improve. That’s why it’s important to choose a project that will help you practise marketable skills and grow as a professional.

A sketchbook with rough wireframes laying on a desk
Our app’s initial mockups

👩🏻‍🎨 UX & Design insights (Katrin)

  1. Use an unfamiliar design library and learn the patterns and usage of a different OS than the one you’re used to.
    I have an iPhone since I can remember. Besides intentionally switching to an Android device for a few months when I first started to design for mobile, I didn’t have too much experience with the operating system, it’s patterns and advantages. I remember seeing the Google IO app with the new material design (2) and thought it looked playful and colourful, yet clear and professional. It inspired me to look further into the library and this is how I came up with the visual language for our app.
  2. An opportunity to get better at your craft.
    As a product designer who switched to product management, most of my day-to-day work consists of research, planning and prioritisation. This side project gave me a reason to get back to the craft and produce pixel perfect screens. I also got to experiment with different colors and fonts than what we use at work.
  3. Designing flows you don’t usually get to design.
    Being really focused on the product I work on daily, it’s been a while since I got to design a login flow, a user profile or other flows that aren’t directly related to the product I’m working on. Because of this project I got to research and create something different.
  4. Not another pretty mockup
    Collaborating with a developer is awesome because you actually see your designs come to life. If you, like me, are not a coder, everything you design after work hours ends up being a Dribbble shot or an animated mockup. This time it turned into a working app, which is exciting.

Beside all that, I also got to learn a few more things about the technology Guy used, it’s advantages and limitations.

Colourful screenshots of the Clippit mobile app
Clippit’s marketing materials

👨🏻‍💻 Dev Insights (Guy)

  1. Experimenting with new features and components.
    Android development has evolved a lot during the last couple of years with lots of exciting features and components I wanted to experiment with. While working on Clippit, I got to use a lot of those features. This allowed me to keep up with industry standards, and also gave me insights I was happy to share with my colleagues.
    Up until now, I’ve mostly worked on existing projects where the architectural decisions have already been made. This project was my chance to research and make important decisions early on like using MVI architecture, a reactive programming pattern promoting unidirectional data flow.
  2. Experiencing a different type of work.
    In my day-to-day job, I mostly work on infrastructure related tasks. This means I don’t get to work with product managers or designers to implement product flows.
    Seeing the development process through the eyes of a product manager / designer is something I really missed. Working closely with Katrin helped me make more conscience decisions when prioritising tasks in my day-to-day job, as I’m now able to relate more to her needs and priorities.
  3. Having an accountability group.
    I’ve tried working on personal projects more than a few times over the past few years. Each time I had the same goals — personal growth and learning new tools and technologies to keep up with the industry.
    Each time I started a new project I was highly motivated and enthusiastic. Things evolved nicely and the tasks I worked on were interesting and I had a great sense of fulfilment. Then came the boring, mundane tasks — not every task is interesting, some are out right boring and tedious. Simple tasks took more time to complete and I lost the sense of enjoyment working on the project. Eventually that led me to abandoning these projects. Collaborating with a friend really helped, as working as a team created an accountability group, which motivated me to keep working on the project because I did not want to let my teammate down. In other words, being committed to another person kept me motivated to work on the project and in the end — to achieve the goals I set for myself.

Thanks for reading!

--

--