Business Advice Braindump

I attended CppCon a little while ago, and one memory that sticks in my head is the C++ committee panel. I sat there and listened as they discussed various C++ features, then an interesting question came up.

"What keeps you going?"

How do you stick to advocating for some low level obscure C++ feature for years and years, despite resistance and hard work and the possibility it may not even happen after all that.

And the committee answered that it wasn't actually the tech that motivated them, it was how it was used. Saving lives, science, running critical infrastructure-- C++ did many amazing things, and these obscure low-level features impacted that.

And it dawned on me, then and there-- that's what motivates me to do business. The results. I enjoy the theory and nitty-gritty of things like mathematics for the sake of it, but I haven't enjoyed business theory. Every time I sit down to write a blog on it, I wonder, "What am I doing writing this? Why?"

And yet I approach business in my day-to-day life with such passion, because in day-to-day life I see direct applications and really awesome outcomes. I talk about it on Twitter because I want others to have that power and happiness.

Independence, money, freedom, leverage, better communication with others.

Business skills are extremely valuable and worth putting time into learning.


So here we go, why not, a business braindump for you all! Keep in mind, this advice is not meant as general business theory (I have much to learn there). It is meant for and applies to the kind of company I run-- B2B company that sells a low-level middleware product. But I'm sure lots of the advice translates to other businesses.

Selling a product and keeping yourself in business while doing so is all about balancing short term cash with long term cash and forecasting getting cash. In the beginning when the thing isn't built yet, that short term can come in the form of contract gigs or keeping a part time job or other forms of income. When the thing is built, you want income coming from that as much as possible. So you need to think, how do I get money fast? Small companies pay faster than big companies, for instance. Plan around the reality of cashflow, don't get lured in thinking "This big company says they'll be fast!" Stay realistic.

It should be obvious, but for the same reasons make sure you always have multiple backups. Have several deals happening at once, don't ever count on one going through.

Write down a pipeline. I have a big whiteboard. My categories are "Tabled," "In Talks," "Evaluation Sent," "Evaluation Signed," "Evaluation In Progress," "Full License In Negotiation," and "Full License." Under the categories, I write company name, current status (what's preventing them from moving to the next category?), and dollar amount I expect. Looking at that whiteboard gives me clarity. We simply can't hold all that in our heads.

Then look at that pipeline and make a calendar for when you expect money, and then you have some simple sales forecasting.

So, back to short term cash. How to get short term deals? I mentioned consulting deals-- every middleware company does those from time to time. I mentioned smaller companies. With big companies, you'd be surprised how fast they can move if you understand how their internal structures work. The best way to figure it out is to just have a conversation with them. Often the people you're talking to want this to move fast just as much as you do. Think about signing shorter deals until legal can push through the final paperwork, think about things like paid evaluations, get creative, remember that the people there want to help you at the end of the day.

And that brings us to negotiations. 

The best negotiations are friendly and collaborative. This is not an exploitative relationship. No. You don't want it to be. In my experience, many of our customers are rooting for us and want us to succeed and get good money. They have a vested interest in us doing well and being happy with them, because it's a long term relationship. You act like a complete jerk and you might get something short term, but that person will hate you long term. And it's a small industry. People talk. So it's friendly!

I was talking with a founder the other day, and he mentions the sales team at his company. And I say wow, that must be so nice. And he says he doesn't think I need a sales team, and thinks that could actually be very bad. He said keep in mind that a sales team is expensive and risky. Most of his salespeople didn't work out, many soured relationships with good customers. He said we should proceed cautiously, and a sales team could be great, but it's got to be a calculated risk. And in a middleware product, having technical knowledge helps gain trust. You don't need a huge team for my kind of product, really.

I've also been thinking of getting creative with deals lately. The number of "standard templates" we have is starting to grow and grow. Each company is in a different place-- some are navigating bureaucracy and need some help, others are pre-investment and can't commit to a price yet, others want to try it for free for a bit, resell deals where they help us sell it, yearly, per product, renewing... It goes on. Being willing to draft a variety of contracts can be really helpful, and also makes negotiations feel much more collaborative. Let's work on a solution that works for you!

That being said, be flexible on the way the contract is structured but stick to your guns with price once you have one set for a type of company. Do your research, think about it, be careful, but when you know that's your price and believe it's fair try not to back down too much. It's partially about fairness, partially about setting expectations that price isn't so up for negotiation. Remember that with your actions you reinforce standards of acceptable behavior. You want to be fair and you want to be respected and valued.

But that being said, custom prices and deals are simply the norm for big company customers in this kind of business. You want to get your value, but every customer IS different. Consider that. Also consider the time and money it takes to do custom deals. It's all a tricky balance.

Remember with pricing, going low isn't always good. You have to support yourself. No one is happy with your product if you're not eating. It shows self respect. And it communicates the value your product brings, too.

Network, network, network, network.

And remember it's easy to talk with people we're familiar with. Reach outside your network. One of the easiest ways to sell outside your network is to go to and speak at conferences. Organize dinners. Buy people great coffee. At the end of the day, you're selling to humans and it's all about relationships. Go meet people, establish credibility, and build those relationships.


Maybe I'll do a Part 2. But that's all for now.

On Not Always Discussing Technology

Entrepreneur Interviews: Starting a Hardware Business While Employed