Recruitment Agents take note

A few times a week I get emails from recruitment agencies, they are are pretty much all along the same lines. The email seems to be a standard template that tells me absolutely nothing of importance about the job and gives me next to zero incentive to find out more.

I’m in a pretty great job at the moment that I’m really enjoying, so I’m not actually looking to move, but had this been maybe about a year ago (before things got restructured) I would have moved if anyone gave me a reasonable incentive for doing so. Based on the generic emails that say nothing of consequence that recruitment agents send out it is better the devil you know than the devil you don’t know. And I really don’t know.

So, here’s an example of something I received earlier this week:

From: <Name-of-agent>
Sent: <date>
To: Colin Mackay
Subject: Possible Synergy

Hi Colin,

We’ve not spoken before, I’m a head-hunter in the <technology-misspelled> development space and your name has came to light as a top talent in the <technology-misspelled> space.

I know your not actively on the market and I would not be contacting you if I didn’t feel I had something truly exceptional.

My role not only gives you interesting programme work in the <technology-misspelled> space but also strong career progression route in a growing business, work life balance, supportive environment, stability and a final salary pension. <name-of-city-I-live-in> based role.

Are you free for a discreet chat about this, what is the best time and number to call you on?

Kind Regards,


<contact details>

This tells very little. She has at least identified that I work with the relevant technology (although sometimes I think that might just be a fluke given the number of emails I receive about things that I’m not remotely competent in) and the city I live in, so I suppose that’s a good start.

Pretty much every recruitment agent send out something similar. Every email I receive says the job is “truly exceptional”, “exciting” or that it’s an “amazing opportunity”. Those words are so over used that more often the email gets binned at that point. A lesson from many a primary school teacher trying to improve her pupils vocabulary is that they can’t use the word “nice” any more and they’ll get marked down if they do.

Nothing here sells me on the idea that change would be a good idea even although they acknowledged I’m not actively on the market.

The agent did not mentioned the type of company. Even if they can’t mention the name of the company at this stage the following would be useful: Is it a software consultancy? a digital agency? a software house with a defined product? An internal software department in a larger company? Which industry is the company operating in?

Some of the answers might turn me off, but it is better to know now than waste time to find out later. Some of the answers may pique my interest, which is obviously a good thing.

They mention the “<name-of-technology> space”. For the moment, we’ll ignore that it was misspelled (lots of technologies have strange ways of spelling or capitalising things, but it doesn’t take long to find out the official way).

They don’t really define what “XYZ space” actually means. There are so many subgroups of technology in that “space” that it could mean anything, including things I’m either unsuitable for or have no interest in. What’s the database technology (assuming there is one)? What is the front end technology (assuming there is one)? Or is the role wholly at one end or the other (e.g. mostly in the business logic or mostly in the front end)? What tool sets and frameworks are involved? (e.g. Visual Studio 2012, include version numbers. I’m interested in progressing forward, but if they’re still on Visual Studio 2008 I’m not interested and it would be better that you know that now). Is the company all single-vendor based (i.e. only using a tool if that vendor produced it) or do they use technologies from third parties (open source or commercial)?

There is nothing about training in the description they’ve provided. That would be a big bonus to me. I already spend in the region of £2000 a year keeping myself up-to-date (books, on-line videos, conferences, etc.), it would be nice to find an employer that is genuinely interested in contributing in that area beyond buying occasional books or giving me the occasional day-off outside of my annual leave to attend a conference that I’m already paying for. After all, they are the ones benefiting from all that training. However, occasionally emails do mention training, but it is sometimes couched in language that suggests a reluctance (e.g. “as an when required by the business”), but it’s there because the company or agent knows it will attract potential candidates if they mention training.

If the prospective company doesn’t provide training then I’d remind them that it is “Better to train your developers and risk they leave, than keep them stupid and risk they stay”. If the prospective company has a really negative view to training then I really wouldn’t want to work for them – I have already worked with a company that seemed to proactively provide disincentives for any sort of training.

Finally, there is no mention about salary. While, on the whole, I’m more interested in other things, I do have a mortgage to pay. If the salary won’t cover my bills with enough left over for a nice holiday (it’s no fun sitting at home watching Jeremy Kyle on days off) then that would be a showstopper even if all other things were perfect.

Also, stating salary as “£DOE” or “£market rate" is equally useless. Companies have a budget. They might say “£DOE” (depending on experience), but if it goes above their budget then that’s all they are going to offer. If that is not enough then it is better to know that up front than later on.

I’ve also been in situations where I’ve felt that the recruitment agent knew my salary expectation wasn’t going to fly with the hiring company, but strung me along for a bit until finally saying that they rejected my CV. It would be better to let potential recruits know up front without wasting everybody’s time.

While providing more information up front might reduce the interest from some potential candidates, at least they are not going to waste their valuable time and the recruitment agent’s valuable time pursuing something that is not going to come to anything. On the other hand, providing more information might be the catalyst to getting someone who is not actively looking to sit up and think about making that change.

Certainly, if I keep receiving the generic emails like the one above, especially that acknowledge I’m not actively looking, then I’m never going to look unless my current employer does something to make me question why I am there.

We're looking for a front end web developer

My company are hiring, and we’re looking for a front end web developer:

Xedo software are looking for a skilled front end web developer to join their expanding team. The job will be located at the Glasgow Business Park (just off M8 J9) although due to expansion we will be moving to EuroCentral in the future.

1. Technology skill set – You will be able to evaluate new tools and technologies that will aid or improve productivity. You will have used or have a working understanding of these technologies: HTML, CSS, JavaScript, jQuery, C#, .NET, ASP.NET (MVC desirable, WebForms acceptable), Visual Studio 2010, Web Debugging tools such as FireBug & Fiddler.
We also use: ReSharper, CruiseControl.NET, NUnit, ReSharper, SQL Server, TFS, Infragistics Web Controls, AgileZen, MediaWiki, Adobe Photoshop, Adobe Illustrator, and Adobe DreamWeaver.

We develop for various browsers on desktops and mobile devices. You will be proactive in ensuring your skill set is kept up-to-date.

2. Creative design – Ability to create intuitive user interface when presented with a functional website. To be able to work with business users to capture requirements and then be able to communicate these back as functional and technical requirements ensuring these match the business needs.

3. Development – Production of code that is well structured, efficient, stable and secure, using best practices which allows other developers to quickly understand and follow up. We are also implementing a Media Wiki to capture development documentation.

4. User Interface design (UI) – Looking at user journeys, menu navigation, graphical layout and user functionality. Therefore you will be able to assess the user’s needs and methods of using the application, map this and then be able to effectively translate this into technical requirements.

5. Issues Resolution and Tracking Management – You will monitor and oversee the level of issues raised and resolved. Implementing continuous improvement strategies to areas that keep recurring and ensuring a smooth technical support service to your clients. We use a combination of TFS and AgileZen (Kanban board)

To apply for this job, please send your CV detailing relevant experience to

No agencies, please.

The slow handclap

… or how not to motivate your staff

In a previous job we had a team meeting each morning at 9:15. The purpose was to go around the team and in almost scrum like fashion tell everyone what you did, what you’re planning to do and anything holding things up. Occasionally it would also allow people to tell others about some useful new technology or way of doing things that may be of benefit to others.

This was great, however one team member occasionally turned up late. Sometimes due to traffic, but often due to a long running medical complaint that had come out of remission. As a result he earned the displeasure of the development team’s manager.

One morning this manager faced with this individual being late once again instructed his team that any time someone arrives into the meeting late they were to receive a slow handclap. A gesture that indicates dissatisfaction or impatience [1].

A few minutes later the late comer arrived and the team started its slow handclap, egged on by a grinning manager. I joined in. However, something was intensely uncomfortable about it.

The next time the late comer arrived mid-meeting the team again started its slow handclap. This time I didn’t join in. And it clicked what had made me so uncomfortable the first time around. A slow handclap is a gesture designed to publically humiliate the person it is aimed against, which was why I felt so uncomfortable about it.

While it might be perfectly acceptable and understandable for a group of people to spontaneously employ a slow handclap against a politician making a speech, say, the Women’s Institute against the then Prime Minister [2], it is most definitely not acceptable for a manager to employ his staff into joining him in a bit of group bullying.

For a group who have less power it can be effective to help redress the balance to some degree. The WI against the PM, for example. However, for it to be employed by someone who already has power against someone who does not, a manager against a junior team member, it is inexcusable.

NMA – Top interactive agencies

This years New Media Age top interactive agencies list is out. I’m quite please to see that I work for a company that is doing very well in the list.


I work for Equator which is currently the top ranking agency in Scotland, and #41 in the UK.


The bit I’d like to point out, just to blow my own trumpet, is the last paragraph:


“Key hires include Scottish Developers chairman Colin McKay [sic] as senior developer…” – NMA

Recruitment Agents, eh?

Today I received an email from a recruitment agent that seems more than a little mixed up in terms of the skills required.

Dear Colin,

Are you a developer? Are you fluent in Italian? If so then I have a client that would be really interested in hearing from you.

Due to the new venture, any potential candidate would need to be an Spanish speaker ideally bilingual in Spanish. Please note the role is based in Manchester but would involve some travel to Spain.

[Emphasis mine]

In order to spare the recruiter’s blushes, I’ve removed any identifying information. Incidentally, if you are curious the pay was absolutely rubbish!

Go Directly to Funky

In our office we have a notice board for the development team. It was there when I joined and I suspect its original function has long since been superseded by its new function of displaying any quotes, pearls of wisdom or witticisms of the day that members of the development team happen to find sufficiently amusing that it requires a degree of permanence.

So I give you, our notice board:

Developer's Noticeboard

Have fun looking through that lot.

Some advice on CVs

As a lead developer part of my job is to review CVs for developers that we are potentially going to hire. There are, however, some people that I think do put the most inappropriate things on their CV. I’m not talking about the really obviously inappropriate stuff like admitting you won some competition in an Ibiza nightclub on an 18-30 holiday, I’ve not seen anything a salacious as that. I’m talking about the inappropriate things that sound like they should probably be on a CV.

There have been various reports in the media recently about identity theft and CVs. And yet, I still get emails from people with all sorts of personal information in them. I imagine that recruitment agents get even more than I do. But, if you are sending off your CV can you really be sure that you are sending it to a legitimate source?

There is nothing stopping an identity thief setting themselves up as a fake company and posting job adverts. With a website and a number of job adverts posted around an identity thief could receive hundreds of CVs all containing some very personal information.

Recently I’ve received CVs containing details such as Date of Birth, Address, various government Identifiers (National Insurance numbers, driving license, SSN, Passport numbers, etc.), marital status and so on. Enough for someone to steal the candidate’s identity.

In the UK we have various bits of legislation that mean we are not permitted to discriminate on grounds of age, gender, martial status, race, etc. There is therefore no need to put any of that information on your CV. In fact, some hiring managers might dismiss your CV immediately if it includes information like that because they don’t want to be seen to discriminate in that area.

So what sort of information should you put on the CV?

First, this is obviously just my opinion and some of it is limited to software development roles.

I’m interested in your experience, if you have less than 5 years experience as a developer telling me about any formal education is also useful. After 5 years just some one-liners about your formal education will be sufficient. If you did a computing/computer science/software engineering degree then give some information about your final year project (and the vast majority of university course do) then give some information about that. Obviously, if your final year project was a bit vacuous then you might want to hide it.

Any recent training is also useful, and I do mean recent. If it is older than about 36 months then leave it out. Also, it needs to be relevant. Telling me about the evening classes you took in pottery last year may be interesting to you, but it has nothing to do with software development so leave it out, or move it to your hobbies section.

If you have won any worthwhile awards or if you do volunteer work put that in too. If you have given any presentations at conferences or user groups, written any articles, maintain a blog or personal website then put these things in. If you run a web site that is less than employer friendly then make sure you do that under a pseudonym that can’t be tracked back to you, it might hurt your chances, remember that includes your WHOIS entry.

External hobbies and interests can be useful on a CV, and other people think they are a waste of space. I like to see what other things you are interested in, but I’m not going to be too fussed if you don’t include it.

Finally, make sure that you actually include contact information. Just your name, email and phone number is good enough at this stage.

Training Developers

Software development is a very fast moving business and it is therefore vitally important to keep up with what is happening with technology. If you don’t you could be left behind pretty quickly. When the proverbial hits the fan you don’t want to be left behind.

If you remember back to your school days you might remember Æsop’s fable The Ant and the Grasshopper. The grasshopper did no work in the summer while the ant worked hard in preparation of the lean times. When the lean times came the ant was able to provide for himself, while the grasshopper starved. A lot of software developers are like the grasshopper, they are not planning for their future. You might think it unfair of me to tar all developers with that brush, but I don’t mean to. I did say “a lot” not “all”. So why do I think that?

Last year I spent three months trying to hire a developer. I was shocked at the number of developers that I saw had the attitude that they didn’t need to learn anything unless their employer put them on a training course. Some seemed surprised when I asked how they kept up to date with the industry they are in. Most just mumbled something about reading books and articles online. Given the answers to other questions I don’t think they spent all that much time reading.

Software development knowledge fades faster than ever these days. It seems like only yesterday that I was learning .NET 1.0, yet .NET 4.0 is just around the corner. In a couple of years I’ll be using it commercially. Technologies like LINQ to SQL which has only been released will be dead soon, if recent reports are to be believed. That’s a lot of new information to take in only for it to go stale. This week I’m immersing myself in ASP.NET MVC. I’ve been to a talk on the subject at it looks like that’s the way forward so I want to be at the head of the pack. I’ll also be taking a first look at Subversion this week also. On top of that I’ve got a stack of other things to get through.

When I left university I had the arrogance to think that I knew it all and for a few years I worked on that principle. But that attitude eventually caught up with me and I spent some time unemployed partly as a result of that attitude. I am determined not to let that happen again. These days I am acutely aware of what I don’t know. I think that now I am more aware of my limitations I am a better developer. Because I’m more aware of what I don’t know I strive to fill those gaps by ensuring my own education – I don’t let an employer dictate what I should be learning. I am pro-active and go out there and ensure I’m educated. Of course, if my employer wants to put me on a specific training course I’ll accept it.

I did a little calculation last weekend that surprised me. Actually it shocked the heck out of me. Last year my employer spend roughly £200 on training materials for me. However, I spent a lot more. Of the things that I can remember (so I suppose the things that were worth it) I spent £2500 on my own education.

So, who gets the benefit out of this? For the most part my employer gets the benefit. While I enjoy developing software, it is my employer that profits from it at the end of the day.

Most employer attitudes to training developers are that it isn’t worth it because the developer will just leave with the additional knowledge they’ve received for a higher salary else where. Well, I suppose they will if the employer has that kind of cynical attitude. Employers think that they have to find a replacement soon so why bother training a developer only for another company to take advantage of that. But the a lot of the knowledge that is walking out the door cannot be replaced easily. A lot of the knowledge walking out the door is about the employer’s business and that is unique. You can’t hire that in.

There are a number of “solutions” to this problem. Some employers go for the stick method. “If I train you up and you leave within X months then you have to pay part of the training costs back.” The disturbing thing is that I used to think that was an acceptable solution. But it really isn’t. It is a form of financial handcuffs, and the developer being trained is going to resent it. Quite possibly they’ll be off as soon as the handcuffs are removed or simply not accept the training.

The more reasonable attitude, I think, to take about training is to realise that the developer that’s just been trained has increased their market value. So, pay market value for the developer. You don’t necessarily have to do it straight away, give the training time to sink in if you want, but do increase the developers salary within a few months and don’t tie it to anything else. Don’t roll it in with inflation based increase, an annual increase, or other bonus schemes. Make it very clear that the increase is solely as a result of the greater ability or productivity as a result of the training previously received.

Friday was my last day…

Colin and the Evil MonkeyFriday was my last day at Barbon Insurance Group Ltd. A company named after the guy that invented Fire Insurance, Nicholas Unless-Jesus-Christ-Had-Died-For-Thee-Thou-Hadst-Been-Damned Barbon. I kid you not! (Incidentally, the change of name to BIGL, for short, had nothing to do with me handing in my notice. Although I have to admit, I had an urge to come in on my last day with a set of flying goggles, reminiscent of the famous fictional pilot, Biggles.)

Just after I handed in my notice, I left my desk for a few moments and when I returned I discovered an Evil Monkey sitting on my PC. (see right) Oops! My bad! He left again shortly afterwards. No doubt after realising that I wasn’t Chris Griffin.

My boss, Steve, (strictly speaking my boss’s boss) gave a wonderful farewell speech that talked about the projects I worked on and my accomplishments since I started with Lumley, which was then bought over by Erinaceous, which was put into administration and split up, and ultimately became Barbon. He also said that it would have been nice if the business had actually allowed most of these projects to come to fruition and be put live. I completely concur with that sentiment, perhaps I would have felt more useful if it had. As it happens, only one of my projects went live (and it works very well I’m pleased to say). I have to say that I’ve enjoyed working with everyone in the development team immensely. I’ll miss the camaraderie most.

I Survived...My colleagues in Glasgow had a whip round and signed a card (see below) when I was down in Lincoln training up the developers there in how to use .NET. They raised much more than I expected so when I left they gifted me with an Ubuntu Linux 8.4 64-bit server install DVD, a Granny-Smith apple (the only apple I would accept [for the uninitiated it was a joke on my opinion about Apple Computers]), a T-shirt with “I survived Lumley Erinaceous Barbon” written on it (see left), and a Wii Fit. I felt really appreciated that gift because I know that Duncan had spent a lot of time phoning around and ultimately queuing for ages trying to get one, and his wife was most understanding also.

After work, we went to the pub for a couple of drinks where Frank, my immediate boss, joined us after returning from holiday. We headed off to The Spice Garden, an Indian restaurant just across the Clyde to have an excellent meal. I have to say that the staff there are very pleasant and helpful and the food is great. I have to admit that my experience of Indian restaurants has generally not been good, but this place really makes up for it. The only thing that I would give as a negative is that it is directly under the tracks for Glasgow Central Station so you have trains rumbling overhead every two minutes. The best thing is that they do take-out as well. Did I mention the food was great!

When I returned home I was full, but the Wii Fit was beckoning. I decided that I would watch an episode of House first in order to let my food settle, then I could at least set it up and start using it the next day. When I went to set it up, I discovered that it would only give me measurements in imperial units. I don’t understand those but I could not discover a way to change it. After going on line I discovered that by changing country it could change units. Apparently the United Kingdom is set to imperial. There were many forums of irritated people complaining that to use the units they wanted they had to change the language to Spanish – so they had a choice, a language they could not understand, or a set of units they could not understand. I eventually discovered that by going into the Wii Settings (for the whole console) and changing my country to “Australia” I could get the Wii Fit to display kilos and centimetres. However, that wiped out my settings for the Weather and News “channels” on the Wii. Apparently it was freezing in Sydney last night. Well, it is winter over there…

Leaving card (outside)

 Leaving card (inside-left) Leaving card (inside-right)

How I got started in Software Development?

There is a meme going around at the moment and I thought I’d join in even although I’ve not been specifically tagged by it, it looks good fun. I spotted it on Phil Haak’s blog with his response.

How old were you when you started programming?

I was 8 years old.

How did you get started in programming?

When my dad bought a ZX Spectrum in 1983 (It was a Mark II, 48K RAM). I started by typing in programs from the manuals, then by creating my own programs. One of the first I remember creating was to stop my sister using the computer. She was younger than me and the program was something like this:

10 PRINT “How old are you?”
20 INPUT a
30 IF a < 8 THEN PRINT “You are too young to use this computer.”; GO TO 10

What was your first language?

ZX Spectrum Basic

What was the first real program that you wrote?

The first real program that I wrote as part of a job was a tool to summarise and format certain data in a database. What today would be handled by a few drag & drop operations and some mouse clicks in SQL Server Reporting Services took me about a week or so back then. It was written in a language called Magik (yes, with a K)

What languages have you used since you started programming?

Well various flavours of BASIC (ZX Spectrum, BBC, Visual Basic, VBA, etc.), COMAL (used by my high school), PASCAL, C/C++, COBOL, Magik, javascript, C#. There are probably a whole slew of other languages that I’ve touched over the years but not spent any significant time with that I’ve missed out here.

If you knew then what you know now, would you have started programming?

Yes, I would still have started programming. I probably would have done it a lot better though. There are a lot of things I’ve learned along the way that I wish I knew earlier. But, then again, if I never made those mistakes what lessons would I be learning? I guess I would be answering this questions pretty much the same way, but thinking of a different set of mistakes. Or would I? Maybe, since I didn’t make those mistakes in the first place I would end up being an incredibly arrogant insufferable arsehole.

If there is one thing you learned along the way that you would tell new developers, what would it be?

Last year, I interviewed for 3 months to hire a developer. From that, the one major thing I think people need to understand is that in software development you must continue to learn constantly. I was interviewing candidates with 10+ years experience that had pretty much never learned anything since leaving university. Sure, they were using new languages since leaving, but they never learned about how to really use this fancy new object oriented language, or how to defend against SQL Injection Attacks. Most of them couldn’t even write a fizz-buzz program for goodness sakes.

So, my answer would be life long learning. If you don’t want to do it then do something else.

Who do I tag?

It is an interesting set of questions, and I’d like to know the answer from the following people: