Stop Looking for a Technical Cofounder
Become the technical cofounder yourself
The Next Great Idea
I’m often approached by aspiring entrepreneurs who believe they have the world’s next great idea. They’re keen to get it off the ground and turn it into more than just a concept.
Usually, we start by talking about the problem they’re hoping to solve. Perhaps I share the advice I commonly give first-time founders: that most of their assumptions will be wrong, so it’s key to iterate quickly and to do things that don’t scale. Eventually, the conversation turns to something like this:
Entrepreneur: ...and that’s why my startup will be so revolutionary.
Me: Great, how far have you gotten?
Entrepreneur: I put together a wireframe. I’ve hired some contractors to build a minimum viable product, but paying them has been expensive. So that’s why I think I need to raise money.
Me: But you don’t want to keep relying on third-party contractors, do you? You want the person building this to be as invested as you are. Software startups need software engineers on the founding team.
Entrepreneur: Hmm, you’re right. I’ve been thinking one answer might be to find a technical cofounder. How do I do that?
This is typically when I have to break the news: There are far more people with great ideas who are looking for technical cofounders than there are technical cofounders looking for people with ideas. I know very few non-technical folks who have successfully found an engineer willing to be their partner. Most businesses waiting for technical cofounders will either never get off the ground or will fail because of insufficient internal capacity to build, learn, and iterate.
But it’s not all bad news. Generally, at this point, I share some advice that I’ve found helpful and that has its roots in an attitude that is integral for success as a founder. I tell these eager, early-stage founders to stop looking for a technical cofounder—and redirect that energy to try and become the technical cofounder themselves.
Too Late to Learn?
In 2010, I was a second-year law student with no formal technical education, but I had a few startup ideas of my own. Like many in my generation, I’d just watched The Social Network and wanted to change the world by starting my own company.
One idea was a community forum for law students to help answer each other’s questions (think StackOverflow for legal concepts). Another was a website recommendation tool (“If you liked reading that, you might enjoy this”). The only problem was that I had no idea how to build any of it. So I tried to find a technical partner, one who’d learned the things I’d never spent time on, the things I didn’t believe I could learn because it was too late. I attended meetups, reached out to friends of friends, posted on forums… all to no avail.
Major credit goes to my brother, who told me that it wasn’t too late to learn how to program. In fact, it’s never too late to learn anything. We went to a bookstore and found an introduction to the programming language C#. That’s where my journey of entrepreneurship truly began.
For that law school site idea, I needed to make a server that hosted some data, so I put my C# knowledge to use. The data needed to go somewhere, so I read about HTML and Javascript. I used these skills to make a website (years before no-code and low-code options existed). The changes needed to be stored and tracked, so I bought some books about databases. Necessity is the mother of invention—or, in my case, education.
My ideas never made it past simple prototypes, as I wasn’t passionate enough about either to continue developing them. Yet I gained sufficient experience to land a software engineering job (despite graduating from law school, passing the bar, and still struggling to get a legal job). Over the course of several years, I built backend systems at companies like Aviary and Adobe that served millions of users daily. I became the software engineer I’d been looking for. Eventually, my colleague Mike Mignano and I left our jobs at Adobe to start the podcasting platform Anchor, where I served as the technical half of the leadership team.
Anchor also began as a big idea: We wanted to make it simple for anyone to create, edit, and share podcasts, at a time when this process was still very costly and limited to a select few. The idea needed real technical execution to get off the ground. We—Mike, myself, and our early team—knew little about audio processing; we learned on the job. We dreamed of offering live recording and video generation and transcription services; we learned on the job. We’d never built fast and highly reliable systems that served content to users around the world every second of every day; we learned on the job.
Your Reason to Learn
The aspiring founder wakes up one morning with their dream idea and longs to build it, but— having no formal technical education—is stymied. They believe they can’t do it themselves. How would they even start? Even if they did start, who would guide them? How would they find the time to both learn and build, in addition to whatever else the job demanded? This conundrum occurs in many fields—sales, marketing, growth—but especially in programming.
Yet there is no greater motivation to learn something new than an ambitious, exciting goal you hope to achieve. To the founders who have that big idea, I say: Congratulations. You’ve done the hardest part. You’ve found a reason to learn.
A Good Time to Learn…
Back to that conversation with the aspiring entrepreneur:
Me: You want the person building this to be as invested as you are. Software startups need software engineers on the founding team.
Entrepreneur: Hmm, you’re right. I’ve been thinking one answer might be to find a technical cofounder. How do I do that?
Me: Stop looking for a technical cofounder. You should be the technical cofounder.
Fourteen years ago, when I began programming, I had to rely on physical books bought at bookstores that have since gone out of business, or on coffee-stained primers that I took out from the library. You, on the other hand, live in the golden age of artificial intelligence. Every answer to any technical question you have sits at your fingertips—not only questions like “How can I do X or Y?,” but even higher-level ones, like “How do I get started?”
“What technology do I need to understand in order to build and launch [insert idea]?”
Oh, relational databases, you say?
“What is a relational database?”
Ah, here’s a good YouTube video explaining it in detail.
“Help me design my database for my idea.”
And so on…
I believe anyone can learn any topic, and that it’s never too late to do so. What matters is that there is a need to learn. I believe this because most of what I’ve learned in my life has required no formal training or specialized degrees, and has been driven entirely by my aspirations. I’ve had access to amazing mentors and resources, but that was a decade ago, and they represent a mere fraction of the mentors and resources available to you today. If I was able to do it, so can you.
And if you believe you can’t, ask yourself: What is it that’s scary about the idea? Is it the effort, the time commitment, the possibility of failure? Because if it’s any of those things, entrepreneurship may be too daunting a journey for you. You don’t need to be technical to pour your heart and soul into a startup, work around the clock, and make a lot of mistakes. You simply need to be open to learning.
The Importance of a Cofounder
While I advise you to stop looking for a technical cofounder and to become one yourself, I cannot stress enough how valuable I believe it is to have a cofounder of some kind working alongside you.
I regularly meet solo founders who wish they hadn’t gone down the path alone. Startups are hard work. There are few ups and many more downs, and they take patience and tenacity of the kind that won’t falter during a multi-year marathon. Embarking on that journey without someone else is a lonely experience.
Finding that partner is hard enough. Adding the requirement that they also be formally trained in software engineering makes the search astronomically harder.
Our society places engineers on a pedestal—and with good reason. Programming is an incredibly valuable skill to possess. These are people who can create something out of nothing. But the big secret that few openly discuss is that the only real difference between an engineer and a non-engineer is that the former took the time to learn how to be one. Programming is something anyone can understand (and frankly, something I believe everyone should be taught from a young age).
The biggest hurdle is not learning. It’s understanding that you can learn pretty much anything in the first place.
If you enjoyed this article and aren’t yet subscribed to this newsletter, click below to get thought-provoking articles in your inbox, every week, 100% free: