Architecture & DesignDevelopers: Tips for Creating Your First Product

Developers: Tips for Creating Your First Product content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

By John Sonmez

This article is excerpted from the book Soft Skills.

As a software developer, you’re in a unique position to be able to be an entrepreneur who not only imagines a concept or new idea, but can also create it yourself. Many software developers choose to become entrepreneurs and create because of this reason. Other entrepreneurs have to hire people to create their ideas—and as you know, developing custom software can be expensive.

Not only can you create a software product as a software developer, but you can also create an information product like a book or a video.

In this article, I’m going to help you learn what you need to know to create your own first product and start down the long and bumpy road of entrepreneurship. But be warned, the path you’re about to embark upon isn’t an easy one.

Finding an audience

Many software developers first venturing into the realm of entrepreneurship make the common mistake of building a product before they’ve found an audience for that product. Although it might seem sensible to start by building a product, you want to avoid falling into this trap; otherwise, you risk creating a solution to a problem that doesn’t exist.

Figure 1: The process of building a product

Every product created—including this book—solves a particular problem. A product has no purpose without a problem to solve, and a product with no purpose has no customers, which means no money for you. Some products solve very specific problems for a very specific group of people—for example, a software product to help dentists manage their patients or a book to help software developers learn how to use the .NET Unity framework. Other products solve a general problem like boredom. Entertainment products like television shows and videogames might fall into this category. But regardless of what problem a product solves, that problem, and the audience that has the problem, must be identified before the product is created.

If you want to create a product, the first step should be to identify a specific audience that you want to target a solution for. You might have a general idea of what the problem you want to solve for that audience is, but in many cases it will take some research to find a common problem that’s either not being solved or isn’t being solved very well.

Go where your audience goes and interact with the communities your audience participates in to get an idea of what kind of problems are common. What are the pain points that you’re seeing over and over? Products need customers.

I started to notice a trend of software developers asking me how to build a reputation in the industry and how to get their name out there or get noticed. Many developers that were visiting my blog were asking me questions related to these topics. I could see that there was a real problem that software developers had with learning to market themselves. (In my case, my audience was coming to me through my blog and directly telling me their problems, so it made things easier—again, another reason to have a blog.)

I decided to create a product to solve that problem. I created a program called “How to Market Yourself as a Software Developer” ( The product solves a very specific problem that my target audience had, so I knew it would be successful before I even invested the time to create it. (I also had another method of verifying its success ahead of time, but we’ll get to that in a minute.)

Many developers start backwards and create a product that doesn’t yet have an audience and then they try to shop the product around to find an audience. When you do things that way, you’re taking a big risk, because it’s much more difficult to start with the answer and look for the question.

When I created “How to Market Yourself as a Software Developer,” my audience came to me beforehand and told me what their problems were. This is an excellent way to get started that makes selling your product easier later on. Instead of trying to find an audience, build one. We’ll get more into marketing yourself in section 2, but if you use the techniques in that section to get your name out there and create an audience centered around you and the content you produce, you’ll find that you’ll already have customers eager to buy whatever product you create.

Many famous celebrities use this technique to create and sell products. They already have an audience that they’ve built up. They know the needs and problems of that audience. When they launch a product into that audience it’s automatically successful. Take someone like Glen Beck, for example. Political views aside, this guy can sell New York Times best-selling books, just because of his audience. He doesn’t have to go and find an audience, because he created one. Just about everything he produces will automatically have buyers eagerly waiting to buy it up.

If you want to achieve the same kind of success with your products (although, perhaps, not nearly on that scale), build a successful blog first and use other media like podcasts, speaking engagements, video, and more to build an audience. Then, once you have an audience, you’ll be able to sell products to that audience. You may have even bought this book because you were already a follower of my blog, or came across it because you were following some other work I did, or had heard about me on a podcast. That’s the power of building your own audience.

Testing the market

Once you’ve determined the audience for your product and how it’s going to solve a problem they have, there’s still one more step you should take before you build a product. You should verify the product by testing the market and seeing if your potential customers are actually willing to pay for it.

Remember I said that I had another method of verifying my success for my “How to Market Yourself as a Software Developer” product before I actually created it? Well, here’s a little secret: I got people to pay for it before I even started to work on it.

How did I do this, you might ask? Well, to put it simply: I just asked them to. When I was thinking about creating my product, I decided that before investing several months in doing the work involved, I’d say what the product I was going to create was and offer it at a big discount to my target audience if they would pay me for it before I created it. It seems a little crazy—and to some degree it was—but it was a good way to prove whether or not someone would actually pay for what I was planning to produce before I spent all the time producing it. I knew that if I could get developers to give me their money three months or more before it was released, then when it actually was released, selling it would be no problem.

So here’s what you can do: set up a simple sales page where you talk about the product you’re creating and what problem it’s going to solve. Talk about what will be in the product and when you’ll actually produce it. And give a discounted price so that someone who is interested can preorder the product and get it as soon as it’s released. Offer a money-back guarantee so that potential customers know that if you don’t deliver on the product or they aren’t happy with it, they can get their money back.

But what will happen if you only sell a few preorders? Well, at that point you can decide if you want to change the product or the offering, because you aren’t solving the right problem, or you could simply refund the money back to the few people who bought and apologize, telling them there wasn’t enough interest. Not a fun thing to do, but much better than spending three months or more building a product only to find out no one wants to buy it.

For my product, it turned out that on the first day I put the pre-sales page up, I sold seven copies of the program. This gave me enough confidence to know that I could move forward and that I wouldn’t be wasting my time. I also had a group of very interested customers who I could ask for feedback to help improve the product as I was building it.

Start small

I keep harping on you about not just quitting your job and jumping into an entrepreneurial pursuit, but I’m going to harp on you one more time when I tell you to start small. Too many budding entrepreneurs pick a much too aggressive target for their first product and leave everything behind to pursue their new dream.

You have to understand and realize that your first entrepreneurial pursuit will probably fail. And likely your second will, and perhaps your third. You might not actually see real success until you’ve gone through quite a few failures. If you throw everything you’ve got into one big undertaking, betting your entire future on its success, you might end up putting yourself in a position where you don’t have the resources—or even the will—to try again. Don’t do that. Start small instead and work on your first product on the side.

You want to make the learning curve as short as possible, so you need to reduce the cycle time between when you take actions and see the results. The problem with a large product is that you may not see the actual results until you’re very far along and have spent considerable effort building hat product.

Getting started

Perhaps everything in this chapter sounds great, but you have no idea how to get started. Don’t worry; I was in the same boat when I created my first product. I was clueless about how to find out what kind of product I could create and how I could sell it.

I’m not going to lie and tell you that it’s easy. There is quite a bit to learn, but it’s easy to get started. Today, it’s easier than ever to sell something online and there are a ton of resources to help you do it.

I’d start out by reading a few books on the subject. You might want to check out Ramit Sethi’s blog at, because he’s an expert on the topic and has helped many want-to-be entrepreneurs become successful.

I’d also recommend checking out the book The Lean Startup by Eric Ries (Crown Business, 2011) to get some ideas of small businesses you could create and how to get started with them.

But a good amount of your education is going to come through trying and failing. To some degree, you have to do what you think is right, find out why it didn’t work, and then try something different. Most entrepreneurs who create successful products do exactly that.

Taking action

  • Come up with some target audiences you could investigate to create a potential product for.
  • Pick one of these audiences and find out where members of that audience congregate, online or otherwise. Join some of their communities and listen to their problems. See if you can pick out one or two potential areas for a product that can solve a pain they have.
  • Check who else may already be solving this problem. You don’t want to enter a market with too much competition.
Tips2 Developers: Tips for creating your first product

By John Sonmez

This article is excerpted from the book Soft Skills.

For source code, the Online Author Forum, and other resources, go to

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories