Building a product with my friends: here’s what I learnt

@TheLifeOfOpeyimika
8 min readOct 26, 2023

--

I got my first phone after I had written POST-UTME* and gotten admission to the University of Ibadan to study medicine and surgery. I was 16 with a curious mind and a diverse range of interests. In addition to this, the long wait to have a phone of my own empowered me with a feeling of freedom and the gusto to discover the vastness of the internet. These interests of mine have wandered over time, but I have always found my way back to the builder.

From listening to the HowIBuiltThis podcast while washing clothes, watching the Silicon Valley series after classes, watching Shola Akinlade talk about how he just wants to build stuff, to clapping on Medium for Opemipo’s wuruwuru updates, my deep sense of appreciation for the builder surfaces and nudges my personal sense of the future.

Five years after discovering the builder on the internet, I‘ve taken my first few steps as one. This is the story of how it happened.

Reading Room to Oyo HackFest: Where dreams Grow wings

It may seem like the Oyo HackFest is where it began, but it had started way before then. It started in the reading room, Alexander Brown Hall, where I was thinking about what to do next—internships, jobs, freelancing, or open source—after months of learning full-stack technologies and languages. Then I had the idea to build a dev-i-wanna-be website, as it would solve a crucial need for me: guidance and mentoring. Simply put, all I would need to put in as a user were the career path I was coming from, what I had learned so far, and my career goal. So I would get a list of suggestions—developers that have gone from my background to experience success that looks like my career goal. The idea, as it sounded, was surprisingly technically difficult.

Not much was done on it until Mujeeb mentioned that we could go to a hackathon in Oyo town. It was then that I talked to him about the idea that’d been playing in my head. Since our paths have been super similar and we were currently at that deciding point, the idea made sense to him.

We boarded a bus to Oyo town, leaving on a weekday. We were to stay in Oyo town for 4 days. Our third team member, Abdulquddus, joined us there later the same day we arrived. It was four days and nights of working our asses off—coding, making presentations, etc.—trying to build a minimum viable product (MVP).

Before I forget, you have not met my guys. Mujeeb and Abdulquddus are my classmates. Mujeeb is closer. We have had each other to motivate, keep each other in check, and geek out about code. We took the same courses, built similar projects, and aspired together toward our aim of becoming full-stack developers. Quddus is a machine learning (ML) and artificial intelligence (AI) engineer. He’s an inspiration to us because he has significant work experience. He’s also been in the tech game before Mujeeb and I. We three came together and formed Team Vision, which later became Portals.

l-r: me, quddus and mujeeb

The team was stacked. What could go wrong? Not much. We built a low-code MVP using Zapier, connecting a Google Form on our home page to ChatGPT. With this, we could send form inputs in the form of a readable and understandable prompt to ChatGPT and get a response in the form of a listicle-type roadmap.

the product we pitched at #oyohackfest

Our participation at HackFest ended unceremoniously. There were no winners. The teams were required to come back to the tech hub to build their products over months, and we couldn’t afford to do that at the time. However, I enjoyed building the product there for 4 days. It was an exposure to the life of a builder who can spend his day(s) writing code, communicating, and leading a team by example.

Navigating the maze: lessons from the early days

We got back to ABH on Saturday and met up the next week to talk about how we wanted to build the product. We talked about why we would work on the product, how we would learn how to build a startup, and the time and skills needed.

From then on, we kind of fell into a routine: we meet on Sunday, assign tasks, work on them through the week, and then discuss the next Sunday. One of the things I am proud of is how our meetings started with each person talking about how their week went without any talk about the product we are building. It gave every other person the chance to relate to what the person was doing, and sometimes we were able to recommend and share resources that helped them. It was also a chance for me to show genuine curiosity about what they mentioned the previous week. Has X changed? Have you heard back from customer Y? Was your application for the Z hackathon accepted?

I assigned tasks each week on Notion following a conversation on how each of us would prefer to be led—self-ownership vs. peer leadership. Each person was to update the tables and boards. However, I was one who had previous experience using Notion, so it wasn’t easy for everyone to update the boards. Eventually, after a few videos, it became a piece of cake.

We wasted time in the early days of building. First, we spent too much time looking for product designers. As we’d later discover, a bias for action was what we needed. I had to work out the product design by wireframing it using Balsamiq, getting inspiration using Lindo AI, finding suitable colors using RealtimeColors, and using my eye to gauge the rest. I also got valuable feedback from Mujeeb and Quddus though.

wireframes using balsamiq

We also spent a lot of time researching tools and concepts. For example, we researched whether to use Bubble to build for a week. This task shouldn’t have taken more than an hour or two. In the early stages, I sucked at estimating the time needed to complete tasks and also didn’t convey the urgency and priority of tasks. Some tasks could be done next week, while some needed to be done now. We were 2–3 weeks into building when this dawned on me.

As soon as it did, I changed our Notion board from one where I assigned tasks on Sundays to one where I dropped all the tasks I could imagine we needed to work on and then asked everyone to pick as many tasks as possible until our next meeting. This was the better approach because it meant we were tackling tasks in a directed fashion (favouring high- and medium-priority tasks).

old Notion board
new Notion Board

Imagine this: if someone gave Portals 2 hours or picked 2 tasks over the week, what was I to do? I figured since I wasn’t shelling out any cash and equity wasn’t even on the table, I couldn’t exactly be throwing demands for extra attention to the product. What was the incentive? But I’ve had a reality check. A product rises or falls based on the level of quality we expect from ourselves. Time, money, or not, we had to set the bar high and aim for excellence.

Perfection: the builder’s never-ending quest

We had set a month’s deadline to build the product (August 16, 2023) and release it. Truth be told, by that date, we were “done”. Anything that wasn’t already working was of low priority. But with any creation, the creator doesn’t know how the world will react to their baby. They keep molding it until it is perfect. Impossible, right? We later learned the lesson. We realized that we were hiding behind a never-ending deadline postponement.

An exposé in the form of a video was needed to present the portals. We needed two videos: one on the homepage to convey why we are sharing Portals with the world, and the second to share on social media for people to see a demo of the website, how to use it, and most importantly, how to share feedback with us. These videos made me realize that I have come a long way since the days when I stuttered so badly and was scared of introducing myself at gatherings.

I figured out the videos with Loom and Mujeeb’s Macbook. I learned some video editing while at it.

Portals: Opening doors to New beginnings

We finally launched. I must celebrate Quddus here. He has an affinity for publicity and has no problem sharing his work publicly. It’s the opposite for Mujeeb and me. He pushed us to share. It wasn’t bad, and actually, I got pleasant feedback about my voice and the videos after all.

launch tweet

Since we launched, a friend, Williams Owoeye, has messaged me about the possibility of our student hall covering the product so more people can try it out and give us the feedback we desire. I was hesitant, but Quddus swooped in and convinced us to give it a try. Here’s the published article if you are interested.

What launching has done for us is give us an identity as builders—people who build and ship work. I am glad I did this. I know I want to build products that people use, love, and share with their friends. That’s a win.

Here’s Portals. It’s such an interesting name. We think of it as a product that opens up multiple portals for you. You step into one portal and come out on the other side as the person you hope to see when you look in the mirror. I’ve gained so much from it that it feels like I’ve ventured through a portal, emerging on the other side as a transformed version of myself.

homepage

I’m glad this documents the story so far and contributes to the wealth of knowledge that guided us and kept us inspired during the arduous, lonely, and confusing path of building a product from scratch. I have to thank my inspirations over my years on the internet: Mogwai™, Timi Ajiboye, Opemipo among a sea of influences. Thank you.

To everyone who got to the end of this article, thank you. You can clap to your heart’s content, comment, and share with your friends.

The story has just begun. It’s day 1 of an ever-evolving tale.

Thanks to Chinonyelum, David, Mujeeb, and Williams for reading drafts of this.

*POST-UTME: a University qualifying examination that determines if you stay home for one more year and get to study the course of your choice or not.

--

--

@TheLifeOfOpeyimika

Actively documenting the experiences that shape the life of Opeyimika. Software Engineer. Medical Student.