Many of the things written below will seem trivial, but I still won’t omit them so that the picture is complete.
Bureaucracy, namely, writing job descriptions, drawing up a contract, coordinating staff positions, allocating a budget, etc. are not within the scope of this article. The issue of choosing the outsourcing / in-house format is also not considered in the article.
Why, in principle, spend time on this topic? Hiring a qualified specialist is an expensive thing. The price goes like this: external recruiting costs (hr) + internal recruiting costs (team) + onboarding and onboarding + salary and various budget contributions. And if an employee with a salary on hand, for example, 100 thousand rubles. leaves a week after hiring, has not actually done anything yet, then the organization’s costs for finding, hiring and adapting this employee can be, for example, 150-200 thousand, of which the employee will receive only 25 thousand. Hiring 3x-4x ” weekly” employees can turn into a very round sum. Here is an iceberg.
The task of hiring a SA for a project is quite narrow, its boundaries are:
select a system analyst (hereinafter SA). Those. not a business analyst, not a cross-functional analyst, but a system one is chosen.
choose a CA for a specific project. Means that the CA must have specific knowledge and skills specific to the project.
choose a large organization. This is important because large organizations have bureaucracy.
I’ll make a reservation right away that there are different analysts: business analysts, product analysts, system analysts, data analysts, etc. We’re talking about SA here. If it is simple to describe and describe in one sentence, then the SA is a translator between the customer and the developer. For CA, the customer can be both the business itself and the business analyst. Based on this definition, we can say that the SA is at least able to express itself in two languages: a business process modeling language and a technical language.
So, below I will describe how I approach hiring an employee step by step.
Step 1. Forming a request
Because the organization is large, then the search is carried out through HR – a classic funnel. In order for the funnel to be effective, it is necessary to formulate the request well. This is necessary in order to at least:
weed out clearly unsuitable candidates,
do not filter suitable candidates,
attract the right candidates
The request must contain:
functional responsibilities. Preferably not in general phrases, but quite specific. If the analyst will design analytical cubes and then check them, then I will write: OLAP design, development of rules for assessing data quality, participation in testing,
employee level. For one position, you need a junior, and for another, a senior – you need to understand who to look for,
skillsexpected from the employee (both hard and soft). Can be divided into desired and required,
other important aspects that may attract or repel a candidate. Description of the format of work, motivation, etc.
Of course, in order to prepare a request for a CA who will lead the project, you must first delve into the project yourself.
So the request is formed and sent to HR.
Step 2. Organize the flow of candidates from HR
This means that you need to organize recruitment from your side and interaction with interested parties.
allocate time to process resumes of incoming candidates.
organize the storage of information: who, when, from whom, current status, comments.
Potentially, this exercise can be a great help when analyzing problems and working on bugs.
Usually at this stage I already have a table with a portrait of an analyst in which the evaluation criteria and various notes are written in rows, and candidates are indicated in the columns
Step 3. Reviewing the CV
How do I approach interviewing candidates?
When reviewing the received resumes, I first of all pay attention to systematic and integrated approach. If this is not traced, then most likely the candidate will be refused: how then can he describe the operation of the system if he cannot describe himself.
Compliance with the requirementspreviously given by HR. If I see something that I missed in the requirements, then I edit the request. If the candidate clearly does not meet any mandatory requirements, then I write HR a refusal indicating the reason. If there is no clear answer in the resume whether the candidate meets the requirements, then I ask HR clarifying questions about this candidate.
Relevant experience. Here I look not only at what position I worked, but also what projects I had. Emphasis on recent jobs. If I am looking for a CA for an online store, and the candidate has been implementing CRM at a nuclear power plant for the last 10 years, then the candidate will not fit. But this should be screened out by a recruiter. If it doesn’t work out, then I give feedback.
job jumping. I am not a fan of frequent job changes, but there are always exceptions. On average, I consider it normal to work in an organization for a year or more.
Development. I look at how the training is going on, what courses, how often. One personal growth training in 10 years for SA will not be enough. Conversely, 10 courses in various programming languages over the past six months, combined with work, will make me think about what the candidate did at work.
Adequacy. If a candidate writes that he is the second Einstein and quits his job, tk. colleagues do not understand him, then most likely I will refuse.
There are other things that I pay attention to, but they are no longer so decisive. I will not enumerate so as not to be accused of ageism, sexism, etc. 🙂
Step 4. Interviewing
Everyone knows that you need to prepare for an interview, but it’s not only the candidate who needs to prepare, but also the hiring person. An interesting, competent interview will attract the candidate. And, on the contrary, an unprepared interview can repel (rather should even repel) a good specialist: why climb where there is a complete mess?
Everyone has their own approach, I have this: before I start conducting interviews, I make a portrait of an analyst (table), prescribe all the parameters / questions on which I will evaluate candidates, mark the required parameters, put down the coefficients for each parameter. It turns out a certain scoring model. And then I conduct interviews according to this table, fill in the grades and get a certain score at the output. It is on this score that I compare candidates.
If there is a question in the table, then I must have a short answer, usually I write it in the same place and write it in a comment to the cell. And, if the candidate does not know the answer, then I tell him the answer. I consider this an honest approach, because the candidate is wasting their time and is entitled to take something useful out of the interview. Plus, this approach convinces the candidate that he will be able to develop in this place. For many, this means a lot. The main thing here is not to go too far so that the candidate does not leave the interview with an exacerbated impostor syndrome.
As for the components of the analyst’s portrait, the table can be conditionally divided into components:
subject area project. If the CA is being sought for a bank back office, then you can ask questions, for example, “tell us the structure of the bank account” and the candidate must tell about the first order account, second order account, currency, key, …
for SA, then there must be a block by requirements management. This will include various BPMN, UML, ITIL, IDEF, functional/non-functional requirements, etc.
next block by software development, issues such as software life cycle, development methodologies, testing, etc.,
the next block is technical issues project specific. For example: SSO, REST, HTTP 2.0, regular expressions, normalized/denormalized database, autonomous database transaction and others.
questions about applied software. If the project is task-tracked in Jira, the documentation is in Confluence, the API is described in Swagger, then the candidate who is a confident user of this software should get a higher score than the one who led the tasks in Excel, the documentation in Word, and the API is generally done by developers .
block to check softskills. Here you can make up some set of questions, but you also need to pay attention to how the candidate answers. Usually I pay attention to conflicts, attention to details, systematic thinking, competent presentation of thoughts. I also propose to reflect, to speculate on the topic of how the candidate evaluates himself. It’s always interesting.
criteria health assessments. The work of SA can be quite monotonous, so often people burn out. It is very important to feel it. I am also trying to clarify what can carry potential risks for the candidate’s work, and, accordingly, for the project: from health conditions to bad habits. The matter is delicate here… And even if you ask the candidate a direct question: “Do you have sick relatives who need to be looked after around the clock”, then it is not a fact that you will receive an honest answer. So let’s develop empathy 🙂
questions about development. Here about plans, about books read, etc. I do this at the end of the interview and see what the candidate has to say. If a candidate has not taken any courses for many years, but says about plans that he is about to start a SQL course (and earlier he could not answer the question of how union differs from union all), then most likely I will consider that the candidate is cunning, flowing downstream and I won’t give him a plus sign for development, but I’ll also lower my rating for honesty 🙂
Well practical tasks. There is always a task to check hard skills, for example, compose json for a specific case, or give a string with a regular expression and ask to read it, or solve the problem of compiling an sql query using group by having count. I always dilute practical tasks with tasks for ingenuity. For juniors, in which I plan to invest, this is often decisive.
The interview itself lasts quite a long time, from 1.5 to 2 hours, and it is tough in format: question and answer. But the candidate is also tested for stress resistance. Sometimes candidates, having reached practical tasks, give up and refuse to do them. And there are those who thank for the interview, taking something valuable with them.
Step 5. Summing up
After conducting a series of interviews, I compare candidates according to their assessments within the framework of a scoring model and choose the best one.
PS: and in the end, I would like to note that it is important not only to find a specialist, but also to keep him, because. the price of hiring is high, as I wrote earlier.