Outsourced Programming logo 2

Body leasing


Body leasing quickly provides a company with IT human resources without expanding the company’s structure.


A professional body leasing provider is a great and quick way to find experienced developers without the necessity to pay for recruitment. Also, developers are contracted only when needed. A professional body leasing company is able to quickly replace one specialist with another if the project requires a change in technologies.

Project assessment >

NowaLed ILL

Industrial light management system


"They were well organized and provided detailed reporting on each stage of the work."

~Szymon Duch
Technical Engineer
NowaLed ILL Sp. z o.o.


Our Clients


Advantages of body leasing

time

Quick start

Our dev team starts working within 2 weeks.

services logo

Wide competences

We adjust the team to the project’s needs – Ruby, .Net, Java, Javascript, Python, React Native, Node.js, Angular, Perl, Visual Basic, Golang, C++ or C# are like a walk in the park for us.

Better fitness

Complex service

We not only code, but also provide consulting services, UX/UI projects, maintenance (SLA), servers, and hosting. At any time, specialists in other technologies can be added to the dev team.

problems

Difficult projects

We excel where the other teams have failed. Your problems are our challenges.

calendar

Work continuity

ImpiCode provides developers when unforeseeable situations occur. We constantly try to expand our knowledge. We are also financing the additional costs of training new dev team members.

contract

Flexible programme contract

A signed programme contract allows the client to place an order for programming services. The client specifies only the hours and order duration.


Body Leasing at ImpiCode

The process

  1. We sign a programme contract with the client, enabling to place orders for programming services.
  2. The client specifies the scope and time covered by the order (for longer periods discounts are available).
  3. We assign a project manager who oversees the project and coordinates the work.
  4. The project manager creates a dev team that can satisfy the client’s needs.
  5. We can flexibly adjust the composition and size of the team to be in line with the changing needs.
  6. At the end of each month, we send a detailed hourly statement of completed work.

The estimation

  • type of project,
  • range of technologies,
  • time covered by the order,
  • the size of the order/scale of demand.

Organization of work

Contract and orders

First, we sign a programme contract specifying the cooperation principles with the client. Then, the client can place both long-term, as well as short-term orders for programming work.

The number of programming hours projected for a given month can be sometimes not fully used by the client. Also, clients sometimes ask us to add new developers to the project for a given period of time. In such cases, we try to meet the clients’ needs. The remaining hours can always be used in the next month if the client wishes. 

An example
The client can order 160 or 320 hours of programmers' work. In some cases, it is also possible to order a smaller number of hours, e.g. 80 h. Orders do not have to be one-off, they may cover several consecutive months, e.g. 320h of programmers' work per month for one year.

Estimation

In our work, we estimate the work required to complete tasks and the entire project. Bear in mind that the estimation of new projects can be very inaccurate at first, but as we talk with the client and learn about the project, expectations, and needs, the estimation is more precise. Such estimates provide the client information about project costs and help us better control the progress of implementation.

Timesheet

At the end of each month, we send the client a detailed timesheet including the implementation time of the dev team’s individual tasks with a short description of the works which were carried out. The timesheet is also used to settle payments with our developers.


How do we start working on new projects?

Onboarding

Only the lead developer is usually involved in the onboarding process, and in some cases is assisted by an additional developer. The lead developer is always the first person in a project, which is why we choose the best and most experienced coders for this position. One of the lead developer's tasks is to identify the technical, infrastructural, and organizational requirements of the project. Such an expert also participates in onboarding to learn about the project, but also to gain access, create accounts, and contact key employees of the client.

Onboarding the lead developer is much easier than introducing the entire dev team to the project right away. The onboarding process carried out in this way is very effective and does not cause much trouble to our clients. The client introduces only the lead developer to the project, and then the lead developer introduces the rest of the dev team.


Design environment

The ImpiCode dev team adapts to the clients’ needs. If a client has its own infrastructure to manage an IT project, we can use it. If this is not possible, we organize the project environment ourselves or use our infrastructure.

As a standard, we use the following solutions:

  • Bitbucket – a code management platform,
  • Jira – to organize work and tasks,
  • Slack – a communication platform.

For clients’ needs, we use:

  • GitHub – a system to control the code version,
  • Redmine – a task management tool,
  • Teams – a communication platform.

The lead developer 

The lead developer is the project manager and contact person in our dev team. In addition, this person is responsible for organizing tasks and ensures that they are properly completed within the set deadline. Such an expert not only manages the project but also works as a developer implementing particularly important or difficult elements of the project.

The lead developer therefore not only performs work according to the client’s guidelines but also independently and proactively solves problems. And if the need arises, the lead developer also presents the client with new opportunities or suggests other technical and business solutions.

Lead developer tasks

Communication:

  • organizing meetings with the client,
  • efficient entry into new projects,
  • establishing short and long-term project goals with the client,
  • answering phone calls and replying to the client’s e-mails,
  • informing the client about possible difficulties or technical alternatives in the project.

Design:

  • transferring project knowledge to dev team members,
  • making key technical decisions,
  • implementing the most difficult parts of the project,
  • delegating routine tasks, 
  • team management,
  • supervising works, including code review.

Communication with the client

Meetings

Depending on the project, client expectations, and the stage of work, we organize project meetings (sprint reviews) once a week or once every two weeks. Such meetings (online or live) usually last about an hour, and their purpose is to coordinate work with the client, summarize progress and determine tasks to be performed in the near future. In some projects, we also organize daily short meetings, usually lasting a few to several minutes, focusing on current tasks and problems.

Communication

Besides planned meetings, our lead developer picks up calls and replies quickly to all e-mails. The client can call or write to the project manager with any questions regarding technical and organizational matters or ideas for a new project.

talking to clients

The organization of dev teamwork

As we mentioned, the lead developer is responsible for organizing the work of the dev team. We place emphasis on a few key elements.

Flexibility

First, the lead developer selects developers to join the team and, if necessary, can replace them during the project. This sometimes happens when a project requires a different set of technologies or a new range of skills. Individual specialists may be involved in the project full-time or only part-time. Thanks to this, we can flexibly reorganize the team to adapt to the project.

Scalability

Whenever necessary, if the client places an order for more hours, the lead developer selects additional dev team members to provide support in carrying out the most urgent tasks.

Continuity of work

The project always involves at least two people (the lead developer and a regular developer) to ensure continuity when one team member is unavailable or on vacation. Also, thanks to this, the risk of delays is reduced. 

Cooperation

We often join the client's existing project team. Then, the role of our lead developer is determined by the needs. Such a person can be treated as an ordinary team member, technical and design advisor, or a sub-team coordinator. Sometimes our lead developer takes control over the entire client's team.


If you would like to find out more about body leasing or you require a similar solution – write to us via the contact form.


Interesting articles