When a Software Engineer Does Marketing

When I started to work on my Bookmark Ninja project it was pure software engineering and coding. Nothing else. When I decided to make a product from it, I had to put on my IT, web designer, technical writer and marketing hats, too. I wrote about this in this blog post.

I really enjoyed learning and doing the IT stuffs like installing and configuring Linux, WildFly, MySQL on Amazon EC2, setting up the monitoring scripts and email services. I learned a lot, it’s been really awesome.

I felt the most uncomfortable in the web designer hat. I don’t have these skills. But fortunately I could get around it with buying a template and my wife helped a lot in customizing the template and she designed the Ninja logo, too.

The technical writer role is not a big deal. I could have even written about Mickey Mouse or Snow White, I bet only 1 of 100 users would notice that something is wrong. People don’t like reading, the apps have to be designed in a way so that it can be used intuitively.

And then comes the marketing hat. Oh man, this is tough! At least for me. When I started this journey I was afraid the most of setting up the IT infrastructure. Well, that was the easiest part… The good thing is about marketing that there’s a ton of resources out there. You can find all the information you need on YouTube and on the different blogs.

Targeting your audience

My first thought about the target audience of Bookmark Ninja was very positive: “the good thing is that EVERYBODY can use a bookmark manager”. It’s not a photo editing software that is used mainly by photographers or not an accounting software that is used by accountants, it’s a simple tool that can be useful for everybody who browses on the net. “The whole world is mine!” — I thought.

Then came the problem when I wanted to setup my first Facebook campaign. How to setup the target audience? If I want to sell running shoes I will target the runners. If I want to sell stainless steel pots I will target chefs, cooks and people who are interested in cooking. If I want to sell sprinkler systems I will target gardeners and people who are interested in gardening. But how to target the audience of a bookmark manager? A runner, a chef, a gardener, a blogger, a doctor, a teacher, an interior designer can also make use of such a tool. So, what’s next?


I tried everything, but it didn’t work. I was not able to target my audience properly on Facebook. At the end I even had to pay $9 for a single website click. I’m sure that if I could setup a campaign properly then it would work. But there are too many variables that have to be properly setup in this game so I gave up. I know I could ask for the help of a Facebook ad expert but that is something I can’t afford at this moment. But I’m still very curious how to setup the target audience for a general tool like a bookmark manager…

iPhone with popular social media icons on its screen

Running ads for the Bookmark Ninja Facebook page was not really successful, but I didn’t want to give up Facebook completely. I created a personal (entrepreneur) Facebook page and decided to start sharing these blog posts from Medium. I created ad campaigns (setting up the target audience was easy: programming, entrepreneurship, startups etc.) and it worked like a charm. I managed to get page followers at a price of under $1/follower. The whole story is about content marketing. Instead of pushing your product directly to the customers’ faces, give them some valuable content on the social media networks that they appreciate. In this case you don’t promote your product directly but it can get high visibility indirectly. This is a long term game, you can’t expect results immediately, you have to be patient.

Google AdWords search network

I would say this my number one marketing tool. This works the best! AdWords generates the most clicks and signups. But be careful with the keywords. In the first 2 months I used only “broad match” keywords. The campaigns delivered pretty well, but the cost was too high. Then I started to use “phrase match” keywords. It seems that with the “phrase match” keywords I can save 2/3(!) of my costs while the campaigns deliver roughly the same number of signups. You can read the details about the different keyword matching options on this Google Support page.


On Twitter I also have 2 accounts just like on Facebook. A Bookmark Ninja account and a personal account. I try to engage with people with both accounts. The result is not surprising at all, the engagement is always much more successful when my personal account is used. So I use the Ninja Twitter account for announcing the strictly Ninja related news, announcements, and I use my personal account to tweet rather about the “behind the development scenes” and my personal stuffs like these Medium posts.

I still learn marketing

Above I described my experiences, but there is no guarantee it will work the same way for another product. And I’m sure that what didn’t work for me that may work for another product. Or it also can be that I did and do something completely wrong. 🙂 I still learn the basics of using the popular marketing tools and somehow I even enjoy it. But I will never be a marketing guy (and don’t even want to be). But someone has to put on the marketing hat and since I’m alone there is no other option at this moment.


  1. Thank you for your post on this topic! I remember these days pretty well! (hence why I decided to go to business school) We often times get so lost in our code that we think that people will just want the software – but that isn’t always the case. Good Luck with your software products!

    Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s