003: What I learned building a startup for 2 years.
The 7 most crucial lessons I learned.
What’s up fam, hope you’ve all had a great March. The month is almost over, which means it’s time to drop another newsletter for you all.
It’s always around this time of the year that my motivation starts to level out. The novelty of the new year resolutions wears off and all you’re left with is your discipline and willpower to do the things you need to do even if you don’t feel like it. This is when the gyms start getting a bit less crowded, and our friends stop talking as much about their goals. Some days I don’t want to do anything at all. But I’ve started to understand that these moments are where the real test of your character begins. It’s not about how motivated you can keep yourself. It’s about how consistent you can be even when you aren’t in the mood.
From 2019-2021, I built a startup with a good friend of mine. Our mission was to simplify online community management. We went through Cornell University’s startup accelerator program, eLab. We also participated in Y Combinator’s Startup School, and eventually landed an interview with them. I learned tons in those 2 years… much more than I can account for in writing. In this edition of the newsletter, I will share my biggest takeaways from the experience.
This material is adapted from an article I wrote in 2021 on Medium. It was my most popular piece which ended up featured on a publication. So I want to share it with you all here.
1. Test your assumptions ASAP.
If you’re like me and my co-founder, new ideas are going to pop into your head every week. But if you are going to build a successful product, you need to test your ideas before committing to them — and you need to do this ASAP. We initially had the idea of building a matching algorithm for coffee chats. While it sounded like the greatest idea in our heads, we realized that it wasn’t something that most people needed when we actually tested it out on a community. We were talking about the idea for about 4 months. However, we could have learned our lesson a lot quicker if we formally tested our assumptions beforehand.
Here are two methods I’ve used to test assumptions quickly:
Non-tech or low-tech solutions. Use as little code as possible. In the best case, no code at all. Instead of coding a full matching algorithm, we could collect a list of people and match them manually. This would be a bit of painful manual labor, but it can save weeks or even months of time.
Make a landing page. Act as if you’ve already built the features you’ve imagined and advertise it on a small landing page. See if people get interested when you share it with them. If they don’t, you have some rethinking to do. When we finally created our landing page in the beginning of 2021, we got so much more feedback than we expected to.
Form a hypothesis for how you expect these ideas to perform before you test them. If they don’t perform to your hypothesis, evaluate why that might have happened. Don’t be overly optimistic; if a test doesn’t confirm the hypothesis, it’s likely because your assumption was wrong.
2. Identify with the problem you’re solving, not your solution.
We initially fell into the trap of building a solution and then looking for customers who wanted the solution. This made user acquisition very difficult. It also made it hard to test our assumptions. It’s tempting as a coder and designer to start building ASAP, but you’ll have to resist that temptation. If you allow yourself the time to deeply understand the problem that you are solving and the people experiencing it, it will be much easier for you to gain users and test your assumptions.
Your idea is something that is likely going to change. However, the problem that you’re solving should remain the same. For us, we were trying to solve the problem of inefficient community building. Many community managers have this problem; however, our first ideas weren’t the best fit to solve that problem.
You can validate a problem much quicker than you can validate a solution.
3. Listen to customers… frequently.
User feedback is the core of user-centered design. Customer feedback is the core of business design. As a founder, you need to be the expert on the problem that you are solving. This is what makes investors give you money, and this is what makes sales simpler. Set a goal for how many customers you want to talk to every week and hold yourself accountable for reaching that goal. It doesn’t need to be a big number, but try to at least talk to one. This will keep you grounded in the problem that you’re solving, and you’ll be able to channel your customer more when you make important business or product decisions.
As entrepreneurs, we love to talk about our product. But in your customer interviews, the customer should do most of the talking. Your job is to shut up and listen.
Here are some questions I love to ask potential customers:
What is your biggest struggle with [insert problem area here]?
Why is this a struggle?
What workarounds have you tried?
Is solving this problem important to you? Why?
How much is this problem costing you? (If it doesn’t cost any money, how much time?)
4. Don’t hire until you absolutely need to.
Hiring and managing a team is a whole beast of its own. Unfortunately, many companies try to hire too early and end up failing because of it. There are a couple reasons why you don’t want to hire somebody until it’s absolutely necessary:
It’s expensive. Every worker that you hire is money coming out of your business and less runway that you have before you need to start making a profit or raising money.
Too many cooks in the kitchen. It’s easier to move quickly with a smaller team. As the team gets bigger, decisions are going to become harder to make because everyone wants a say in them. This can lead to slower product releases and in worse cases, a loss of direction.
It can get distracting. We hired interns in the summer of 2019. There would be times where there wasn’t much work for them to do, so I spent a chunk of my time looking for things that they could do. I also did a bit of mentoring which is something that’s very fulfilling for me, but is unnecessary for an early stage startup.
5. Don’t wait until you feel “ready.”
Founding a startup is nerve wracking. You will be put in positions where you have to talk to big shot investors, CEO’s, and other important people. It’s tempting to push these things off until you feel ready, but it’s better to mess up quickly and learn from your mistakes. Plus, it definitely won’t be the last time you’re put in a stressful situation if you’re a founder. Better to prepare early.
6. Prioritize, prioritize, prioritize.
A startup is one of the most unstructured environments you will find yourself in. There will always be something new to work on, and this can be very overwhelming at first. You have to find direction by only working on the things that will bring the most value to your business at that moment. That is most likely going to be something that is making you money, getting you users, or helping you understand your customers more deeply. Anything else can be put on the back burner.
I like to keep a table of tasks with three key elements:
the task name
the value of the task for the business
the difficulty of the tasks
I’ll work on tasks that are high value and easy to do first, and I’ll do tasks that are low value and hard to do last. Hint: you rarely end up doing the latter.
7. Your relationship with your co-founder is paramount.
There are many differences between building your own startup versus working at an established company. The most important one is the size of the team. If one person mentally checks out in a team of two, the entire company suffers. Your relationship with your co-founder is like a marriage. Effective communication and conflict management are going to be the difference between your company succeeding and failing.
Our company didn’t die because our idea was bad. It didn’t die because we ran out of funding. It died because we couldn’t continue to work due to a build up of stress and instability from the workload. When I think about how we could have prevented it, effective communication is the best answer. The workload of a startup is no joke. During the last few months, we were both swamped with work. My co-founder was working full-time on the startup and I was still in school. But if we communicated more effectively, I would have known how deeply the workload was affecting him, and I could have taken some work off of his hands. Moral of the story: be transparent with your co-founder. The success of your company depends on it.
Supporter shoutout: Rami Abdou.
I couldn’t have gone through this mind-opening experience without the partnership and guidance of my co-founder, Rami. He recruited me to help build this startup back in 2019. We formed a dynamic duo of engineering and design.
A fun fact about Rami is that he turned down a full-time offer from Microsoft to work on our startup full-time after graduating from Cornell in 2020. This brave act demonstrated to me that his mission and impact drove him much more than a nice paycheck could.
In 2022, he became an Engineering Lead for a Series A startup called Overflow, a platform for donating non-cash assets like stock and crypto to nonprofits, where he helped them scale to $1M+ in ARR.
Rami is now the Head of Engineering at ColorStack. He joined forces with Jehron (from Newsletter #001), and they’re currently focused on building the most engaging community experience for their 3000+ members. Long-term, Rami will be building out an open-source software ecosystem that any ColorStack student can learn from and contribute to.
I see very big things in the future for my brother. Give him a follow on Twitter. He talks about software engineering and startups.
My month in review.
I’ve been lifting weights pretty regularly since 2019. I’ve always found it pretty tedious to keep track of how much weight I’m lifting. Recently, I downloaded an app that charged $29.99 per year to track my workouts. It made things simpler than they used to be. But the creator in me knew I could design an even better version of the app. So this month I designed a fitness app. I wanted something where it was also easy to organize and modify my workouts.
This app targets fitness enthusiasts who like to make sure they are improving in their workouts. It allows them to add their workout routines and track their weight and reps in each session. Part of the idea not included in the mocks above is that users will also be able to browse new workout routines to add to or modify their existing routines.
Coming up with these new app ideas every month has been helping me refine my design process. 10/10 recommend to anyone getting into digital product design. I’ve also been able to refine my visual design skills through these concepts. Later this year I’ll be talking about my design process in detail.
This month I’ve been reading “The Book of Not Knowing” by Peter Ralston. It’s a very eye opening book about the nature of self, mind, and consciousness. It’s also a pretty lengthy book (600 pages). It’s definitely a lot to take in. I’ll share the insights I gain with you all when I finish.
Thanks for reading my newsletter! Let me know what you think. Leave a comment and share with whomever you think can benefit.





Sounds like you learned a lot from your first startup! Your next startup is going to be even better!