Fire quickly and compassionately
defmacro.org
defmacro.org
Some people have responsibilities if your going to fire someone quickly then you have just turned their life upside down now that they can't pay for rent, food, and other bills.
We could all leave a lot less damage in our wake by investing some time into learning how to quickly identify good candidates.
Many programmers on this site are in "at will" states like California and Texas. Meaning that you can be fired at any time for no particular reason.
The only time that wrongful termination comes into it is if there is evidence that you had a reason, and that reason is unlawful.
I just happened to be talking to our inhouse council and brought this up.
he believes you are incorrect. There is a legal distinction between a layoff and a firing, where layoff is defined as not for cause and firing is for cause.
At will permits layoffs as you state.
However firings, even in at will states, can still get you into alot of trouble if you don't have paperwork to show that you layed out a performance improvement plan and documented all cases of the behaviour that go the employee fired.
Your inhouse council is also correct. Should it come to a lawsuit, it is supposed to be decided in the way that I described. However there is a world of difference between winning the lawsuit, and not having one. The stronger the case that you have made to the ex-employee, the less likely it is that they will find a lawyer who is willing to represent them in a lawsuit.
Additionally, it seemed like his business was set up to avoid friction and is going to be fairly homogenous in terms of the composition of its people. I think a lot of employees would be petrified about pointing out poor direction for fear of being voted out.
Sometimes you need a little bit of friction to make the better decisions.
I meant get the person out of the job that doesn't fit them well quickly, which involves making the decision and following through.
As for people being afraid of speaking out, that's never been a problem here. The rule is simple -- get all the arguments out in the open, but once the decision is made, everyone has to be on board. It's ok (and desirable) to have a lot of friction in the first part of the process, but is detrimental to have friction in the second part (after the decision has been made).
EDIT: also, it's extremely helpful to periodically re-evaluate things, and and debate flaws in direction. The trick is to keep it constructive (as opposed to having one person not play ball and derail development). Getting this process running smoothly is very difficult and requires a lot of trust, but once it works, it works phenomenally well.
I've double clutched on several companies after turning up negative reviews on the company, or knowing someone who worked with said manager. In all three cases, I was right to stay away and was glad I did more research on the company I was about to join.
I imagine it's easy for a programmer (who passed your entrance requirements) to find a decent job in a few days; not sure about others.