Hiring a Great Technical Team (Part 1/3)

Stelios Gerogiannakis
5 min readSep 12, 2015


You know the 3 most important factors for success in any company, right?

People, people and people.

This is especially true in the IT sector, where there is practically no capital required other than the human one.

Having had my fair share of seating at both sides of the interview table, I am still amazed by how light-heartedly recruiting is taken by many a team/company.

But it must not be so! In case you did not hear it in the news:

There is a global shortage of good developers.

The stress here is on good. And unfortunately the difference between bad, average and good is exponential. So, finding the right people can not be treated as a side-job. It is the most important function and you, as team/tech lead, should treat it as so.

You may be lucky enough to be already working in a leading tech company. In this case you are very fortunate, as after years of excellence, hiring the “creme de la creme”, you are not only attracting the best in the industry but you have also settled for a well-oiled hiring machine, which works well to separate the wheat from the chaff.

Or you may be like the majority of the people out there: trying to setup a quality technical team in a so-and-so company, in a so-and-so IT market.

The following sections are for you: providing some pointers, suggestions and techniques “from the trenches”.

You will probably find that most of the suggestions are just common sense. That is exactly what I think they are; nothing ground-breaking. However, as they say, common sense is not so common. :-)

These posts are not meant to be taken as a gospel, all forming one big process, because “that guy online said they just work”. In fact, I would hate it if these articles made you create a “process” of any kind. My goal for these is to trigger a thought process, perhaps providing some ideas and techniques along the way.

So now that we have these things out of the way, let’s move on to the …

Job description

Ah, yes! The beginning of everything!

There might be an existing company template. Or there might be an existing generic technical role description. And you might be tempted to use either, because, well… we all hate fighting with words (and Word).

However, if you can help it, resist the temptation to just re-use it and get it out of the way.

You must devote some serious time writing and reviewing the job description before sending it out.

Consider the following

  • What image do you want to project to a potential candidate?
  • Why should a competent technologist leave her current role and join your team?
  • What are the challenges you are facing? Why do you need someone good?
  • What are the characteristics you are looking for? What type of person do you want to have as a colleague?
  • Why is your project/team/company better than anyone else in the market at the moment?

To a candidate’s eyes the job description is the CV of your team, your company. So the more time you spend making it appealing, the more attention you will get from the right crowd.

Do not make stuff up, do not lie!

If e.g. you are maintaining a C# backend application, there is no point “promising” that it will be ported to node.JS, if there is no plan to do so. The best thing you will achieve is to have a vacancy in your team, once the new joiner realizes she was tricked. You are better off focusing on the real challenges of the role, e.g. rolling out to 1 million active users, supporting critical transactions, etc

So now that we have a killer job description, we can kick back and wait for CVs to pour in, right?

Well,… not quite!

You see, good skilled people have the tendency of being employed, rather than looking for work. So, unless you count on your good stars, you really need to be pro-active in searching, contacting, poaching, etc good people.


The answer on where to search first is pretty simple: your network.

Good contacts from past projects, skilled people from your professional network, referrals from people you trust in your team or your organisation,… Humans naturally gravitate towards who they feel are similar to them. So skilled, smart people tend to socialize with and know other skilled, smart people.

A lot of companies now have an employee referral scheme. You may have read some mixed reviews about these. Or you may have been at companies, where it was abused. (I worked for a company where a colleague had referred 8–9 people, almost all of whom he had met at social occasions a couple of days before.)

I personally believe that such schemes are just the icing on the cake. If you really believe that your project is great, that your team’s level is high, that your work environment is great, then that is incentive enough to motivate you to bring equally good people onboard to keep the momentum.


If your network is not sufficient, then you will need to broaden your search. In almost all cases this means delegating to someone else to do the legwork for you, a person a.k.a as a recruiter or (more poetically) a head hunter.

If this person really knows his/her stuff, she will have the extensive network of “tried-and-tested” professionals to reach out to fill your role. That is an ideal situation. In most cases, the “hunt” boils down to keyword filtering in major recruiting websites and/or LinkedIn.

No matter what you may be thinking for people in recruitment (yes, there are a lot of bad apples), resist the temptation to just send out a brief of the job description and then expect the world on a plate. Whether part of your company’s HR or an external agent, whether she is getting a bonus per hire or not, the head hunter is most probably a shared resource; they are most probably not searching for you 24/7, but try to fill-in other positions.

Unless you already have an extensive professional network, head hunters will be the ones feeding your “candidate funnel” (more on that later on). You depend on them to reduce the noise and increase the relevance of incoming CVs.
And in most cases they are probably not technical.

So, in order for them to zero in on your “unicorn” candidate (and avoid herding in too many donkeys), you need to

  • make sure you explain your requirements, the technologies and the personal characteristics you are looking for clearly. They are not just keywords on a notepad, but digested information in the recruiter’s head.
  • build rapport with them. They are your friend and ally in this task, whether you like it or not.

Oh, and one last thing

Some companies have very strict rules concerning external recruiters sending CVs speculatively. Make sure you familiarize yourself with your company’s policy in that aspect, before you are tempted to pick up the phone and call one such candidate. You may find yourself in some serious trouble!

This is part 1 of a 3-part series of articles

Originally published at https://sgerogia.github.io on September 12, 2015.



Stelios Gerogiannakis

Life-long learner, happy father, trying to do some software engineering on the side.