Learning to be a good manager requires that you perform a wide range of tasks from delegating, to coaching, to planning. When none of these go well, you need to perform the final task: Firing. Letting someone go is very difficult for most people – our instinct is to want to help people, or at least not harm them. But how you fire someone says as much about the firer as it does about the free.

In fact, the current job market encourages perfect hiring. Jobs are so scarce right now that a reasonable manager should be able to find a very good match for her needs. But first you have to fire the bad matches. My most difficult lesson in this arena happened when I had to fire a relative.

When my dad remarried, the first time we met our stepsiblings was at the wedding while we all waited to walk down the aisle. We exchanged names and marched. Only afterward, at the reception, did I realize that we had a lot in common. In fact, my new stepsister, Dana, was exceptionally clever and charismatic. She was leaving her job as an editor at a top New York publisher to seek work that would pay more. Since she had risen to the upper ranks of her prior company, I considered her a smart, detail-oriented person. And the fact that she wanted to make more money meant she was ambitious. So I offered her a job in marketing at my company.

My plan was a disaster. She was so detail-oriented that she could not see the big picture. Her perfectionism may have been appropriate for editing, but she wasn’t producing the volume that the position demanded. She would never accomplish enough to make an impact on the company. I changed Dana's job a few times to try to bring out her strengths, but she could never quite fill the role. Finally, the team approached me en masse and said that no one wanted to work with Dana.

I wasn’t surprised. Repeatedly, I had said things like, “You’re only as good as your team” and “Make your teammates look good because being surrounded by high performers makes you look good.” Also, I talked a lot about Microsoft and McKinsey having zero tolerance for B players. During performance reviews, Microsoft employees are ranked on a curve, and the lowest performers get the boot. McKinsey only keeps the top performers from its stable of entry-level analysts, and dismisses the rest.

I decided that if I wanted to be part of something as highly competent as these companies, I needed to get rid of incompetence on my own team. So I called my dad and said, “I have to fire Dana.” He said I shouldn’t have hired her in the first place — he knew it would never work.

Firing a B player is difficult, especially if you’re a good manager. You’ll likely respond to the person’s shortcomings by thinking that you failed to manage her or him properly, so you’ll try a few new approaches. When that doesn’t work, you’ll likely ask yourself, “What could I possibly have been thinking when I hired this person?” Only after you admit that you made a mistake will you be able to issue the pink slip. And even then, it’s difficult. You don’t have the same righteous indignation that you would if the person had stolen or harassed someone at work; instead, he or she simply wasn’t a star performer.

As I reluctantly prepared to fire Dana, I asked another person to join us, because the only thing worse than firing a family member would be getting sued for it. But she didn’t kick and scream. And she didn't even pick a fight at our first Thanksgiving together (though my brother joked at dinner that he wouldn’t work for me unless I gave him a contract with a good severance package).

If you plan to succeed in corporate America, you must be able to get rid of employees who don’t move or shake, even if they’re your relatives. Their work reflects poorly on you, and it doesn't help them, either, to be somewhere they don't shine. Dana may not have had vision as a software marketer, but she saw that, in the big picture, my firing her was the right thing — for both of us.