For more than a year I’ve worked (with an awesome team) on taking Travis CI from an continuous integration platform for open source projects into a small business with a profitable product.
While this hasn’t been my first venture, it has so far been the one where I focused more on the business side of things than anything else. There was some code, there was infrastructure, there was monitoring.
But the important bits aren’t about any of these three. They’re about a ton of other things, some of them being a big surprise for developers in particular. They deserve to be talked about, good and bad.
Running a small business is…
All About the Customer
The only thing that matters for a small business (for any business, really) is a happy customer. It helps to be happy yourself, but in the end, it’s happy customers who pay the bills, and who continue to pay the bills as long as you can keep them happy.
There are a ton of ways to achieve this, and most importantly, you should have a product that they need, that they’re willing to pay for.
Whatever you do during your every day, it needs to have the customer in mind. Which means one thing: you need to talk to your customers.
Even in the age of running businesses online, your biggest and greatest asset is still to be in personal touch with your customers. You need to pull your head away from code, and you need to spend time either visiting them, talking to them on Skype or at least sending them emails.
There are means to automate this, in particular emails over the lifecycle and on-boarding of a customer, but I can promise you that putting in this effort yourself is worth it. If you automate it, for instance by utilizing a platform like customer.io, make sure that a reply reaches a human (hey, that’s you!)
The great part about talking to customers is that it’s the best way to find out what they want, what they’d like to see improved in your product.
Most importantly, it’s the only way you’ll hear them say how much they love your product. Time spent with your customers is time well spent.
Not About Code
When all you do is interact with the customer, when will you finally get to write all that precious code?
The simple truth is, and this depends on the size of your initial team, writing code is not what makes you money. It sure helps to build a great product, but if you don’t put in the time to market and sell it, to hold your customers’ hands when they need you the most, no one will buy it.
The fact that you need to pull yourself away from code is one of the harsh realities of running a business, in particular if you’re a developer by trade.
But it’s the part that constantly pushes you out of your comfort zone. It forces you to talk to people, it encourages you to continuously improve your sales and marketing materials, to write blog posts regularly, to interact with your customers.
Best example is finding your price. You have to move out of your comfort zone from two perspectives. You need to put a value on your own product, and you need to find ways of showing that value to your (potential) customers, in particular when they come to you to heckle on price.
It’s worth repeating: Running a small business is about anything but writing code.
It took me a long time to accept this, so it’s okay to take your time, but the sooner you come around to the idea, the earlier you can work towards a thriving business.
All-Consuming
The dangerous part of running a business is that it’s to easy to be excessive about every aspect of it, be it customer support, customer metrics, customer happiness, new features, marketing, blog posts, your product’s availability.
It’s easy to give in and not let go other than when you go to sleep. Just one more customer support email, just one more tweak on your landing page, just one more code change before you finally drag yourself away from the computer to have dinner.
From the last year’s worth of running Travis CI as a business, this has been a dangerous trap for me, for all of us. It’s too easy to just put in a few more hours at night instead of doing something entirely different, like reading or spending time with your spouse or your family.
It’s too easy to get sucked in to working more on the weekend, neglecting your friends along the way.
This is a dangerous road, and it took me an unfortunately long amount of time to realize it. In hindsight I’m glad that I at least made sure I can spend quality time with my daughter.
Take care of yourself, of your family and of your friends. They’re very supportive in what you’re doing, so don’t neglect them in return.
It’s a noble cause to try and provide the best and fastest customer support you possibly can. But sometimes, and this may sound very heretic given all of the above, sometimes it’s okay to let the customer wait until tomorrow.
Now go out, stare at clouds, have a drink or dinner with your friends or your family. Personally, I get the best ideas and fresh insight when I’m not in front of your computer, when I’m in the shower, or when I’m spending time with my daughter.
Exhilarating
As soon as the first customer hits the “pay” button, everything is starting to pay off. As soon as you get 10 or 20 more customers to pay for using your product, you will be the happiest person in the world.
There’s room for a comparison to having kids, but that may be a bit of a stretch. Though sometimes, running your own business and selling a product successfully feels just like that.
Allan Branch compared the relationship to his co-founder to being married, so in that view, your product is your child, a labor of true love.
There are times when it’s exhausting, when you struggle to find new customers, when you struggle to fix annoying bugs, when you struggle with customer support. But those times are offset by knowing that people are happily using something you’ve built, and they’re even paying you money for it.
It’s exhilarating.
Now keep going, make your product even better, get more customers, write another blog post.