This article is a second part about recruitment in Java world. If you haven’t read first part you can find it here.
As I promised we will cover just one topic- comparing clients and developers expectations, then I will try to show you how to look at 2 real job offers.
Deep into client expectations
If you work for IT industry for more than two years as a recruiter, you can ask yourself a question- does “regular job offer” for particular position today is different than job offer for same position a few years ago? What about expectations of known technologies, about additional tools or infrastructure?
Of course answer for this question is yes. Technologies, methodologies and tools are different now than some time ago. You can expect, that in next two years they will change again. Probably some frameworks will be still in use (in new versions), some will disappear and there will be a lot of new ones. That’s normal situation- you need to get use to it.
How to manage it? First of all try to look at Technology Radar (by Thoughtworks) every month. It’s a place where you can find usage of frameworks, technologies, platforms, tools and techniques categorized as following:
- Adopt -Things that showed up recently and companies should think about using them
- Trial – Still quite new on the market
- Asses – Worth exploring, quite stable position on the market
- Hold – Usually if company use this technology it’s the moment when they should start thinking about migration to something newer
TIP: You can click on every item in radar and check why it is in specific category.
Note that technology radar is published every month so if you can’t find specific technology it does not mean anything- it could be hold and disappear totally, it could never been there, its still to new- even for adopt category. Look at A-Z Radar – maybe you will find history of particular item there.
Every time when you see new item in your client’s expectations it’s good to check it on radar or just search for it in web. You can find out that it can be something interesting and could be attractive for some developers.
Remember that your client have some needs and requests which cannot be easily changed. Your task is to find items that can be potentially attractive to someone among this expectations and try to emphasise them.
What drives developers?
This part is far too complicated so it has to be simplified for this article purposes. If you need to explore this topic more deeply I can suggest Jurgen Appelo’s CHAMPFROGS presentations and articles (Example here, here and here :)). In my opinion the best information about motivation can be found there. Also I encourage you to read chapter about recruitment in Sandro Mancuso’s Software Craftsmanship book (or even whole book).
However, I can briefly describe a few major factors which developers take care about:
There are three kind of developers out there. Those who like short-term projects with fairly new technologies, those who like stable long-term projects with technologies that are known to them and those who just don’t care.
First group can be called ‘explorer type’. They want to touch as many new things as they are able to. So if you have candidate that ask you a few times about some new technologies (Adopt or Trial from Technology Radar), then probably you are dealing with the explorer. So don’t waste your time on them if you have to find someone for long term financial project in old technologies. Explorer will never take such an offer.
Second group is a ‘stable type’. They need stabilization and probably don’t have time or just don’t want to learn new things and technologies. Developers from this category want long term projects so all financial projects or public project can be attractive to them. If you looking for somebody to be a part of short-term project- they will refuse an offer.
Third group just don’t care about project they are working in. This could be result of many reasons- they just want to earn money and don’t care about they every-day job, they’re looking for something else in their next job (for example they want to try new position or they are interested in specific organization culture).
Remember that every developer can switch to another group. Someone can be an explorer type but because of any reason he or she can become stable type or vice versa. Never put any kind of label to anyone for a long term.
Depending on needs this point is what keeps developers on their current position (mostly). One can look for people from whom he or she can learn and almost anyone don’t hesitate to work with friends and people with similar interests 🙂
Simple one 🙂 For sure it’s hard to recruit someone offering salary below current one. But if someone decided to change job and have a few options with salary that satisfies his or her expectations then its not that important to offer more than your “opponents”. Of course it also depends. If someone don’t care about projects, and don’t worry about learning and finding new friends then the only answer is cash. But also you can be sure that this kind of people will change project as soon as someone will offer them higher salary.
Also its great if you can say about minimum and maximum salary offered by client or your company for position that you are recruiting for. A lot of developers don’t even want to loose their time if they don’t know if you meet their expectations. Especially experienced developers.
There are a lot of expectations that can be discussed:
- Position – there a lot of people that can change work only because of position in the company structure. Some experienced testers wants to start as developers, some developers wants to try their chances as project leader or manager.
- Multicultural environment – Some developers wants to work in multi cultural organizations. Possibility of journeys is sometimes an advantage.
- Working hours – some developers see flexible working hours as convenient. Additionally, possibility of remote working can be a big plus.
- Location – Sometimes your office location is also important ;P
- Organization -Some devs don’t prefer to work in Agile culture, some just hate Waterfall. Some hates large companies, some don’t want to trust small ones.
- Benefits – In fact I don’t understand this one- but developers often asks about additional benefits in their job. So private health care, sport benefits, etc. can affect their choice.
In my opinion before you start calling any developers try to analyse factors described above. I’m pretty sure candidates will ask questions regarding these topics. Do not colourise, just give them honest answers but emphasise the advantages keeping in mind which candidate type you are dealing with.
Imagine that you receive description for senior java position. What will you do? First of all ask client about all of described expectations. Be prepared with answers. Then try to find out if client looks for developer to particular project or just for “one of company projects”. It could be hard to find senior developer for “any project”. Especially if he or she cares about projects. If you have possibility try to prepare job offer giving as much information as possible… in points. Try to simplify it as much as possible. Be concrete. You can try with some funny or unusual job offer – this may work, but remember that in the end if you look for professionals, giving all information will be the best option and will save your time in the future. You will receive CVs of candidates that are really interested in this particular position. Otherwise you will recruit 1 person per 50 meetings. Believe me you don’t need a thousand of CVs where half of them will not meet client expectations. Once again: rule is simple- be concrete and honest.
Expectations in real world job offers
Job offer 1, Java Programmer
(Some info about company)
Send your CV to us if:
- You want to work on innovative projects
- You want to use new technologies every day
- You really care about continuous improvement of your skills
- You know J2EE and J2SE
- You have strong knowledge about Oracle Weblogic, RedHat JBoss
- You have knowledge of Spring, Hibernate
- You know about SVN, Eclipse IDE, Ant and Maven tools,
- You have sense of humor
- Programming according to prepared design assumptions
- Create, modify and comment source code
- Solve problems in product environment
- (Few more)
What we offer: