How to hire a distinguish/principle engineer
I got lots of ask on how to hire and retain very senior ICs. And here’re my experience and thought process.
Note that this is actually generally applicable to any IC, but the very senior ones may be worth more of your time.
0. Who are they? What characteristic do they have?
Before talking about hiring and retaining, let’s discuss your targets first. This is critical to help you analyze actions in following steps.
So what characteristics do they very senior people have? I try to list a few major points:
- they are very smart, are deep expert in certain areas— they can be hands-on, but they also need to more junior people to help on execution so they can move on something more interesting
- they are ambitious — they want their own scope, they want to navigate directions and ideas, control their own destinations rather than following someone else
- they usually are very humble and friendly. But occasionally exceptional people have bad temper and not collaborative — you should avoid these people
- they like to be challenged, rather than staying within comfort zone — throw them new problems, the bigger the better; they get bored at keeping status quo
- they may or may not like leading people or managing projects — some prefer working alone, some prefer only developing POC
- they are usually well paid in their existing companies — more money alone is usually not attractive to them
- Don’t rush into it! Evaluate hiring first
First of all, don’t rush into it, especially when you are told to do so by your leadership, and it’s not your idea originally!
Evaluate and decide what level you really need to hire, and whether you really need a very senior (distinguish/principle/staff) level IC v.s. just a senior engineer can satisfy the requirement.
Analyze the requirement and considerations, e.g. including but not limited to:
- required domain expertise and technical experience
- required leadership and communication skills
- required credibility (e.g. open source project titles?)
- required scope and trajectory of the person, aka, growth and retention effort from you (e.g. do you have hire a person to just do one project, or have a ton of room for them in the future)
2. Keep balance
There’re many balances a manager need to take before and during hiring very senior ICs. These questions are
- structure and percentage of the team— how many very senior ICs you already have? are there enough middle or junior level ICs for very senior ICs to lead? It’s usually good to not have more than 30% within team
- project scope and career path — do you or your team have enough scope for them? Do these people have scope overlap (good to have no-to-minimal overlap) or are mostly independent? what about your existing team members who are in short term (e.g.< 1y) to be promoted to very senior title?
I source and screen all my candidates, especially the very senior ones. Though recruiters and sourcers are great, I usually find there are gaps in their understanding and skills which make it harder for them to source and identify super senior ICs.
The most critical thing about sourcing is to figure out the right channel:
- LinkedIn: certainly one of the most useful ones. You can either search key words and technology terms on it, however it’s not very intelligent and accurate from time to time; or use it to connect to strangers or friends’s friends and build your network as talent pool
- Word of mouth: tell people you are hiring! tell more people so they can actually help! I find certain managers really underestimate the power of spreading the words. My believe is that you can only get help if you tell people.
- Domain specific channel: this is the secret source to validate if a manager has deep roots and accumulated experience in the field they are hiring or not. E.g. friends made in some meetups or conferences; people you know thru open source projects; open source projects committer/committee list; people in email group or slack channel of open source project; etc. I see these secret sauces as bars to validate if a hiring manager is qualified or not
4. Negotiation and Hiring
The key of negotiation and hiring is to figure out what these candidates value the most, and get them excited.
The key here is to find out what excites them:
- compensation — just note higher comp is not always the answer alone, so touch on it but don’t spend all your time talking about it, they can do the math themselves!
- personal situation — e.g. are they looking for relocation or a different timezone? do they need help to deal with working visa? do they need to deal with a family situation?
- environment — e.g. are they not well supported or not respected by existing manager/team? Is the current company going south and not doing well?
- interests and challenges — e.g. are they looking for different, harder, more cutting edge tech problems to solve? do they want to exercise their leadership and management skills?
- flexibility and scope — e.g. how they can gain more flexibility and bigger scope? how autonomous they can be?
- open source — e.g. some people really wants to work on open source
Take a personal approach — identify what excites them on case by case, and sell your team/opportunity by emphasizing on those points.
All in all, this is a general framework to think of how to hire super senior ICs. Managing and retaining them is another big topic that’s worth a separate blog.