If you are interested in learning how to start a software company, you've landed on the right spot. If you are a non-technical founder that wants to bootstrap your way to success, then even better.
I'm going to share with you how to start a software company, but also share how I was able to start multiple software companies even though I'm a “non-technical” founder.
I have been running successful software businesses since 2011. However, up until this point, I have not taught others how they can get their own software business off the ground.
The time has come for me to share how to bootstrap a software business and the MANY lessons that I've learned along the way.
In addition, it's time to tell the story of Long Tail Pro.
I am the founder of Long Tail Pro; a keyword research software started in 2011. This business was very successful for me. I had the opportunity to exit a majority stake in that business in 2016 and I did.
Building, growing, and selling a software company from the ground up has taught me quite a bit along the way.
In addition, I founded in 2019 and am actively growing Link Whisper, another software company.
I have had success in several different business ventures (unrelated to software), however, my software businesses have been by far the biggest success story of all my businesses.
As a result, I'd like to give a little more insight into what has worked well for me and how you can also start a software company.
How to Start a Software Company
I purchased the domain LongTailPro.com on June 2, 2010 (the software actually launched publicly in early 2011). When I started that company, I had never worked for a software company and had certainly never run my own software company.
I was a business banker with no coding experience. I also didn't have piles of cash sitting around.
I had to learn how to start a software company from scratch with no experience. Now that I look back, I can certainly see that I made a few mistakes along the way, but I also did a lot right.
I'd like to share with you the 5 steps that I feel like are the best way to start a software company (and hopefully help you avoid the same mistakes I made).
1. Think: Make Something Useful and Better
2. Develop: Hire Great not Cheap.
3. Launch: Bootstrap using email list and active communities
4. Connect: Grow with content
5. Expand: Grow exponentially with promotions and funnels
So, you are thinking about bootstrapping a software business? First of all, “Congrats!” I think a software business offers a lot of advantages over other businesses that I think are important to point out.
First of all, software can have very high profit margins. Especially if you are selling the software online or through instant download, the product cost of “shipping” one more piece of software is basically zero.
This is obviously NOT the case for businesses involving physical products.
On the same note, software is essentially something that is created once, and then can be sold an infinite numbers of times after that. You won't ever run out of inventory.
(The reality is that software isn't created once, but requires constant updates…however, it's still better than holding inventory!)
Finally, software businesses don't have to be created by software developers!
I am not a programmer!
I don't know how to code anything. However, I own a successful software business.
Don't limit yourself into thinking that you cannot create a piece of software simply because you don't know how to code.
If I said to you, “Hey, I'm going to buy some land and build a house”…it's most likely that I mean that I'm simply going to hire a contractor to build the house for me. It's not a big deal and people do it all the time.
In the same manner, you can just hire a developer to build a piece of software for you and you will own it (just like your house). The “contract” developer just want to gets paid for his work, not to “own” another
house software business.
For now, just realize that a software business can be excellent for MANY reasons, and it's well within your reach…even if you have no clue how to code.
1. Stop and Think: How to Validate Your Software Business Idea
Before you dive into hiring and building software, you need to stop and think for a minute. The most important aspect of getting started is to find a way that you can bring the world something useful or better than the existing competition.
I know this sounds obvious, but I'm surprised how many software companies that are started that really aren't any better that what is already out there. If you take the time to research what is out there, I'm sure you can come up with a better idea.
Solve Your Own Problem
There are so many ways that you can brainstorm for new software ideas. However, I can only share what has worked well for me.
The idea for Long Tail Pro came to me because I was trying to solve my own problem. You see back in 2008 and 2009 I was actively building small niche sites. As a result, I was doing A LOT of keyword research.
The keyword research tools I was using (Market Samurai and Google Keyword Tool) had some limitations when it came to doing LOTS of keyword research quickly. I was spending hours and hours performing repetitive tasks with this software and I was continually frustrated!
These tools were slow and truly felt like they were built by people unfamiliar with keyword research (like a software guy decided to just create a keyword tool without REALLY understanding how people do keyword research).
I had a problem. I was “wasting” hours doing keyword research with tools that didn't work well in my work flow.
After doing lots of research, I was still unhappy with the other solutions that were on the market. I felt like it was time for someone that actually did TONS of keyword research to create a better keyword tool.
I wanted to solve my own problem.
Now, there are LOTS of other ways to come up with software product ideas; however, I recommend trying to solve your own problems. This has worked very well for me as I created Long Tail Pro and Link Whisper by doing just that. And there are countless other businesses out there that came about by the founders solving their own problems.
Be Different From Your Competition
So, the first step in creating a software business is finding that great idea. However, simply because your idea solves your own problem, doesn't mean it's automatically better than what is currently on the market.
Now is the time to go out and research what other products are already trying to solve the problem that you are having.
For example, with Long Tail Pro, I was particularly frustrated with the length of time it took to search for lots of keywords on existing tools. As a result, one of my primary ideas was to simply allow users to input multiple seed keywords at once.
This is a very simple feature that was different than my competitors.
For example Market Samurai, a well known keyword tool back in 2010, only allowed users to input 1 seed keyword at a time (and it still only allows 1 seed keyword at a time).
Here's a screenshot of Market Samurai:
Sadly, I can only input “dog collar”. I have to fully start a new project if I want to search for something other than “dog collar”. It's extremely time consuming.
So, when I compared directly to my competitors, I KNEW I had something different. Long Tail Pro would give users the ability to search for lots of keywords at once and I also streamlined lots of the filtering and research options.
Here's a screenshot of an early version Long Tail Pro:
So, does your software idea stand out from your competitors in any way?
It needs to be either faster, easier to user, cheaper, work better, or address a pain point of users that isn't fully being addressed.
Competitors Making Money?
Okay, so you've solved your own problem and you've even figured out how to make a software product different from your competitors.
However, now you need to determine if anyone is actually interested in buying a product like yours!
The easiest way to find out if there is a market for your product is to find out if your competitors are making any money. If people are interested in your direct competitors product, then they will likely also be interested in yours (if you can convince them to buy yours first).
In some instances, finding out if your competitors are making money can be relatively easy.
For example, when I was considering whether or not I should create Long Tail Pro, I knew that one of the top keyword tools was Market Samurai. I got on their email list.
It just so happens that the founder of Market Samurai TOLD me how much the business was making! I didn't ask him, he just publicly revealed it to everyone on his email list. In fact, he did it on 2 different occasions.
(Remember, these emails are from way back in 2009 or 2010…I had to do some digging to find them).
In this first email, he simply explained that the demand was “mind-blowing” and that over 18,000 people had used the software in the first week. Whoa…that's alot of people!
But another email REALLY told me how well the business was doing:
So, by simply joining his email list, I was able to find out that my direct competitor had made $6.7 million dollars from the software product.
The answer was pretty clear to me: my competition was DEFINITELY making money! As a result of these emails and other research, the decision was crystal clear to me…I should definitely create Long Tail Pro.
You may have to do some more digging to find out if your competitors are making money. However, if you can find anything that references sales, user base, website traffic numbers, or other stats, you can often extrapolate how well the business is doing.
I also want to emphasize that seeing your competitors making lots of money is a GOOD thing! Having a healthy market of buyers (even though they are currently buying your competitors products) is better than not truly knowing if there is a good market.
Step 2. Hire a Great Developer (Not Cheap)
If you are not a coder yourself, you'll need to hire a software developer to get your business off the ground. I've hired several developers as a non-technical founder and here's the lessons I've learned.
- It’s easier to work with someone that speaks your language and lives in the same time zone. You might consider only hiring a native English speaker that lives in the US.
- You need to do a good job of describing what was expected out of the job. Who will own the source code? Does the job include creating a software licensing and security system? And an ongoing agreement for fixes/updates to the software?
- Hiring cheap might get something workable (for a short time), but the best developers charge more for a reason. Focus more on hiring the best developer you can find, rather than price shopping.
You can learn more of the ups and downs I've had as I learned to hire a developer here.
Now, there are lots of places you can go to find a great developer. I've listed a few ways below.
You can find great freelance developers that will give you a quote to complete your entire project or work on an hourly basis. The advantage of a freelance developer is that they are a contractor and not on your full-time payroll forever.
They only work when you have work for them to do.
Many freelance coders exist in the world and they range from extremely talented to severely under-qualified to be bidding on your project. My advice is to do a phone call with your top few candidates and make sure they can communicate well with you and understand your job well.
You can find freelance developers at:
- Github Jobs
- Stack Overflow
- Fiverr (for lower end jobs)
- many other places
I personally have used Upwork to find lots of great talent. Depending on the complexity of your job, you may be able to hire someone overseas at a lower rate than the equivalent US based developer.
Are you ready to hire a full-time developer right out of the gate to get your software company off the ground quickly? Well, there is no shortage of places to go find the talent you need.
In addition to the places listed above (which can also potentially lead to full-time hires), there are other job sites like:
You can also work with either software development agencies or with talent agencies to help you find the right person for your job.
A potential reason you might want to go with a software agency is that they might be local. You can likely find a company in your local community that is willing to work with you. This can be advantageous if you want to meet in person and really get to know who you are working with. And of course, you are supporting your local community.
So, consider doing a search in your area and you might find what you are looking for.
However, there are also TONS of other companies that are willing to work remote for you as well. Here's just a couple:
Another potential option if you would rather give someone ownership in your company as opposed to just paying them cash out of pocket is to find a technical partner. A typical arrangement would be that you would give them ownership stake in the company (potentially 50/50) and then they either work for “free” or for a very low rate.
You would have to negotiate the details with them.
I've never personally gone the technical founder route, perhaps because I'm just more greedy and always wanted to keep 100% ownership of my companies.
Places to look for a technical founder:
- Family and friends (and referrals from family and friends)
- Local business or networking groups
- Co-Founder on Reddit