Just like everyone should learn to program, everyone should learn to sell.

I started my career as a software developer but through some odd twists and turns I one day found myself in enterprise sales, wearing a suit, and carrying quota. It was a big transition and I freaking loved it. Soon I built a strong reputation as a top salesperson and closed over $100M in revenue while at IBM. Sales is awesome but unfortunately it has a bad reputation: bad sales people come across slimy, obnoxious, pushy, and selfish. And for n00bs, it’s daunting because they assume sales success is an intrinsic personality trait – you’ve either “got it” or you don’t. Well, it turns out sales is learnable and most people can get good at it with practice. Even hackers.

Developers find themselves in sales roles for a lot of reasons. You may need to sell your startup’s hot new product. You may need to sell yourself as a consultant. You may want to understand if your salespeople know what they’re doing. Or maybe you’re just plain curious about the dark art.

My goal here is to share the four most important lessons I learned through my transition from developer to salesperson. Sales skills are not intrinsic, they can be taught. Good salespeople, first and foremost, listen to their customers. More importantly, they diligently execute on a learnable and reproducible toolkit:

  1. BANT: Budget, Authority, Needs, Timeframe
  2. Handle Customer Objections
  3. Get to the Top Quickly
  4. Ruthlessly Prioritize

Time is the Bottleneck

Just like developers are expected to deliver features, salespeople need to deliver revenue. Like features, there are always more sales leads than there is time. If you don’t focus on the most potentially impactful leads, it’ll be very hard to build a profitable business. Using time efficiently is the core of sales success.

BANT: Budget, Authority, Needs, Timeframe

Because time is the bottleneck, you need to make sure you’re spending time with leads that can buy your product, a process often referred as lead validation. Think of it like this:

I’ll use a car sale to illustrate.


Can the customer afford your product? Anyone can walk into the Ferrari dealership and ask for a test drive, but a good salesperson will ask how much they’re planning to spend before they spend precious time on the potential customer. If there isn’t a budget attached to a project or it’s doesn’t match up with your price point, move on. A Toyota budget is never going to get stretched to a Ferrari price tag.

Don’t kid yourself; budget is always a critical issue for customers. Asking about budget can be uncomfortable, especially when you’re starting out, but it is the most important question. This step also helps customers identify what they can afford – they may have started their car shopping experience with no idea what a Ferrari costs. Or it may help you consult them on which edition or tier of your product to consider.

If the customer doesn’t know their budget, show them your prices and ask if its something they can do. Saving them time and treating them well, makes them more likely to think of you when they can afford the Ferrari.


Are you speaking to the right person? Imagine a new young driver wants to buy a car. A good salesperson will try to understand who is making the purchase decision. You might be spending all your time selling the excited father who really wanted the safe Volvo and then lose the deal because the daughter was the decision maker and she was never interested in your car to begin with—- she wants the Jetta. A good question to ask is “In addition to yourself, who else is involved in the purchase decision?” Try to understand each person’s role and identify the decision maker. Then make sure you engage this person as soon as possible.


Do their needs line up with your solution? Back to the Ferrari example. A guy walks in and he has the budget, but what is he looking for? He wants a sexy red car for the status symbol, but he really isn’t going to drive it fast. He needs four doors because he has kids and he’d like a comfortable, quiet ride. The buyer may not realize it yet, but the Ferrari isn’t for him. He may get excited for the car, but when it comes time transact, he’s going to have a tough time justifying an expense that doesn’t align with his needs. Save your customer and yoursef time but clarifying need/solution alignment early.


When do they plan to buy? The buyer knows he wants a Prius, has budget, and is really excited— great! But he still has another year on his old car’s lease so it will be another twelve months before he will make the purchase. He isn’t ready to buy. You should build a relationship so he comes to you when he’s ready, but spending too much time with him now will take you away from other ready buyers. You never know what might happen in a year— maybe he decides to extend the lease or he gets a big promotion and decides he wants luxury car. Allocate your time to him accordingly.

BANT works with both enterprises and consumers, but it is most critical in enterprise sales since purchases are generally planned in advance and involve multiple people.

Handle Customer Objections

If your customer is really considering a purchase, they will throw objections at you. That’s great! It means they’re testing their understanding of the product and the deal. Handling those objections is the difference between a win or a loss. The Harvard Business Review (Dec 10) discussed research that showed that handling objections is the most important trait of effective sales people. While technically easy, it takes practice and discipline. Let’s use “It’s too expensive” as an example objection.

1. Clarify

“Can you please explain your concern with price? Are you more concerned about the upfront price? The recurring price?” Before you dive headlong into a justification on your price or start discounting, first understand what exactly the issue is. Otherwise, you may find yourself handling the wrong issue, offering the wrong solution, not helping your customer, and losing time and the deal.

2. Empathize

“I understand that the upfront price is a concern.” Make sure your customer knows you understand him. You don’t need to be over the top, just acknowledge that you heard them and understand that it’s an important question. Bad sales people often just deflect the question or minimize it. Don’t do that. 🙂

3. Test

“If we were able to resolve the upfront price issue, would you move forward with product?” If they say, “Yes,” then you’ve got a genuine objection, so spend time resolving it. If the answer is “No”, then you’ve got other issues and you’ll to figure out what they are and work to resolve them as well.

4. Deal with the Issue

By this point, you’re dealing with a real objection. Was it a result of a misunderstanding? “Actually, our pricing works differently, so this shouldn’t be a problem for you.” Or, it’s a real disadvantage you’ll need to work with the customer on by either persuading them that the benefits of your product outweigh the issue (“You’ll see ROI in 12 months”), solving the issue (“We can do a 20% discount”), or acknowledging the issue and hoping its not a complete blocker to a deal (“You’re right, our pricing is higher than the competition”).

5. Confirm resolution

Think you resolved the issue? Better make sure. Nodding heads doesn’t mean the customer is satisfied. Simply ask them if it’s resolved and get agreement to move on. Otherwise, keep working with them.

Get to the Top Quickly

It’s scary to try to get a meeting with a C-level executive, so most people convince themselves that its better to start with lower level contacts who will happily give them time. This can really slow down your sales and, remember, time is your bottleneck.

To compare, you start near the bottom of the hierarchy or influence chart. That person gives you time and tells you they’re interested. Chances are he’s an influencer and the decision maker is many levels above him or in a different group. But because you started here, you now have to work your way up which can be difficult especially if this first contact feels that they should own the relationship with you or that you’re trying to go over their head. This is all too common and can result in a lot of wheel spinning.

Now, let’s say you start at the top. You get an intro to the CTO or the CIO. It’s a 15-minute conversation where you tell them how you’ve helped company X save $Y and you’d like to explore how you can help her organization. This top exec puts you in direct contact with the person in charge of that relevant project— with a blessing. That person is likely a decision maker and since you come blessed from the top exec, they take your meeting and take it seriously— you have a halo effect. If that person is truly interested, you’ll get higher quality answers to budget, authority, needs, and timeframe questions, as well as a good lay of the land about who else is involved. Best, they’ll easily introduce the key people involved, maintaining your halo. This route becomes critical if a deal stalls. You can now climb back up the hierarchy more easily, since that’s where you started. Hopefully you’ve been keeping those people in the loop.

Ruthlessly Prioritize

Building software isn’t about building every feature; it’s about building the features that matter most. Similarly, sales isn’t about winning every deal; it’s about bringing in the most revenue. Great salespeople are religious about only working on larger, higher probability sales opportunities and letting the rest go. This sounds ruthless, and is pretty hard when it’s your company and you don’t yet have many customers or a strong sales pipeline. But prioritizing helps you understand how to better serve the people who value your product and also results in the best outcome for your business.

Prioritize the opportunities that are furthest along, biggest, and most likely to close. If you do that, you’ll manage your pipeline most efficiently. This can get hard when you have a live deal that’s too small or a big marquee deal that you need but you just found out there’s no budget this cycle— you have to move on.

Note: This does not mean you should ignore smaller or less likely deals. While you may not actively work on them as live sales leads, you’ll want to coordinate with marketing and support to find other ways of servicing those leads and ensuring they’re satisfied. With digital distribution, self-service models help immensely here.

Get Out And Practice

Like programming, there’s only so much you can learn from reading articles and books. If you want to learn a new language, framework, or tool, you have to fire up your IDE and build something meaningful.

Sales is no different. Get out there. Talk to customers. Try out these ideas and see how it works for you. Practice listening to the customer, play with how you phrase things, and learn to read reactions. But most importantly, experience being shot down and losing a deal. Remember that in Sales, it’s not about winning 9 out 10, its about winning 1 out of 10, quickly and efficiently.