How to set up a development department in a company
How to set up a development department in a company
In order to recruit the right specialists, not to go broke on hiring and form a great team, you need to choose the right format for the employment of employees and methods for their control, and then put the process on stream. And also avoid mistakes if the owner or technical specialist is hiring, and not the HR.
But first things first.
Choose the format of employment of employees
Decide how you want to hire employees and form the development department. You can choose from 3 main formats:
Outstaffing
Outstaffing is an employment format in which you get professionals and take on project management. An ideal option if you already have a team of technical specialists, management is established, but there are not enough hands or you need to scale.
Using outstaffing, you can:
- quickly find developers, interview them and connect them to the project;
- maintain expertise within the team;
- self-manage the work process.
You get working hands, communicate with the performer directly and "rule the ball".
Outsourcing
Outsourcing is the rental of employees for specific tasks for a certain period of time. The format is suitable for most companies at any stage of development - both start-ups and large corporations. Ideal for companies with no development experience. The advantage of outsourcing is that you pay only for the result, and the contractor manages the process.
With outsourcing, you can:
- to give the contractor management and management;
- pay for the result;
- get a packed job.
You can hire a full cycle team, where the product will be developed, tested and controlled at each stage of work.
Inhouse
Regular hiring, team building within the company. In-house format is not for everyone, because it takes a long and expensive time to assemble a team. Hiring can take years: it gets in the way when the business demands quick results.
Using inhouse, you can:
- maintain and develop expertise within the company;
- get your staff of developers for any task;
- in the moment to influence the quality of work.
Inhouse is a great option for large IT companies that can spend time and money investing in employees. They are “in the know”, have been working in the industry for a long time and understand who and why to hire. But, if you collect a department without experience, you can do it wrong. For example, to recruit unnecessary employees and go broke on payroll alone. In-house is the most difficult format, because here you assemble a team from scratch. A separate expertise is needed to assess professional skills, build processes, form a team, plan employment and headcount.
Hire employees and assemble a team
Hiring employees and building a team does not depend on what format of employment you have chosen. In any case, the recruitment algorithm will be the same.
1. Decide on technologies and resources
The development team may consist of three employees, and may exceed a thousand. To fit developers into the process like a puzzle, prior to hiring, determine:
- what technologies should be used on the project (optimal technology stack);
- what resources should be used on the project - how many employees are needed to implement the product and how long it is worth laying down for development.
Important: to clearly define technologies and resources, have estimates and a project plan with you. Then you will be able to justify each ruble and understand in what time frame and with what forces you will complete the project.
2. Plan the composition of the team
Its content depends on the specifics of the project, scope of work, budget and schedule.
For example, when working with a complex product, they hire a full-fledged team consisting of a project manager, frontend and backend developers, testers, a team leader, a designer, an analyst, a system administrator, and an architect.
3. Get a resume of specialists
Developers should match your experience, technology stack, and other requirements. For its part, it is better to connect a professional recruiter who:
- Pay attention to inconsistent paragraphs in the resume. This will create hypotheses and prepare interview questions;
- evaluate the literacy, logic and structure of the text, vocabulary and conciseness. Usually the candidate writes the code in the same way as he expresses his thoughts.
4. Interview Candidates
To assess the skills, an HR and a technical specialist from your side are needed. At the interview they:
Find out who the candidate has worked with. Did he have a colleague who reviewed the code, shared his experience, paid attention to the spaghetti code;
appreciate his experience. They will find out how many projects he had in progress, how long, at what stage he connected, how many projects he completed and whether they are “alive” now;
check the candidate for the stack of technologies and skills. You need to pay attention to how he talks about it. Does he just list skills or talk about them in conjunction with specific projects and tasks? Clear, adequate answers are a sign that the candidate will quickly and intelligently delve into the work.
It is better to refuse a candidate if he did nothing from scratch, but performed simple tasks and only supported the project. If you have a long-term project, a candidate who has only worked on a similar project for a couple of months will not be suitable.
5. Adapt the employee
When the developer is on your team, conduct onboarding: give access, show how the processes in the company are arranged, explain where to accept tasks and report. Conduct a code review for each issue and arrange for feedback to be exchanged so that you can quickly correct the work of a beginner.
What is important to remember when forming a development team
Outstaffing is fast and convenient. Plus, the expertise remains with the customer.
Outsourcing is fast, does not require competencies, but is more expensive than outstaffing. The expertise remains with the contractor.
In-house — expertise remains within the company, but recruiting employees is expensive, time-consuming and difficult.
Use outstaffing if the company has IT processes and management is well established. And outsourcing, if not. Inhouse is suitable where development tasks are “on the flow”, and the company itself is firmly on its feet. We recommend that you contact https://djangostars.com/main/ . Otherwise, you run the risk of spending your budget inefficiently, hiring unnecessary employees and getting a development department for crazy money.