BLOG

A Day In The Life Of A Software Recruiter

03 June 2009 by Stuart Cam

I have recently returned from a fairly long stay and tour around Australia and New Zealand. Since returning to sunny England my original plans have changed, I am now looking for contract web-based C# work in Bristol (drop me a line if you have a problem that needs solving).

I've updated my LinkedIn profile and uploaded my CV onto a couple of job boards on the off chance that some work might materialise through that channel. I am starting to wish I hadn't bothered.

Cut to a recent phone call.

...

Recruiter: So I see in your CV that you can program in jQuery?

Me: Sure, I have experience in using jQuery to write AJAX-enabled web pages and...

Recruiter (interrupting): AJAX?

Me: Asynchronous JavaScript And XML, it's a building block for creating rich internet applications...

OVERHEARD SCRIBBLING

Recruiter: OK... go on...

Me: ...so I have used jQuery for a little over a year. I have read a couple of books including jQuery In Action which was written by one of the framework contributors. I understand the CSS-selector syntax, the intentions of the framework and common use-cases. I have commercial experience using jQuery but I am no means a guru. As an aside, I wrote a similar intentioned framework for an e-commerce website around 8 years ago, but since then things have moved on and frameworks like jQuery have filled this space.

Recruiter: So... jQuery... it's a yes?

Me (sighing): Yes.

YOU COULD ALMOST HEAR THE PEN TICKING THE BOX

Recruiter: HTML experience?

...

I'm afraid to say that this scenario has played out over and over again for the last few weeks in different guises with many different recruiters. A tip to recruiters out there - if my CV states a particular technology and you ask me about it don't be surprised if I elaborate! Otherwise why even bother asking the question?

This brings me onto an imagined day in the life of a software professional recruiter:

  1. Wake up. Drink at least a dozen espressos in order to increase the number of words vocalised per minute. You'll need this for #7
  2. Trawl various job sites for CVs
  3. Copy CVs into the company system, why pay to access up-to-date CVs when you can copy and keep them forever? Quantity is everything, work the numbers!
  4. Receive word that Employer-X is looking for candidates, or more likely glean this information from other candidates
  5. Filter suitable keywords from the job specification. A useful tip here is to pick words where all the letters are capitalised. C#, .NET, C#, XML and ASP are such keywords
  6. Search the local pool of CVs using said keywords
  7. Call matching candidates
  8. Match keywords to candidate responses using a checklist
  9. Attempt to gain additional information from the candidate through such questions as:
    • Where else are they interviewing? (See #4)
    • Their theoretical lowest possible rate?
    • How are they finding the market? (what sort of question is this, do they not know their own market?!)
  10. Repeat #6 until candidate list is empty. Remember, volume and turnover is king
  11. Assemble all matching CVs into a big fire-and-forget e-mail to Employer-X
  12. Repeat #2 until 5PM
  13. Retreat to the cave for another nights sleep

Is it any wonder why the success rate of finding work through a job board has such a poor track record?

The problem is that the majority of recruiters finding and screening candidates for software development roles have little, if any, understanding of software development.

Think about that for a minute. Would you be happy if your local NHS service entrusted the hiring of staff to an agency with no experience in the industry? Would you hire a wedding planner to find you a reliable plumber? Probably not, it doesn't make sense, yet this is the reality today.

These fly-by-night recruiters are adding zero value in the employment chain. At best they are simply getting in the way and getting paid rather handsomely in the process. The situation is even more ridiculous when you consider that some companies sign exclusivity agreements with these clowns, forcing all potential candidates through the gauntlet. How does restricting your available talent pool in a knowledge-worker industry ever make sense for a business? It doesn't.

I take some comfort in knowing that I am not alone in thinking this way. Miguel Castro, a well respected member of the programming community rates sub-standard recruiters as one of the second biggest things which annoy him.

The financial climate today is such that recruiters themselves have resorted to sending their own CV's to other recruiters. A room full of recruiters schmoozing and interviewing each other for their own jobs, how cannibalistic!

I must point out that not all recruiters are like this. Some are actually very good and even generate work for candidates through their existing client relationships. I also appreciate that there is a time and a place where an external recruitment agency makes sense. In any industry you have the high-flyers and the bottom-feeders - how unfortunate for us professionals that our recruitment industry has so many of the latter.

Tags: , , , ,

Categories: .NET | General | Web

.NET Is Not A Language

03 June 2009 by Stuart Cam

A response to this article.

First of all, .NET is not a language, it is a framework built on the common language runtime. When .NET was released almost 9 years ago it supported several languages including C# and VB.NET. It now supports many more. Any assertion that .NET is a single language is totally incorrect.

.NET is a large and diverse ecosystem which keeps growing with every release. It's now practically impossible to be an expert in every aspect of the framework, web development using web forms is simply a small galaxy in a very large universe.

If we applied the argument put forward by Greg to construction we'd have the HVAC guys doing structural assessments and the electricians installing carpets. After all, they are all in the construction business, why can't they do everything? I for one wouldn't like to spend money on an apartment in that building!

If only it were as easy as opening Photoshop, slicing a few elements and constructing an HTML and CSS representation. The good old days of web development; lots of outline-glow graphics on black backgrounds, table layouts, static text and little or no meaningful interactivity beyond the URL in the address bar changing. The days when FrontPage made everybody's mum a web designer.

The complexity in building a modern website (or Web 2.0 for the buzzworders out there) is increasing exponentially as consumer expectations grow. Search, SEO, scalability, performance, caching issues, interactivity, cross browser and device compatibility, JavaScript degradation, different encodings, localisation, W3C compliance, DDA compliance... the list goes on and on. Anything more complex than a brochure-ware site requires a broad range of software and web development skills. The developers who can manage all of those complexities and get the project completed on their own are simply not on the open market, their employers realise their value and avoid giving them reasons to leave.

With all of this increase in complexity features like Intellisense are essential. The .NET framework is massive. Why make life difficult by having to remember namespacing trivia? Besides which, the physical act of writing code should be the least of your concerns.

Greg believes that the blame is with the banks and urges us to agree.

Well, I've thought about it and I completely disagree. Maintenance of a software project accounts for around 60% of the total money and effort spent. Robert Glass knows this, that's why it's Fact: 41. Couple that with the bank wanting to remain competitive and I can only envisage a demand for developers, not a mass firing and flooding of the market.

Web development, above and beyond brochure-ware sites, is just plain difficult. It relies on a solid team with diverse skill sets all working together towards a well defined goal. This is a difficult thing to achieve in any business. The role of management is to remove obstacles, identify problems early and to keep the team functioning as best as possible. You need only a small number of architects (the generalists) working on maintaining the technical vision and laying the groundwork but the rest of the work can, and should, be delegated to specialists.

The very best developers, I would argue the generalists, will never have trouble finding work and the chances are they'll be the ones interviewing you. Get that wrong and you'll fill the team with poor and mediocre developers and encounter many more problems.

Unfortunately, finding great developers is not even a problem money can fix.

Tags: , , , ,

Categories: .NET | General | Web

New Screenslave Site

02 June 2009 by Stuart Cam
New Screenslave Site

A few people know that I write music as well as software, a particular trait which is fairly common among software professionals.

I have released a new collection of tracks entitled Those Who Destroy Those Who Create, a rather pretentious and somewhat fitting title! I hope you enjoy listening to them as much as I did writing them.

Tags:

Categories: Music

P = NP

01 June 2009 by Stuart Cam

Jeff Atwood has written an amusing article on the P = NP problem.

I had a little chuckle reading the article (and the referenced blog post), as I've spent a reasonable amount of time struggling with the same problem in the guise of the Eternity II puzzle.

I have since learnt the error of may ways and decided to abandon any hope of finishing the puzzle. Sometimes the fastest way out of a hole is to stop digging.

Tags:

Categories: General


© Codebrain 2017. All Rights Reserved. Registered in England: 07744920. VAT: GB 119 4078 13