Which software developers are we talking about?
I admit, this article is not aimed at all software developers. If you’re a developer on a large team, and you want to focus solely on software development, this article isn’t for you. If you work in a small company, or even develop your own product, you will learn why early knowledge of marketing is crucial.
Nobody cares about technology
At the end of the day, we develop software that users will use (hopefully).
Certainly some languages, frameworks and libs are better suited to achieve certain goals than others. But before you make the mistake of trying a new framework that doesn’t significantly improve usability, performance, or your development time, don’t do it. It won’t provide any significant benefit to the user.
Once your product is developed, you’ve only done half the work.
Let’s say you have a great idea for a software product. Full of enthusiasm, you choose the optimal framework and libs. Then you invest several months to learn them. In addition, you are not so familiar with the new technology and make many mistakes and have to fix bugs again and again. But anyway, after a few months or years you have developed the perfect software.
But what happens then?
You don’t find a significant audience that wants to use your software. However, there are people who can benefit from your software. But how do you reach the potential users? You will realize that it takes a lot of effort to attract users/customers. This effort is often more expensive than the benefit for you. Disappointed you will put the project on hold until it disappears into nowhere.
The process described this way is not an exception. This is one of the most common reasons why developers don’t succeed with private projects. I’m no exception, several of my projects have gone through exactly this process and are dead now.
Software developers are arrogant
I think one of the reasons for this, for the failure to market own projects, comes from one cause.
Too many software developers are arrogant and have a high opinion of themselves. As a result, we don’t appreciate marketing and sales people enough or think their work is kid’s stuff. At the same time, we are so convinced of our product that we think there will be a huge demand for it.
This will never happen.
Your potential users don’t even know you exist. And if they ever have a problem and are looking for a solution, they’ll be overwhelmed by all kind of information that is only slightly related to their problem. Your product won’t even appear on the scene.
“No problem,” you say to yourself, thinking. “What the marketing jerks can do, I can do for a long time”. The only problem is, the marketing strategies and ideas you develop, rarely work out the way you thought they would. And this is true for both novice and experienced marketers.
In reality, you realize that almost every attempt costs a lot of time, a lot of money, or both. After all, marketing works much the same way as if you were developing software. But every time you make a mistake in the development process, you have to pay a real amount of money. In addition, in the real world, there is no environment that is equivalent to a programming language or framework. So you may have done everything right, spent time and money on your marketing campaigns. And suddenly Corona or a war comes around the corner and takes the full attention of your users.
That’s the reality marketers have to deal with, ridiculed by some developers.
How to do it better
It has taken me until late in life to get around to reading a book about marketing. The book that changed my view of the development process is called Traction: How Any Startup Can Achieve Explosive Customer Growth.
One of the most important lessons I learned for myself from the book is that in all my future projects, I address the issue of marketing before development even starts.
Marketing needs to be developed, just like software needs to be developed. The difference is that marketing is developed through a lot of trial and error and real world testing. Marketing is an ongoing process of
- Building propositions
- Building metrics
- Evaluate in the real market
Instead of starting directly with the development of the software, you can select competing products with an affiliate program and start promoting them. Once the right users are reached, you’ll have laid a foundation to get your upcoming project to users. If you think your software doesn’t have any competing products, you can promote other companies’ products that target the same audience.
If you already have a stable knowledge of software development and also want to implement your own project ideas, look a little outside the box in the direction of marketing beforehand. This can prevent you from frustration and disappointment.