So people basically want to do a good job. They want to see the meaning of their work. Which is a different thing for different people. Some love to see their product used. They are customer-oriented. They prefer quick-and-dirty – but deployed and used – over clean, well-engineered but otherwise useless software. Other don’t care about the user – they care about the well-engineered software. Some perhaps are in-between – they want their code being good, but they want it also to be it useful for a wide audience. Or some may want to build only software they use – so they have a deep understanding of the user. The point is – people are different. They may want the same in the abstract terms – meaningful work – but their vision widely differs.
So the way you work – if you are customer-centric or not, the amount of planning and designing up-front, the granularity of the tasks – a lot of details in the work depend on the top management (in software development – usually on the CTO) and his vision what is the most effective way to build software. This affects the culture. It’s natural to seek people that would go along with the way you work. Otherwise the people you hire will be frustrated and will eventually leave. Hiring for cultural fit is hiring people for whom you can provide meaningful work.
And then there’s this advice to hire for cultural misfit. Only by by hiring people that see the world differently you can advance.
So there’s a clear conflict here. You need to hire for cultural misfit to get something better then you have. If you want to change the culture, you need to hire people that fit in your envisioned culture and not the one you currently have. If you need innovation, you need diversity, you need to escape group-thinking and so you need to hire for misfit.
But the people that do not fit would not be satisfied and will leave.
So how do you hire for misfit? Or more precisely, how you retain misfit?
The question is how much misfit your management can accommodate? How much you can tolerate? How much the “fits” can tolerate? Do you want everyone to work in the same way or you allow people to act on their own ways? Do you have standards, processes that are must, strict rules or are you loose? Can the misfit act on his way and are the others allowed to follow his lead, or you prefer the new hire to first follow the rules, then break them? How much variance you allow?
Here is an example. You have a very-well organized, priority-sorted backlog of tasks. Everyone have to pick one of the top 3 tasks (you allow people to pick not exactly the top one, if they feel they will be better working on something else, but still you restrict them to one of the top priorities). The new guy picks somethings that is not in the high priority at all. Even worse – does something that is not in the backlog at all. How do you react? Would you allow him to work his way -assuming that his work is good, but it’s not aligned with the priorities you’ve set – or would you let him know what is with priority, so next time he choose better? He ships a feature that do not meet your definition-of-done criteria – perhaps it doesn’t have tests, or it covers only 80% of what is required. Would you ship to your customers, or wait until it fits your criteria? Those might be some extreme cases – but they define how extreme misfit you may accept.
As a misfit is basically two things – a disruption, that can lead to innovation, better performance, new ways of work; and at the same time, well.. I didn’t find a better word, but misfit – a person that feels uncomfortable in your company and perhaps the people in the company feel uncomfortable too. Someone that is not thrilled about the work you do (or the way you do it). So there is a spectrum between the two and how much of the disruption you can accommodate determines whether you will keep the misfit and have a creative disruption or you will lose it and stick to the group think.