Keys to effective staffing in Information Technology Industry

An Engineering Manager Perceptive

Pawan Powar
8 min readJun 14, 2021

The most important asset in the information technology industry is the engineering staff. And orgnization’s success depends on the staff. But, staffing is always challenging due to aggressive timelines, finding the right skill set, and aligning interviewers, who can balance out staffing activities without impacting ongoing project work.

This article will provide you simple methodology in terms of keys and seed some thoughts, which you can improvise to meet your needs.

Audience

1. Engineering Manager(s) planning to the staff team of > 10 engineers with experience level between 5 to 20 years

2. Manager(s) interested in a holistic view of staffing from the delivery side not limited to staffing but also related to the successful execution of the project

3. Interviewers interested in some tips and tricks

Tip: Best strategy is - Don’t wait for opportunity/approvals for staffing. Go into continuous hiring mode. It will avoid vary need for below process and big bang one-time activity. How to do that? Every team has bottom performers. THINK whether we can move them (bad word would be FIRE) to a lower competency job. And replace with a high skill person from the market.

Keys for effective staffing

Keys

1. Situation Assessment

The staffing owner (mostly, the Engineering Manager, who is going to run the project down the line) is a critical player in this entire process. The staffing owner should assess the situation based on 3 Whats-

1. What is the complexity of the project?

2. What is the longevity of the project?

3. What kind of team needs to be built?

a. Highly competent team

Work is cutting edge and incredibly challenging

b. Mixed team (30% main actors and 70% in supporting role)

i. Commonly used practice

ii. Helps staff quickly, jump start project, and optimize staffing in later stages

c. Meet budgeting needs

Due to budgeting constraints, we need to staff in stipulated time

Different people may have different perceptions around the same situation, what matters most is staffing owner having an unobstructed vision around the objective, planning, monitoring, and execution.

2. Find Pool of Engineers

Nowadays, with bottom-line (/delivery) optimizations, organizations do NOT keep a strong pool of engineers on the bench and big resource management department. It adversely impacts, staffing, when new opportunity materializes. In most cases, it is difficult to find engineers on an organization’s bench and we need to go for external sourcing of candidates.

Mostly, external sourcing is outsourced to vendors by the resource management department. And Engineering managers interact with Vendor through resource management leads. It introduces a lot of gaps around the job description, timelines, skill-set. Easiest way to solve this problem is to bridge communication gaps by bringing everyone on a common forum. Don’t ignore this aspect saying that it is not Engineer manager’s job. If you need highly-skilled engineers, you should do all the things at your command.

A second important aspect is how the staffing owner can activate his contact base to get referrals.

Pro tip: Organizations should provide special attention to the smooth exit process of an employee. It helps to get an employee back.

3. Align Interviewers

Challenge is we are NOT going to get a dedicated team for staffing. Interviewers need to be pulled from on-going projects. The Key is interviewers should have a fine balance between on-going project deliveries and achieving staffing objectives. Some approaches to ease the burden from interviewers–

1. Work with Vendors for better screening of candidates based on the provided job description and ask them to help with level 0 interview

2. Briefing interviewers on staffing strategy

3. Request interviewers to provide a specific time slot of day. And interviewers should look for their replacement themselves (instead of to and fro with HR) if due to some reason they could not take interviews. This small trick will save a lot of administrative cycles.

4. Live tracking system for all stages of the candidate journey. Most collaboration platform now comes up automation tools, which you can quickly (in less than an hour) setup.

Note: All the points from about mind map are not covered in writing, as they are self-explanatory

4. Candidate Selection

The most important aspect of staffing is appropriate candidate selection. Interviewers should think of hiring candidates, which can do a better job than the interviewer does, otherwise, over the years organization’s competency will go down.

There is no silver bullet, but methodological thinking and a clear understanding of where (/not) to compromise, some tips and tricks of the trade can make a job easier. Here are some thoughts for interviewers (some examples are given to highlight points and provoke thought process, you should tweak these as needed) –

1. Understand overall staffing strategy and make necessary adjustments to the interview process

2. Should be aware of where to compromise. Some things may be compromised, provided the interviewer is confident that the candidate is suitable

a. Candidate NOT matching exact experience criteria. Create different work profile, which suits his/her skills and helps the team. For example, senior position hiring has this dilemma. Problem solving / operations is good but doesn’t have domain expertise.

b. Work location: Candidates base location is not the same as other team members location

c. Verbal/written skills (especially English language skills) are not good. These skills can be improved through training and tooling. Communication might not be important for the hardcore coder.

3. Should be aware of where NOT to compromise

a. Shady Past. Some indicators

i. Not promoted for a long time

ii. Out of job for a long time

iii. Frequently changed employer

iv. Poor academic record (especially primary and secondary level)

b. Candidate age is way higher than average team age

4. Decide on the top 3 important aspects Job profile and make sure that the candidate satisfies one criterion out of the below two

a. At least one “A” (exceeding expectations) out of 3

b. At least two “B” (meeting expectations) out of 3

c. All 3 “C”

5. Visualize team fitment

Interviewer (especially the final technical interviewer) should have a clear vision around what exact position (/squad/task etc.) that person can fit in. It is a difficult decision when multiple interviews are going on in parallel, but we need to have a fitment around each candidate.

6. Save Time

Should plan interviews in such a way that rejection related decisions can be done in (say) the first 20 mins. Ask questions, which help to make the decision

a. Asking details about the experience, work is done, NP complex problem, personal questions may result in monolog from the candidate and will not help make the decision in first 20 mins

b. After the interviewer finds (after 20 mins) that the candidate may be suitable, you can ask questions that help you check fitment

7. The interviewer should give real problems to solve

Start with simple problem solving (especially ask to write code) and go-on improvising problem statement and observe how a candidate produces a solution

Tip: Allow candidates to use all tools (google etc). Let give him the feel of the real environment and evaluate how he performs.

a. It may be ok if we allow the candidate to use all the tools like the internet, documentation pages

b. Example — Ask to find the slow running process on the Linux box and gracefully kill a process

i. The solution will start around commands like “top,” “ps -afx” and then “kill”

ii. Opens questioning around different Linux commands, diagnostics approach (what signal to send SIGKILL, SIGINT, SIGTERM?)

iii. How to automate solution through a script

iv. Continuous monitoring (cronjob related questioning)

8. Sale the job profile

A candidate may appear to multiple interviews around the same duration and have multiple choices to choose from. Remuneration plays a key role, but many times, the Engineering manager does not have much control over it. Once, we select a candidate, the final interviewer should spend enough time explaining the job profile, work environment, long term vision with project/organization. All these things, a candidate is going to consider while accepting the final offer. Based on my experience, this plays a key role in the onboarding of a candidate.

Also, once the candidate accepts an offer, there are around 2 months (especially in India, in USA it is just 2 weeks) of the notice period, make sure that you are regularly in touch with the candidate and provide information about induction, some preparatory work, which can help him/her quickly getting up to speed.

Different organizations follow different strategies around candidate selection e.g. online coding test, aptitude / cognitive/psychometric tests before 1on1 interviews, multiple rounds of technical interviews (where each round is dedicated to judging specific aspects of job profile), etc. The best strategy is one that suits your objective, your environment, and your strength…

5. Continuous Monitoring and Improvement

Some key metrics to consider -

1. Come up with projections around the completion

2. Inflow of candidates

a. Is it too high with a very less acceptance ratio — draining down screening, interview bandwidth?

i. It is time to tighten the screws at sourcing

ii. Talk to sourcing team/vendors around Job profile, screening at their end

b. Is it too low?

i. Evaluate other development centers

ii. Long term work from home candidates

3. Gaps at different touchpoints of interviews (screening candidates, Level 1 interview, Level 2 interview, HR interview)

a. What is the acceptance ratio?

b. What is the Level 1 to Level 2 ratio?

Are level 1 interviews making rejections or hesitant in rejection call and Level 2 interviewers are burdened?

c. Are level 2 interviewers making correct compromises?

d. Are we matching remuneration expectations in the industry or acceptance rate is high due to the remuneration gap?

4. Why can’t we jump-start the project with candidates hired so far?

We may not be able to staff everyone and then start the project. We should prioritize staffing, considering we will jump-start project once key positions are filled. If we’re unable to jump-start project, then there might be scope for course correction.

Conclusion

The ultimate objective is to speed up each touchpoint, with minimal compromises and near-zero impact to ongoing deliveries. 5 Keys will help streamline your thought process. Processes, methodologies will keep evolving, based on situations. What matters most is your investment in the assessment of the situation, visualization, and driving some strategy.

(Disclaimer: The opinions expressed in this blog are the personal opinions of the author. The facts and opinions appearing in the article do not reflect the views of organization and organization does not assume any responsibility or liability for the same.)

--

--

Pawan Powar

Seasoned leader in Software Development. Manages geographically distributed engineering team of > 350 engineers. Passionate about continuous improvement.