News for hackers. Stuff that matters.

Ask HN: Would you fire this developer?

A few months ago, our start-up hired a new developer. Unfortunately, he is not working out. He fits in poorly with the team for two basic reasons:

* He is a weak contributor. He is neither proactive nor especially attentive to detail. He is slow -- slow to understand existing code, slow to write new code, slow to solve problems, slow to get things done. The quality of his work, once complete, is sometimes good, but frequently mediocre.

* He is a poor cultural fit. He does not have a good attitude. He is often negative and complains.

We have tried to coach him on some of these things, and he has gotten a little better over time, but honestly, I think he simply lacks the talent and the right personality for this job. I do not think he would ever sufficiently change or improve.

(For what it is worth, we see this situation as a huge pile of fail on our part. We made a bad hire. We are changing our hiring processes to attempt to avoid making this mistake again.)

It is well known that our company is actively recruiting developers. Were we to terminate this person's employment, it would be clear to everyone that we sought to remove this person in particular.

Is it appropriate to fire a person like this? What is the kindest way to do so?

Note: I am in an at-will employment state.

( 29 comments | 16 points | on HN )
Re:Ask HN: Would you fire this developer? by portman on Thursday February 17, 2011 @12:20AM (#2229885)
Yes, yes, a thousand times yes.

"Hire slowly, fire quickly" is an oft-repeated maxim for a good reason.

As for the most humane way to fire someone in a startup, I have a few thoughts (borne from several misfires earlier in life):

1. Sit down with your employee and give them a formal warning. "You're not performing up to our expectations, and if things don't improve within 14 days, we're going to have to replace you." Give them a list of specific items to work on.

2. On the day of the firing, always have two people from your company present in the room. This mitigates a surprising number of "he-said/he-said" type disputes, and also (surprisingly) leads to a less contentious conversation. If it's just the two of you, the odds of someone saying something they'll regret increase substantially.

3. Be generous with severance. I've never regretted giving an employee 4 full weeks of severance, no matter how junior.

4. Be direct. Resist the urge to treat it like a high-school breakup (i.e. "It's not you, it's me.") I have always been advised by HR professionals to never mention "cultural fit", as it's a gateway to wrongful termination suits. However, I have been ignoring this advice for about a decade. I believe an honest firing trumps a legally "safe" firing.

5. Most importantly: don't plan on doing anything else for the rest of the day. Take your team out and order drinks. If your other team members want to go home after lunch, by all means let them. In a small team, terminations can be very emotional for everyone, and nobody feels good about working right after their coworker got canned.

Re:Ask HN: Would you fire this developer? by _b8r0 on Friday February 18, 2011 @03:52AM (#2234792)
I find your fire quickly maxim terrifying, but then again I live in a different culture with different labour laws.

Do you really think that OP's man management skills could be so infallible that he's already getting the absolute best from this guy? If he's not a cultural fit, then it's distinctly possible that the things that motivate the others don't motivate him. Surely it's better to make sure that the employee is as motivated as he can be, and is given an opportunity to improve before just throwing him out of the door.

I would never again work in the types of places that follows the maxim you describe. I've worked in those types of places before, they're horrible, hollow experiences where everyone chants about how awesome they all are and pulls all-nighters instead of being with their families, just to hide the deep seated job insecurities underneath.

Re:Ask HN: Would you fire this developer? by bartonfink on Friday February 18, 2011 @11:03AM (#2235923)
You're forgetting portman's first point - hire slowly. Avoiding people who, for whatever reason, can't meet expectations, should be the first priority of any organization that cares about results. You can do that by aggressively pruning people who don't meet expectations, but you can also do that by doing everything you can to ensure that the wrong people don't even get in the door.

I've worked in the converse - hire-quickly, fire-slowly - and I found it a horrible, hollow experience. Nobody, from the top down, gave a shit about getting anything done or learning. This is a place that refused to allow generics in Java code because people might not understand them. There were enough C players across the ranks that had moved up the ranks just by being there forever that the culture revolved around ignoring problems and not making waves, and it nearly killed the company. I bet you've heard of them. The company was AIG.

Re:Ask HN: Would you fire this developer? by portman on Friday February 18, 2011 @10:38AM (#2235787)
Where are you from?

You're absolutely correct that hiring and firing, like all management, is highly dependent on culture.

In North America, the overwhelming majority of research has shown that organizations that "hire slow, fire fast" have more positive work environments, with happier employees and lower job insecurity. You could literally fill a small library with the books and papers that have been written on this topic.

I would love to know more about your culture and the "hollow experiences" you're referencing.

Re:Ask HN: Would you fire this developer? by _b8r0 on Saturday February 19, 2011 @05:14AM (#2238823)
I'm from the UK, and have worked for American companies before. My experience with working for American tech firms (and I'm not saying that they were like this because they were American, my sample is way too small to draw any conclusions) is that compared to the UK they tend to overwork people, focus heavily on building a culture with an overly (for UK culture at least) gung ho spirit a la 'yeah, go team foo!' - which in my experience (and again, not saying this is all American firms, just the ones I've worked for) means people working crazy unpaid hours, pressure to go out after work (if you're not out drinking after work you're not part of the team - I've seen two ex-colleagues' marriages break up because of this) and a corporate kick-off culture that seems to be more about a Ballmer-esque 'Ric Flair impressions contest'[1] than achieving real results. For me personally, this doesn't line up with my culture and as such feels forced rather than based on genuine bonds - hence the hollow sensation you've quoted.

By contrast, British companies tend to focus more on getting the job done, going home and spending time with the family. Sometimes you pull late ones, but you're not expected to be in the office at 9am the next day. In some places there's beer after work, but you're not expected to go (at the risk of being denounced as a 'non-team player').

To provide a comparison, working in France is completely different. In France the work-life balance is shifted further towards the life end, in the Middle East (if you're a local) even more so.

[1] - http://www.youtube.com/watch?v=wvsboPUjrGc - ok, that's an extreme example, but tone it down about 97%, crank the alcohol levels up by 40% and you're roughly where ISS was in 2001.

Re:Ask HN: Would you fire this developer? by petervandijck on Thursday February 17, 2011 @08:11AM (#2230768)
That's awesome advice.

I've followed advice 2 and 3 before, but failed at advice 4 and 5. Will do that next time, especially 5.

Re:Ask HN: Would you fire this developer? by alnayyir on Thursday February 17, 2011 @10:41PM (#2234133)
Younger dev here, I'm with portman even though I've not been in a hiring leadership position. (I've been at best, a point-man for getting the icky stuff done.)

Here's why:

You make it harder for other people to do their best at work and love their company when they have to work with mediocre people.

I say this as someone who has had to work with some heart-achingly frustrating situations.

Good luck with the hiring changes and the company.

Cheers.

Re:Ask HN: Would you fire this developer? by anonymois on Wednesday February 16, 2011 @11:26PM (#2229742)
We had to do this recently as well. You have to get rid of him. A poor performer in your staff will drag down morale and destroy productivity. Keeping him on will send the message that you don't care about performance.

It is acceptable for you to fire an employee that is not performing at the expected level, in the same way it is acceptable for a new employee to leave after a short period of time if the job doesn't feel like a good fit.

Removing him will assure everyone else at the startup that you care about the quality of people you keep around; it's very hard to be dedicated if you know there are poor performers dragging things down.

Re:Ask HN: Would you fire this developer? by blrgeek on Thursday February 17, 2011 @03:07AM (#2230261)
Been in this situation. Didn't let-go due to emotional reasons. Became much more messy later. Reduced entire team's performance.

Still regretting it after two years. We could have used the budget for a better performer!

It might help to think you're not 'firing' the person for non-performance. Rather you don't have a good fit with him.

There may be other organisations where he may well thrive with more structure and direction (perhaps in services).

Re:Ask HN: Would you fire this developer? by staunch on Thursday February 17, 2011 @02:34AM (#2230208)
Don't think for one second you have any choice. You absolutely must fire him. Companies start to suck because of these people.

I highly recommend exchanging a generous severance (6-8 weeks) for a signed agreement waiving his right to sue for wrongful termination (and anything else).

Every day people sue companies because they know how easy it is to get them to settle. Get him to sign an agreement and pay him for it. Get a lawyer that specializes in labor law (in your state) to draft the template.

Re:Ask HN: Would you fire this developer? by niels_olson on Wednesday February 16, 2011 @11:17PM (#2229723)
Consider acute adjustment disorder if less than 6 mo, if greater, consider untreated depression. Ask him to assess external factors (gf dumped him, dog died, kid diagnosed with something awful (scale of ten, death is an 8), went in debt to move to you?)

If you are transitioning and need to start getting reproducible results from employees, consider getting a psychiatrist or psychologist to help you build profiles for successful and in-trouble employees.

Re:Ask HN: Would you fire this developer? by lsc on Thursday February 17, 2011 @05:02AM (#2230438)
eh, I have personally been diagnosed with ADD, and I don't perform all that well without medication. Psychiatrists and medication can help /a lot/ - but I still disagree with the advice. As a boss, you need to tell the employee what you need, and if he or she can't provide that, you need to let them go.

Telling someone "go see a psychiatrist- get medicated" /almost always/ leads to an even more negative reaction than just firing them outright. I mean, this is something that is /very difficult/ to tell someone who is a close friend without encountering a negative response.

on the other hand, if you /can/ provide health insurance that covers that sort of thing, by all means, do so. If you can encourage people to use the psychiatric portion of the company provided health insurance during the insurance orentation (not singling out one person) that's also great.

I'm just saying, you can't really say to a guy "hey you... you need to go get on some medication." I mean, it probably brings up all sorts of legal issues, too; I'm just saying on a social level, you are going to get a better reaction telling the guy to jump off a bridge, even if you have a good point.

Re:Ask HN: Would you fire this developer? by niels_olson on Monday February 21, 2011 @08:22PM (#2248184)
>As a boss, you need to tell the employee what you need, and if he or she can't provide that, you need to let them go.

Really? I'm pretty sure "taking care of your people" is a huge part of a boss's job. I certainly take it as part of my job as a boss. Would you fire someone with a broken leg who refused to go to the doctor? What about a torn ACL? You can walk without an ACL, your abilities are just degraded.

> /almost always/ leads to an even more negative reaction than just firing them outright

From a young, single man's perspective, maybe. But in the end you're just helping this person kick the can down the road.

> Hey you, you need to go get some medication

That is definitely not what I'm advocating. But a boss should definitely have the gumption to assess the situation coldly, understand all the options, and expect the employee to make a decision before firing them outright.

>I'm just saying ... I'm just saying

You need to talk less and think more.

Re:Ask HN: Would you fire this developer? by tdfx on Thursday February 17, 2011 @01:15AM (#2230009)
You must be well-funded.
Re:Ask HN: Would you fire this developer? by bdclimber14 on Wednesday February 16, 2011 @11:35PM (#2229765)
Hire slowly, fire quickly.

I don't think it's a matter of if, but a matter of how.

Re:Ask HN: Would you fire this developer? by _b8r0 on Friday February 18, 2011 @03:47AM (#2234781)
If you can easily replace him, in the cold heart of day then you should look at all the options. Firing him is one, but it's better to look at his skills and weaknesses and see if there's anywhere else he would fit to still provide value.

The kindest way to do so is this:

Before you fire him, try to measure what he's doing and the value he generates. Look for alternative employment for him in company as an option and bring him into a meeting room with two people, explain that he's underperforming and develop a performance improvement plan with him as well as offering the alternative employment if it's appropriate. Minute the meeting, give him the option to change the minutes and get him to accept them over email. Re-evaluate his performance again over the next couple of months and make a decision. Once that's made, bring him back into the meeting room, inform him of your decision, stick to it and act on it.

Having said that, you're in an at-will state so the type of thing I've described probably doesn't happen there. It's really down to you, but I've always sought to get the best out of my employees. Not everyone is a rockstar (to abuse the word horribly) but some people can be solid, dependable backup players.

You should also think about the effects of terminating this guy's employment on the morale of others. Unless it's obvious to everyone else that he's not doing his job, or that he's causing friction and problems in the office people may react badly. You need to manage this.

Re:Ask HN: Would you fire this developer? by zdean on Wednesday February 16, 2011 @11:30PM (#2229754)
Documenting their performance is probably key. I don't know about "kindest", but I think this is probably the most professional thing you could do. This way, they have a clear idea of what your expectations were (which you should have communicated at hiring and during reviews) and how they failed to meet those expectations.

I don't know what state you're in, but even in some at-will states, you could be on the hook for wrongful termination...documentation will go a long way in protecting you on this front as well.

Re:Ask HN: Would you fire this developer? by TheCowboy on Wednesday February 16, 2011 @11:52PM (#2229811)
This is a good approach.

At the very least, it helps to have been clearly communicating expectations so they're aware that they're not meeting those expectations.

Honestly, few are going to disagree based on your description. The way you presented it makes it seem obvious. I think you're more likely trying to overcome personal qualms or guilt about having to take this action, which is perfectly normal and shows you're still human, when you already have your decision made. It sucks, but it may be necessary.

You can present it as a choice: they have to want to work harder and longer or your organization may not have been what they were looking for---that it isn't their optimal fit.

Re:Ask HN: Would you fire this developer? by HelgeSeetzen on Wednesday February 16, 2011 @11:16PM (#2229722)
If the sitution is as described then the obvious answer is yes. People don't change, so attitude issues are hard to rectify once the settle (certainly not in the timescale of a young startup).

That said, the big take-away shouldn't just be to change your hiring process but rather to (also) change your management process. I find that staff attitude is set by both sides during the first few months of employment. At that point it "locks in" and is much harder to change later.

Re:Ask HN: Would you fire this developer? by markszcz on Thursday February 17, 2011 @09:11AM (#2230939)
Dear anonymous, I don’t have much experience in firing people but I have read and watched quite a number of startup books and videos to understand a reoccurring theme when hiring people, especially for a startup: Make sure they fit, and don’t drag down your company. One huge red flag was how he does not fit the groups culture. His skills might suck but if he was a punching bag for other developers to throw ideas at him and in turn it helped them solve their issue, at least that’s good. From what it sounds like this guy's personality within your company is uncanny to a dead moth. I remember this chapter from Rework from 37signals: http://37signals.com/svn/posts/1430-hire-managers-of-one

Good luck and tell us what happens.

Re:Ask HN: Would you fire this developer? by dwc on Wednesday February 16, 2011 @11:41PM (#2229780)
As zdean mentions, document. Take that seriously.

Many positions I've worked in the past had an explicit "probation period" of 3 months. However good your hiring process, sometimes you just get a bad fit. Try really hard to hire well, but be prepared for when it doesn't work. I'm guessing you didn't specify a probation period.

Something I've heard good things about is moving someone into another role rather than fire them. I understand if you don't have that option as a startup. Also, if this person is truly negative then you really don't want them in the company at all. But if the negativity comes from them recognizing their own poor performance then moving them into testing or something may get you a win. This seems tricky, and relies on excellent judgement on your part.

Re:Ask HN: Would you fire this developer? by ludicast on Thursday February 17, 2011 @11:31PM (#2234228)
"Nice guy I don't give a f&k. Good father, f&k you, go home and play with your kids. You want to work here close!"

http://www.youtube.com/watch?v=y-AXTx4PcKI

Probably not the best "formal warning", but fun all the same.

Re:Ask HN: Would you fire this developer? by eengstrom on Friday February 18, 2011 @01:09AM (#2234447)
You sound exactly as I did 12 years ago, right down to the rationale and the description of the employee.

If you haven't fired this engineer yet, or started moving in that direction, feel free to contact me directly at [email protected]. I'm happy to talk through it with you. I am not an HR generalist or a lawyer; I am a seasoned manager with over 20 years of experience who takes his responsibility to team and company very seriously. I can tell from reading your post that you are clearly struggling with this.

While I do agree with portman's advice below as it clearly shows experience and thoughtfulness, I disagree with most comments in this thread on several principles:

1. I hire quickly, trusting instinct. 2. I fire very slowly, if at all.

One key trick to understanding humans and being successful with them is that despite marketing demographics we are all motivated differently and relate and filter things differently.

Each time you make a decision to let someone go, ask yourself whether the employee failed or whether you did as their manager and leader. There are clear cases where a person shouldn't be in your organization, but practice and experience has taught me time and again that an employee's failure is the direct result of bad leadership, laziness or a lack of character - in the manager.

Clearly the person was qualified enough to obtain the position. Everything after that is up to the managers and leaders in your organization. If the person just isn't fitting in, can't offer value for the cost, at least make sure after you've sacked them that you understand what about that person misled you in the hiring process.

Years ago I built several organizations and led each for over a year. One hire of the last company constantly irritated me, I mean really, constantly bounced up and down on my last nerve, cutting away with a hacksaw...

1. I was not understanding what this employee needed from me to be successful in assignments, or even about what I expected in terms of work ethics and acceptable use of time at work.

2. The employee understood that I was dissatisfied but I was giving him mixed messages by not being frank with him. I was trying to over manage his problem, which wasn't a technique that worked.

3. I was not fair with this person because I treated him the same way as the rest of the team. A big mistake considering that two team members were total rock stars, upbeat, proactive, interested and fully aware of how lucky they were to have their position. I really, simply, didn't know him nor did I really make time to get to know what made him tick.

So I started to work on his separation process and as a part of it, I pulled a few members of the team aside and asked them what they thought. No one really had a problem with him, except that, shockingly enough, he didn't seem to understand my direction and wasn't able to make progress.

One of my .. hah .. junior developers said to me, "Hey, Robert is just the kind of guy that needs a list.". Since Robert was on a team of people that generally needed less input that the rest of my departments, I was kind of put off by such simple feedback.

So, I started shifting assignments to Robert that were moment to moment, short tasks and within weeks we had his productivity up, I had learned a valuable method of evaluation and had realized fundamental gaps in my own skills and abilities as a leader. Within a month, Robert had taken over as a team floater and input/output guy. The entire technology wing of the company came to rely on him five or six times a day; when you're building a tech and a market at the same time under pressure and on tight budgets, this was invaluable.

Basically Robert became the technology group's go to guy for anything from packing up deployments to testing functionality to scripting self-tests. You name it. The key was understanding that Robert needed short term accomplishments, measurable tasks and in a short period of time, he and I and his manager learned a very rewarding style of working together.

At the end of the day, properly utilized and managed, Robert became a star in his own right. If engaged, he would easily get jobs done faster than anyone else in the company, and while needing more maintenance and direction than other team members, he was a huge savings in time and distraction for so many others.

Don't fire your guy until you've had a chance to analyze why there is a breakdown. You're doing yourself, your initial impulse on hiring him, and the employee a disservice.

Re:Ask HN: Would you fire this developer? by getonit on Friday February 18, 2011 @09:02AM (#2235396)
That - in a nutshell - is the difference between 'finding' and 'growing' staff, and I'm of the opinion that we should be shooting for growing unless there's a damned good reason to take the shortcut of just finding.

It's an easy productivity tweak for your whole operation to just switch how you look at things from the other opinions posted here to this way, IMHO.

Re:Ask HN: Would you fire this developer? by eengstrom on Friday February 18, 2011 @12:20PM (#2236287)
Thanks for supporting the dissenting opinion. :)

I've had to grow a large staff in the dearth of available people in the 90's and we did just fine technically. Mentoring and leading isn't just managers. Picking people that are able to conceptually and effectually lead in their technical role, (while more challenging to find and often harder to manage), are great force multipliers.

Hiring is an art best practiced by the person on the hook for results, not an HR or hiring consultant or some other source. You really need to build a village of skills, personalities and often sense talent before the individual is even aware of it.

I love team building and I love helping individuals rise to excellence. Probably the single most rewarding aspect of my career.

Re:Ask HN: Would you fire this developer? by ewams on Wednesday February 16, 2011 @11:23PM (#2229731)
The best time to fire someone is the first time you think about it.
Re:Ask HN: Would you fire this developer? by dman on Wednesday February 16, 2011 @11:53PM (#2229816)
Yes thats how important decisions are made.
Re:Ask HN: Would you fire this developer? by stgfdgf on Friday February 18, 2011 @08:56AM (#2235385)
That works for insightful oneliners too - just blurt them out and everything will be fine.
Re:Ask HN: Would you fire this developer? by Pooter on Thursday February 17, 2011 @01:11AM (#2230002)
Just do it. Keeping someone around who doesn't pull his weight AND has a bad attitude is poison. Cut the losses (yours and his) and get it over with.

Also, don't give advance warning and don't give reasons. Warning just creates risk for you and stress for him. Giving reasons is legally problematic, and he's not going to believe what you tell him anyway.

Just tell him that it's not working out, that you wish him the best, and hand him a final paycheck. Severance might be nice, if you can afford it.