I think the recruitment model for professionals working in the field of software development is broken. That’s the overwhelming impression I get observing different job specifications and approach of several recruitment agencies. There are more things broken than can sensibly be put in a single post. For now I want to focus on just one, the common, and in my opinion incorrect (or at least simplistic), use of the word skill.
Yes, so many CVs (actually, mine included, to be rectified shortly) give a list of technologies under the section grandly entitled “skills” and the “skills” employers require are often: “5 years of ASP.NET” or “C# .NET 3.5”. Yet the first English dictionary I could find (and a few others I followed up on) give the definition of skill along the lines of:
skill (noun) – The ability to do something well.
So how do you “do C# well” or how do you “do SQL Server well” – these are not actions that you can execute, at best these are technologies that you can use. Even then, we don’t say “I can use my car well” but rather “I drive well”. We focus on the outcome of our actions and not the particulars of how we execute them. I would much rather see the expectations and abilities expressed indeed as skills:
- writing readable code
- creating usable web applications
- designing decoupled components
- selecting appropriate data access layer
- using data access technology with understanding of performance
I hope it changes and yet I have an impression it won’t be soon, after all it would require people who deal with recruitment to understand what software development is really about.