The national unemployment rate is 8.5% according to March 2009 report released by the Bureau of Labor. In the state of California, unemployment is at 10.5%. The amazing thing is that even under these conditions I find it very difficult to consistently find good software engineering talent. I had to think about why and came up with a few observations.
The recruiting process is inefficient — I get 6 -10 cold recruiter calls a day telling me that they have the perfect engineer for me regardless of the fact that they have no idea what my company does or what I’m looking for. They actually started randomly visiting the office now. I get at least 2 -3 random visits a month. I post a job on Monster.com, Dice.com or CraigsList.org and I get flooded with random resumes — almost too many for me to even go through. Once your network runs dry — it seems that using an expensive 3rd party recruiter is the only way to go. The means in which we connect hiring managers with perspective workers needs to get better.
Software engineers not prepared for the next generation of problems to solve — One of my areas of expertise is building platform teams and finding the talent to do so is difficult. Most software engineers have been cornered into using a set of technologies that are meant to make their lives easier by abstracting the lower level details. This results in many engineers that are experts of a framework but do not have the skills on their own to build their own software infrastructure. Cloud computing is bringing forth the problem — pushing software into a more centralized, mult-processor problem. Experience building complex multi-threaded software infrastucture is rare. Well, what about the introduction of multi-core processors? This changes the game at an even more fundamental level. What are we going to do with all the code that doesn’t take advantage of multi-processor hardware? Uh!
Is the US not producing enough engineering talent? — This topic seems to be under debate but I do know that 4/5 resumes I get are from non-US engineers. Nothing wrong with that — I’ve hired from all over the world and outsourced in all parts of the world. However, as a father, I hope that there are educational programs are in place to encourage kids to consider engineering diciplines.
The bottom line is that I guess life is good if you’re a good software engineer.