We have closed our latest recruiting period the other day and I am delighted to report that we hired two new developers – for a small ISV like Vamsoft, that’s actually a big number.
Recruiting new devs is particularly hard here for a couple of reasons, because the market is small and because we were looking for specific knowledge and attributes that reduce the numbers further. The point is, that we are looking for developers instead of programmers. Erik Sink defines a developer as someone “who will contribute in multiple ways to make the product successful“. That is correct. If your company is large enough to hire specialists to cover every aspect of the development, you can probably afford hiring coding specialists (programmers) who do nothing but translate design to code. A small ISV, by definition, is small, so you need people who can do more than writing code.
But how do you know if one is a developer? We believe that the answer lies in live interviews, which include a test to measure the knowledge and free discussion to measure other qualities. Of course, live interviews take up lots of time (1-1.5 hours usually), so we could not invite everyone, so in the first round we filtered out those who did not caught our attention (see advices below) and we asked for a source code snippet of a personal project from the rest.
The good developers I know have their own consistent coding style. It may be very different from how our code looks like, but it should be reasonably clear and quite possibly elegant. Lack of these qualities are pretty bad signs. Also, note the “personal project” part. I can hardly imagine any good developer to have no personal code and even if she does not and she cares about taking our job, she could write something in half an hour that impresses us. Our experience shows that this filter works extremely well.
As for catching the attention, we received a bunch of poor CVs and had rather mixed experience on the interviews. I collected a few random advice that could have made it better, so the rest of the article is for the job seekers out there.
Dear Job Seeker,
The person who reviews your CV will spend only a short time with it, probably less than one minute: write your CV with this in mind. You probably have to spend a couple of hours with tweaking, but the difference that a good and a bad CV can make is enormous. If you wonder what can make your CV better, read a few random thoughts below. Some may sound obvious, but I should note that these are built on actual experiences.
- Get the grammar in your CV right. As a software developer, proper grammar is probably not the most important asset that you can offer, but the fact that you did not clean up typos and grammar mistakes from your CV tells us that you do not care. Companies want people who care for the quality of their work. Use a spell checker or ask someone to help.
- Less is more. If you tell us that you are proficient programmer in x86 assembler, Pascal, Delphi, C, C++, Java, C#, Perl, Python, PHP, Lisp, Ada and Eiffel, we will think you are proficient with none of them. Taking a half year class in C# will not make you an experienced C# coder and if you do not know that, you obviously do not know what it takes to be proficient in any language.
- Talk about your achievements. It is nice to know that you worked for this or that company as a software developer, but if you also tell us you that wrote a middleware solution based on your own implementation of XML-RPC with MIME binary transfer on HTTP, we will be much more impressed.
- HTML is not a programming language. It’s called a markup language. If you list it as a programming language, we will think that you have no idea.
- Little lies are still lies. The term “Intermediate English” does not translate to “I hardly speak a word in English”. And no, it is not a good idea to lie about that. 96,8% of programming materials are available in English only and yes, I just made that number up.
- Limit your CV to two pages. It is not that you should compress your CV by 8pt Times New Roman or by tricking with line height or margins (actually, such tricks render your CV unreadable on screen and you reduce your chance by 195%). Instead, customize your CV for the given position. Shrink the irrelevant experiences and emphasize relevant ones, so when the position requires excellent Delphi skills, focus on Delphi and not on C++.
Also, shrink your CV by omitting needless words.
- Format counts. For bonus points, send your CV as .PDF and not as .DOC. First, we might have an older version of Word than you have and it may not deal with newer formats very well. Second, if you use non-default fonts, there is a good chance that we will not have them on our system and your CV will look ugly. PDFs have necessary font subsets embedded.
Also, do not send your CV compressed. We will open your CV several times and doing Save-Extract-Open every time is bothering. If you still feel that your responsibility is to cut back our storage costs, send ZIP. Windows XP supports it natively and no, we do not have WinRar.
- You don’t have to wear a suit, but… “casual dressing” for an interview is not slippers, shorts and your favorite 10-years old Suicidal Tendencies T-shirt either. A clean shirt, jeans and regular shoes will do.
Thank you for listening.