There are many kinds of people who end up working software development. I’ve been writing code for half a decade now and I’ve discovered that there are only a few general categories people fall into. There are strengths and weaknesses in each category, and you’ll be able to tell which category I think I fall into when you read them:
- The Doer: This person has a way of becoming a single point of failure. They’re always in the middle of things, and are the person you go to when something has to get done right and quickly. They adapt well to changing requirements. They may be a little anti-social and have other odd habits, but they are forgivable by the volume of work produced. The one thing the Doer doesn’t do well is document things. The Doer sucks at documentating because they’re always writing code and “doing”. It’s always best to pair the Doer with the Librarian.
- The Talker: This person never seems to get things done, but loves to talk about everything. This person will talk about a product like they actually know it, and will be extremely vocal in meetings, but when it comes time to write actual code, the Talker is nowhere to be found.
- The Laurel-Sitter: This person probably used to be the Doer, but now they’re tired of doing and want to spend their time telling other people how to do their job and never turning out anything of their own.
- The Geek: This person is so into new technology and using it that they often miss the obvious (although not as exciting) solution. They’re sometimes hard to corral into doing their job because they’re always out hopping from bleeding edge to bleeding edge instead of writing the code they’re supposed to. They’re great to have around when you’re brainstorming on a new project or problem because they often know a little about a lot of different technologies and can point you in interesting directions. But, they often spend a lot of time in experimentation that they should use writing code they know will work.
- The Droid: The Droid will do what he’s told, and usually does solid work, but can’t be counted on to always find the best solution to a problem. They’re not someone to go to with those wacky problems. They frequently try to apply the same solution to every problem, even when it doesn’t apply.
- The Professor: The Professor is somewhere between the Talker and the Laurel-Sitter. The Professor loves to talk about standards, conventions, rules and how they would do things. The Professor’s problems lie one of two areas. Either the Professor spends so much time thinking about tabs vs. spaces or the number of comments he should put in his code that he forgets to write anything. Or, the Professor has never actually written anything using these rules, and their code is extremely messy. The Professor will deny this, but of course you know it’s true.
- The Inquisitor: This is the guy who makes your meetings more fun. He asks the either impossible or ridiculous question that make people sweat or giggle. They’re good to have around for entertainment sake, but the Inquisitor usually has a little too much of the Professor in him to be useful when actually writing code.
- The Lump: No one is ever sure what the Lump does, what their role is or why they’re still around. Either the Lump is a legacy system or someone’s relative. The Lump always finds a way to get out of work. They like to procrastinate until the job doesn’t gone, or someone has to jump in at the last second and do it for them. The Lump is entertaining in normal circumstances, but under a deadline crunch, the Lump is likely to discover that no one will talk to him anymore.
- The Librarian: This is the person you let handle all your documentation. They’re usually OK in the coding department, but never much beyond the Droid. They do put great comments in their code. My favorite use of the Librarian is to send them to meetings and make them take notes, write requirements documents and run post-mortems. Librarians usually have amazing recall when it comes to facts and meetings, and are a great asset to have on a team.
I’m sure there are some I’ve missed… anyone? Any guesses as to which one I am?