Global IT consultancy staffing challenge: what would I do in charge?

English-only readers: please scroll down Cyrillic fore-say.

Еще в 13 — 14 своих лет я прочитал, понял и проникся фундаментальной книгой Дейла Карнеги, которая зашла в мое сознание легче и ярче, чем сказки и фентези до того и, насколько могу вспомнить, именно она сформировала мое первое представление обудущей карьере: “Я буду работать с людьми, я этому ОЧЕНЬ хочу научиться”. Конечно же, слов “стаффинг” и “консалтинг” я тогда еще не знал. Что неординарно — ни разу с тех пор эту книжку не поднимал и не перечитывал, но знаю, где она сейчас лежит в папином шкафу, и что еще более необычно — помню ее почти наизусть (видимо, попала в нужный момент и в нужный сектор на " флешку“, раз ее образ не “корраптится” уже большедвадцати лет).

После школы все-таки сложилось так, что работать я начал не с людьми, а с железяками, исходную карьерную идею отложили сначала семья, потом водоворот событий, потом хобби, но вот:

проскроллилось 20 лет... ( а также N+1 других книг и других единиц жизненного опыта),


At this time, while tackling the inherited tech and managing roles in a company, I am also responsible for staffing. Current status quo in our company doesn't require high level of globalization for resourcing or HR processes, but let’s imagine I am to build up and consult on a staffing model and process for over few stages in our development or I am to do so for existing public global IT company. Below is the mix of my practice and vision in staffing.

Having in mind the most common definition of staffing I'd like to expand this term with realities that are specific for nowadays IT organizations. The result will look as a set of five processes (flows) aimed to:
1.Search and hire (recruit) the right people
2.Coach the right people from bright fresh-starters
3. Define, maintain, and cultivate ideology among right people inside
4. “Un-hire” certain people who appeared not to be the right ones on certain stages in the company progress line and vision
5. Develop and cultivate company's brand, mission and ideology outside as the “rightmost employer for the rightmost people”.

"Let me share with you with my own experience“© while reliving in the mentioned processes and their interconnections for the past five years.

Trying to visualize the mentioned staffing processes for consulting businesses and their connections (not specifically for IT btw) with open talents market that I initially presented via a standard flowchart. The result seemed to be dry and boring, and not really visual. Then somehow naturally, probably based on impacts from my past life experience as power engineer I realized that people profiles flow is really similar to a water flow in a closed system. So, I transformed my flow chart into the pool scheme, which you can see here, adorably visualized by Natalie:

And really, we certainly can find similarities to staffing processes:

1. We attract (catch) people from job market flow and other companies and have them through our recruiting or interviewing filter (funnel) to get qualified new hires in the end. This happens the same way as a new water supply would get filtered before entering the pool.
2. We “heat” our own resources by internal coaching applied literally on every layer of the pool.
3. We filter and clean up our own resources, and treat them in the same way as we treat new people that come from the market/hires.
4. We let go of people that don’t fit the company due to any reason in the same way as one would drain mud from the pool.
5. We constantly monitor conditions in other companies, get ours in line with the best ones. Yet some people still leave getting soaked out by jobs market flow.

Here is the additional comments on the flow analogy I got from the very first and most valuable reviewer, Anton:

In reality, there is a lot of “chemistry” going on inside the pool. In the Org of 10K people there is no way to get a clear big picture. Sometimes people are not in the right positions, and we need to monitor and pop them up before they leave us. Sometimes, managers hide good resources since they don't want to lose them. Sometimes people get “stuck” in the pipes. There are “sharks” who eat the best people, there are “whales” that have good people and don't want to share. And as for the external market — the intake pipe is always too thin, so we need to extend it or add some other pipes...

And here is, like in engineering, simple scheme and solution at start becomes the extremely complex structure in a large-scale production. Try to guess how many years of education & trainings one needs to go over before getting control of, let say, WWER reactor on NPP?

That’s where the fun water analogy stops. Let’s look at each of staffing sub-processes in details.

Recruiting and hiring

Recruiting funnel and flow is quite common and standard in IT companies, and usually includes step by step qualification through the following stages (top-down): initial search, profiles screening, technical evaluation(s), hiring or job offer stage.

Just to compare it with reality, here you can see the actual REC flow from a single delivery location. There should be tons of them on the Atlassian market, but most likely not a single one will fit your needs 100% so I’d suggest that you do it yourself or ask for consultancy.

Search & screening

The biggest challenge for recruiters and position owners in IT is usually filling the top of a funnel by qualified leads, which is no easy task in a staff deficient job market.

Most common solution is to have a big gang of recruiting lead generators (leadgrinders) which then would slightly migrate to recruiters positions, or there also might be options to buy external databases, engage agency, etc.

To reinforce a company’s appearance, we found a solution where we add a formal stage of “sales” interview with the most prospective leads that is conducted by a company representative with the very high profile. In some cases even initial “catching” of rare technical specialists on this tough market is done in the same way as executive recruiting, with personalized email messages, Skype invites. It WORKS!

Tech evaluation & hiring interview

In some cases, the most effective approach is to do a mix of sales & technical (professional) interview on the first stage and then organize a follow up with the deliverables exchange by final job offer interview. Hiring rocket science for an IT organization in my understanding is to have recruiters that are capable of going through the funnel with a candidate from beginning till the end. It’s expensive, I know, but It WORKS^2!
1.Recruiting flow standardization is the most challenging point here, it is highly dependable on owners, hiring managers, etc. Solution here should be creating a REC flow per profile/skill set.
2. The most common attempts to automate skill evaluation in IT fail (funny thing, looks like this is based on relatively young industry), automation is OK for pre-screening of a mainstream position, but the process of interviewing future “rock stars” should be made by a brilliant senior rock star as well...

Like every hiring manager after hundreds of 1×1 meetings, I utilize plenty of certain, uncertain, and custom approaches in interviewing/staffing processes in my command. Have to admit, I mostly do this in a manual control/own intuition/custom format, while forming & documenting a systematic approach still stays just a dream here. Full description of it will end up in a book one day, whereas now I'll try to share the basics.

One of the simplest but most effective things is definitely constant & interactive feedback/materials exchange/communication offline after the first interview with prospective applicants. Readiness and attitude to home task (I prefer ‘case study’ term), communicative approach, response time and format are key metrics here, that — if properly analyzed and processed — bring the most valuable information and make it possible to minimize risks of bad hire. Case study processing is valid for literally any role, the more senior applicants are — the higher bid (position and job price) is on the table and it still keeps things balanced and attractive.

The biggest challenge for a hiring manager would be to find the perfect moment to throw the baited hook and thus make a candidate accept the bid. Then the process will go naturally with adequate responses and support.

Some case study examples I'm going to try to bring in from the top of my head and present them as aligned for positions:
— Software development/testing interns — creating/testing an entry level app
— Project Managers & alike — creating a bid/proposal document from a pre-sale lead
— Recruiter — hunting the existing employee. Without notifying that employee of course, helps to check loyalty in a meanwhile:)
— Financial — develop an outsourcing pricing model & funds flow

Another case with software engineers that I’d like to mention is a peer-programming session of creating or reviewing a simple unit/module. The challenge here would be to have an extravert coding guru nearby on your side as such people are the best assets. Pure tech interviews usually are pretty boring and could even be worse if sides start arguing about which approach to take, which absolutely doesn't show effectiveness and pace of work, and standard tech questions in any common field of expertise are known in advance.

After taking the challenge or at least one hour of team work with bright peer, the “right” candidate feels the obligation and interest to develop the case and simply can’t drop off. This entails communication and mutual sympathy if people are tuned to the same wave and finally end up in a candidate accepting the offer.

Modeling and documenting the staffing flow

For a company with over 1000 people, new account/location staffing from inside and outside would be relatively similar, as on this level, the value of a usually trusted 1st connection personal feedback is at least 3rd + connection, though it is minimal or equal to external untrusted recommendation. So, while modeling an overall process, I’d join the flows in the same way as it’s shown on a first chart. Regarding modeling and control tool, I have the following thoughts:

With all due respect & recognition to the specific recruiting and HR management software at the moment, in order to model, measure, report, and control a staffing process in a global IT company I would use Atlassian JIRA as the most flexible and appropriate tickets processing tool.

Setting up company processes, including staffing from scratch is the biggest fun and joy. In this case system development is natural, open for constant changes, and updates on live production as the scale is usually not that big.

Absolutely different approach should obviously be taken if the task for establishing the process is to be done for an operating company of a larger scale. Here the process would be to understand the existing process/join in current state, define flows/metrics, and perform tasks in past mode while keeping things untouched for let's say 1Q. For process definition I'd use SIPOC approach, some quick draft for most expected staffing flow is depicted below:

Supplier Input Process Output Customer
Bench “owners”
Recruiters external and internal
Position owners
Job Description
“GO” criteria
Interview attendance & feedback
Recruiting funnel for external cases
Qualification flow for internal
Presented profiles
Job Description updates
3P contracting
Account Managers
Project Managers
Line/People/Expertize managers

During the second quarter, I'd define and specify requirements to Jira instance setup (including flows, custom fields, ticket/issue types, issue dependencies) based on the updated SIPOC's.

Starting with the third quarter, it would be the time to duplicate process to Jira entity, most likely via API/export from an existing resourcing management system, structure, or DB, tune up skills matrix, and keep a new source as staging for a bench run.

Next and last quarter would be spent on preparing for and performing migration, and trust me, the amount of tickets (staffing position) is manageable by one person alone, even for a 10K people company.

Staffing model structure

The main REC&HR scheme would consist of Jira projects with the possibility of tickets flow in between:
1.Candidates DB project, with a simple workflow and tuned custom fields
2. Recruiting funnel project with the customized workflow to reflect the interviewing process and custom fields scheme so that all utilized parameters are reflected (skills, location, hiring manager, and so on).
3. Resource management project (Employee DB) to reflect skills, all of internal ranks/parameters, etc., connected with financial bench metrics & forecasts in or outside Jira.

Each mentioned project should provide the possibility of mapping tickets that represent actual people profiles across other projects as one of the standard tickets dependencies.

Staffing processes metrics

Full flexibility of table & graph issues metrics from Jira, just as example:

My typical REC project metrics (from highest to lowest level):

Openings by location (pie chart) -> Openings by account (pie chart) -> Project vs Skill set (two dimensional filter) -> Assignee vs Interview stage (two dimensional filter), see simplified example here:

About the same, with the needed specifics to be applied to the bench management project + add up cost metrics.

This will bring you live metric of recruiting process, bench stats, and weekly/monthly dumps as the input to standard management reports, but this it the topic for the next article. Stay tuned!

[Thank Natalia Litvinenko for visualization and styling]

Все про українське ІТ в телеграмі — підписуйтеся на канал DOU

До обраногоВ обраному0

14 коментарів

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

Таки тяжко для сприйняття :( Я выбрал один абзац, «Tech evaluation & hiring interview», хочу знать Вашу т.з., с Вашего позволения.

Like every hiring manager after hundreds of 1×1 meetings...
Я понимаю, что первый контакт — всегда как правило 1×1. Что касается основного интервью, как по Вашему целесообразнее: проводить одно «групповое» интервью со всеми заинтересованными лицами (рекрутер, ПМ, техлид, СТО, — как правило, сменяющие друг друга по ходу собеседования), или же 2-3-4 интервью с каждым по отдельности?
Readiness and attitude to home task (I prefer ‘case study’ term), communicative approach, response time and format...
Я как правило использовал такую схему:
— отбор по резюме;
— если есть вопросы-сомнения (как правило, есть :) ) - короткое, на 30-60 минут «домашнее задание» с просьбой сначала оценить необходимое для выполнения время, потом сравнить с фактическим;
— «групповое» собеседование; если возникают вопросы-сомнения и нет «домашнего задания» — практическое задание на 10-15 минут прямо во время собеседования.
— повторное собеседование только в случае, если кто-то из заинтересованных лиц не смог присутствовать на первом и настаивает; либо предлагаем кандидату другую вакансию.
Что бы Вы улучшили?
Pure tech interviews usually are pretty boring and could even be worse if sides start arguing about which approach to take...
Не соглашусь с этим. Очевидно, либо тех.эксперт не умеет проводить тех.интервью, либо кандидат слишком любит спорить... выводы делать не мне 8) еще вариант — рекрутер нифига не понимает и ему неитересно :) но я как правило с большим интересом участвовал в тех.интервью.

(1) на мое мнение и практику групповые интервью хуже личных, долгий «конвейер» тоже не особо хорошо (специально напрашивался на такие сам — для развед целей) хоть и был готов — но все равно тяжеловато, например у продвинутых немцев хорошая практика конвейер из 6 интервью, все 1о1, правда с перерывом на обед

вот и приходится бедным стафферам балансировать на этом перегретом рынке: и решить нужно быстро и четко, и времени дорогих интервьюеров потратить поменьше и еще не получить от кандидата отзыв на ДОУ — что, мол «мурыжат» и клиента который долго думает не обидеть и т.д.

(2) думаю смогу сказать что бы улучшил, если скажете на какую позицию этот процесс, если линейного но дорогого разработчика, которого еще и нужно уговорить — нужно добавлять мотивационное/сейлз интервью после общего знакомства

(3) тех эксперт которая/ый умеет и любит проводить интервью и если ей/ему их нужно делать МНОГО в наших реалиях обычно давно-давно-давно не тех эксперт) не так ли?

Спасибо... пару копеек.
1. Все рекрутеры как один утверждают, что групповые интервью хуже — клиент типа получает дополнительное давление на психику. Большинство девов говорит, что пофик психиатрия, они рады разделаЦЦо с этим стрессом в один прием. Я считаю, что у групповух есть одно явное преимущество (с т.з. компании): «высокое жюри» оценивает единственное выступление кандидата, т.о. легче прийти к единому мнению. Еще плюс для кандидата: некоторые топовые вопросы не повторяюЦЦа :)
2. Угу .. сопсно так и бывало, я или ПМ, реже рекрутер или тех-лид «продавали» кандидату вакансию.
3. Опять не согласен. В большой конторе кто-то должен проводить интервью, тренировать, менторить и оценивать молодых, проводить коде ревью и аудиты на проектах и пр. Идея состояла в том, что такой тех.эксперт получал погон, доплату и часть своего времени (скажем 20-40%) работал «на общие нужды компании», остальное время — обязательно на коммерческий проект, чтобы не было давно-давно-давно :8) Особенно нервных и тех, кто считает, что на свете существуют только два мнения, со временем пришлось отстранить от интервью, а научить умных людей задавать техн.вопросы правильно оказалось нетрудно :)

спасибо за коменты, прошу простить насчет слога, на русском пишу так же... simple russian в школе не учили)
ну и такой вот ИТ жаргон Киева, живя в этом языке 10 лет и писать получается в «миксе» и перевести полностью уже проще на английский оказалось, да и аудитория целевая (управляющая) все-таки чаще англоязычная, но признаю что получилось тяжеловато, даже после всех усилий Натальи по редактированию, постараюсь выпустить русскоязычный вариант

Very difficult to read, English is not a native language of the author.
On the 2nd paragraph I realized, that author just wanted to show his level of fluent English. As for me all phrases are good, but completely not understood for not English speakers.
Let’s put “A” to the author, his English is excellent!

The phrases might actually be more understandable by non-native English speakers. We can theorize that by knowing the original language of the author (Russian/Ukrainian) we will be more capable of understanding what author meant than the natives.

not a native language of the author.
So what? Globally most of us who write English in IT are non-native speakers.

Извините, ниасилил не смог прочесть статью до конца с первого раза, хотя тема и интересная для меня лично. Чрезвычайно формализованный язык, переведенный напрямую с русского на английский (даже профессионально) — _очень_ сложно воспринимается.


Current status quo in our company doesn’t require high level of globalization for resourcing or HR processes, but let’s imagine I am to build up and consult on a staffing model and process for over few stages in our development or I am to do so for existing public global IT company.
Для английского фразы такой длины не характерны и звучат неестественно.

А как насчет Cyrillic-only readers?

похоже ДОУ продался американцам ...

Підписатись на коментарі