Building a Software Product: Lessons Learned

I spent a good portion of my spare time over the last few years working on a side project. For this particular project I formed an LLC, opened a bank account, existed on multiple social media platforms, had both an iOS and Android app and so forth. Now I can’t wait to shut it all down.

Products are Hard

There is a lot that goes in to a product, like marketing, social media, maintenance, support, development, etc. I found this particularly difficult because only one of those things I genuinely like doing (development, in case you were wondering). Unfortunately for me, to move a product forward, marketing and social media are arguably the most important. It doesn’t matter how many features you build or how kick ass your code is if nobody knows about it.

Lesson Learned #1: If a developer builds a feature but nobody is around to use it, does that feature exist?

Research is your Friend

No matter how great your idea is or how great people close to you tell you it is, do other people care about it? Can you prove it? Spending time vetting your idea can have tremendous benefits. Even if you just check out the competition, buy strangers a cup of coffee in exchange for their input or spend money on some AdWords campaigns, ultimately this is much cheaper than your time and energy spent developing or promoting.

Lesson Learned #2: Time is the most valuable asset on the planet. You’ll only ever have a finite amount of time, so don’t waste it.

It’s Not All Bad

Even though my product is a technical failure, I learned a lot throughout the entire process. Not only did I advance some technical skills, I learned new skills and I learned more about the world of products outside of development. I now have a larger view of the bigger picture, feel more well-rounded and I’m excited for the next idea.

Lesson Learned #3: You can never fail. You make mistakes, learn from them and keep moving forward. Don’t hate, iterate.