10 Years of Indie Hacking to an Overnight Success
I’m basically living the indie hacker’s dream.
I run a small, profitable, bootstrapped business that allows me unlimited flexibility and financial freedom.
I still work on it full-time, but it’s now at the point where I can safely take vacations and unplug without feeling like things will fall apart. We have good cashflow, a line of clients hoping to work with us, and all this has taken less than 18 months.
From the outside, Draft.dev might look like an overnight success. The business has grown from just me to 8 full-time people in a year, and it’s hit my revenue goals three years faster than I expected.
But like most overnight successes, this was not my first shot on goal.
“Nobody is an overnight success. Most overnight successes you see have been working at it for ten years.” - David Heinemeier Hansson
In the past decade, I’ve made serious attempts with at least 10 failed entrepreneurial ventures and bought countless domain names for fleeting ideas. None of these side project ideas turned a significant profit, much less grew to a point where they could support me full-time.
That said, I learned a lot of important things in each of these failures. Ultimately, Draft.dev wouldn’t have been possible without these attempts.
An Accounting of Failures
In this post, I’m going to share each of the attempts I’ve made to start a business over the past decade. Along with each failed attempt, I’ll share a bit about what I learned or tried in the process.
If you’re on attempt #5 or #6 and getting discouraged because you haven’t figured out how to start something that works yet, let this be an encouragement to keep going.
On the other hand, if you’ve been slogging away at the same idea for 5 years and still can’t make it work, I hope this gives you permission to move on and try again. I’ve seen the sunk cost fallacy make entrepreneurs stick with things that don’t work for way too long.
So here is a summary of the 10 businesses I tried over the past 10 years without success:
1. Campus Scooter Rentals
I studied mechanical engineering in college and during my first junior year (it took me 6 years to get my undergrad degree), I opted into a fantastic course on engineering entrepreneurship.
Our teacher was the first tech entrepreneur I had ever really connected with, and I’ll never forget him. He made us read books like “Think and Grow Rich” and “Good to Great”, which were some of the few books I actually read cover-to-cover in college.
During the course, I was paired up with a classmate who wanted to start a campus scooter rental company. We created a business plan, website, and he even got a single scooter so we could pilot the idea.
Insurance and cost concerns stymied the project, but I learned the basics of creating a business plan and saw that with the right idea, I had all the tools I really needed to start a business. Ultimately, scooter rentals could work as a business, but you’d have to reach a scale much greater than two college kids could afford to make it viable.
2. Volblogs
With the campus scooter rental idea behind me, I started thinking about businesses with a cost structure low enough that I could actually pull them off. Newspapers were in decline and click-baity online publications like Buzzfeed and Huffington Post were starting to take off thanks to social media.
I decided I would start an online-only campus blog to compete with the local school newspaper. I created a website, got some friends to help me design and put up flyers, and launched the first day of school in the spring of 2011.
The blog was a local hit and we immediately got over 30 writers to sign on as our first contributors. A couple of our articles went locally viral and we stirred up some controversy by leaking the headliners for a campus festival.
In the year and a half I ran Volblogs, I learned the fundamentals of web development, SEO, content management, editing, managing writers, pitching at business competitions, and social media management. As a business, the venture was decidedly not successful (I never figured out an online advertising model that worked for something so hyper-local), but as a learning experience, Volblogs was probably the best experience I could have had at 21 years old.
3. Small Business Website Design
While Volblogs was taking off, I was quickly losing interest in mechanical engineering. I had gone down to part-time, meaning I forfeited most of my scholarships and had to start self-funding the rest of my education.
I picked up a part-time on-campus job and started doing freelance web design and development for local businesses and charities. I wasn’t particularly successful at it, but it taught me a little about project management, finding clients, and service business work.
I never planned on this being a long-term project, so as I got close to graduation, I quit freelancing. I was ultimately hired by Uloop to help start a college news platform after sending the founders a cold email.
4. JobBrander
While I put most of my effort into growing a team of college student writers at Uloop after graduation, I always had at least one side project going. The most significant was JobBrander, a job listing and content site devoted to entry-level marketing jobs.
As I learned more about SEO and programming, I built a job aggregator and blog, filling it with weekly blog posts about finding a job in marketing (something I had never actually done before). I used JobBrander as a testing ground to learn about content, keywords, social media, and building backlinks, but it never really had a business model.
The most successful thing I did with the site was to create a list of the “Top College Career Services Centers on Social Medial.
I then reached out to each school on the list to let them know about their placement and ask them to do an interview for the site. These articles attracted a lot of attention on social media and backlinks which ultimately led to traffic.
Unfortunately, I didn’t have the patience to stick with JobBrander. I was busy with work and thought the job board market was just too saturated, plus very few employers were struggling to fill the entry-level marketing jobs that we had anyway.
5. Tech Journalist Database
Most of my projects have been solo ventures, but at one point, I tried coordinating with some friends on a database of technology journalists. I had been scraping job board sites for a while and one of my friends worked at The Next Web, so we thought we might be able to send outreach to journalists (or sell their contact info) for money.
None of us really took point on the project though, so when we got busy and the project ended up on the backburner, it sort of fizzled out. I did learn how hard it is to start something with co-founders though, especially because we were all in different cities and at different points in our careers.
6. JobApis
Soon after the technology journalist project lost steam, I joined Packback as their first employee and started progressing on my career path from hacker to software engineer to engineering leader.
After a year or so, I started hacking around on a new project called JobApis, a set of open-source tools for aggregating job listings. The website and API wrappers are still up, but I gave up on trying to make money from the project.
Besides the obvious terms of service violations that some of these “unofficial” wrappers encouraged, I never found much demand for a service that aggregates job listings. Job seekers don’t have money (and they already have plenty of tools) and recruiters only care about getting candidates, not jobs.
Unfortunately, I didn’t learn this until after I had written a lot of code and set up all sorts of fancy SaaS features. That said, I eventually did tap into my network and conduct some customer discovery calls. The experience of getting on the phone to talk to potential customers was invaluable, and it was one of the key reasons Draft.dev took off so quickly. All that knowledge of job boards also helped when we launched DevRel Careers as a way to share the jobs our clients needed help promoting.
7. The Side Project Marketing Checklist
At this point, I had been browsing entrepreneurial forums for years and one of the recurring themes I saw was software developers like me sucked at marketing. Inspired by Justin Jackson’s Marketing for Developers book, I decided to create my own little resource for developers like myself who wanted to launch a successful startup.
I ended up creating The Side Project Marketing Checklist, which was a chronologically ordered list of marketing tactics you could try on your own startup or side project. The checklist went viral, so I ended up creating a mini site and blog around it.
Since the site was so popular, I started to wonder if people would pay for me to help them market their side projects. This was my first productized service, but I only ended up doing work with two customers before shutting it down.
Ultimately, I decided this market (indie devs bootstrapping a side project) were too price sensitive to offer a done-for-you service to. While I might have been able to offload this work to low-cost overseas labor and eek out a profit, it was clear that this was going to be a slog.
Note: I’ve repurposed this project into this startup checklist, which is still useful.
8. Shiphp
At this point, I was spinning up the engineering team at The Graide Network as the company’s first hire and I was doing a lot of coding in the early days. So, I decided I’d try writing a short article every day in 2017.
I didn’t make it all year and I skipped a few days, but along the way, I ended up self-publishing a short book on using Docker with PHP. I set up a companion blog and started testing funnels that drove over 1000 readers to download the book. Another developer even reached out and translated the book into Russian for me!
Unfortunately, I didn’t charge for the book at first and most of the downloads were free in exchange for an email address. I intended to start offering training and maybe a course, but I lost interest in PHP and Docker long before I could get that off the ground.
I slowly started to realize that books and courses on a very narrow niche are not the business for me. I get bored way too easily and I like exploring lots of ideas rather than getting deep into one thing for years at a time.
9. Portable CTO
For a couple years, I had been collecting developer tools and no-code app builders that I thought looked interesting. I have always liked building collections and organizing things, so I eventually turned my collection into a database at Portable CTO.
This project was yet another one without a clear path to monetization, but I found it useful for myself if nothing else. I also used it to start my personal email newsletter, which now has over 1000 subscribers and is a fun way to get feedback on my ideas and writing.
10. CFP Land
Even though I knew I didn’t want to devote myself to PHP and Docker for years, I thought writing a book and starting a site on the topic would give me enough street cred to apply to speak at conferences. So, I started another list (this time of technical conferences) so I could keep tabs on the speaker application dates.
Within a few months, I started to meet other conference speakers and I started to share my list. I then turned that into an email list and started automatically scraping more conference data.
I set up a customer development funnel (and wrote about it here for Indie Hackers) and started trying some growth hacking methods to build the list.
Within a year or two, I had over 2000 subscribers and I started talking to some of them about a paid SaaS tool based on CFP Land. This led me to learn more about the world of developer relations and all the devrel job opportunities out there. While I didn’t know it at the time, the connections I made while building CFP Land would also be paramount to Draft.dev’s early success.
A few months into creating SaaS features for CFP Land, I had a couple hundred dollars in monthly recurring revenue. Unfortunately, it started to flatline and I realized how small this target market was. Very few tech conference speakers would actually pay for something to help them manage conference talks, it just wasn’t something they’d pay for.
The Long Road to Draft.dev
The final straw for CFP Land was Covid-19, which completely destroyed in-person conferences for a year. At the same time, my day job with a small startup went down to half time as the company needed to save money to weather the pandemic.
I decided I would take a few months to try writing professionally and (as I’ve written about before) eventually, Draft.dev was born.
Looking back, I wasted too much time on some of these projects and I gave up too quickly on others with potential. But building a successful business isn’t just about finding an idea and grinding through it.
Building a successful business is often as much about timing as anything else.
Just as I was forced to go to half-time, my side project was nose-diving. I had six months of savings and a new baby, so I figured more time at home with a flexible freelance job writing might be a nice break.
Meanwhile, the demand for developer-focused content was at an all-time high. Nobody could speak at conferences or meetups, but tech marketing budgets had to go somewhere.
I had connections to hundreds of Developer Relations professionals through CFP Land. I was able to simply ask a few if they’d like me to write articles for them. Those connections turned into referrals that turned into more clients and the flywheel quickly accelerated from there.
My Day Jobs Were Critical Too
Finally, I can’t understate how important my experience working at startups was. I was entrusted with hiring people, I sat in on sales calls, I saw financial models, I met investors, and I learned how to set up repeatable processes. All of this experience snowballed into a unique collection of skills that made starting Draft.dev look much easier than it really was.
After all, when you add up 10 years of full-time work and 10-40 hours per week of side projects, you can’t really call this an overnight success.
Have thoughts? Feedback? Find me on Twitter to pick up the conversation.