IT outsourcing: Java, С#/С++, .NET, Python, JavaScript, React, Go

Seldemirov Aleksandr / 28.04.2020

Episode #4. Roles and Responsibilities in an IT project. Why are all those roles necessary (Team Lead, Project Manager, Product Owner, etc.)?

Roles and Responsibilities in an IT project. Why are all those roles necessary (Team Lead, Project Manager, Product Owner, etc.)? 

Sometimes big number of roles scares a customer. A question comes naturally, are all those roles, which we describe at the stage of project discussion, really necessary? 

In one of our previous videos we mentioned, that our customers often ask whether they really need all those roles, which we describe at the stage of project discussion.  

Today we are planing to talk about the tasks which are important to accomplish in any IT project, and about the roles (there are about 20) which are called to fulfill those tasks and make the project done within decided time and budget frames, and with the quality satisfying customer’s demands. 

Meanwhile, we will discuss complex IT projects which do not have standard solutions. Especially such projects clearly show an importance of the whole variety of the roles.   

The real case to demonstrate the roles of IT projects.

About one year ago, one corporate startup company in the property development field approached us.

They had a following task:  

An estimator-engineer has a CAD-project of a shopping mall or a business center, or a residential complex. He needs to calculate a bill of materials. 

To do this he needs:

  1. To make a list of all materials and utility systems which are used in the project.
  2. To select proper materials according to the technical characteristics from the producers’ catalogs.
  3. Based on the list of materials, to contact dealers and suppliers, and receive their price quotes.
  4. Then, based on these price quotes, to make a bill of materials

This is a standard procedure which usually takes from 2 to 4 weeks, sometimes even more. Everything depends on the project’s scale and complexity. 

The task we received was to shorten that process down to 2 hours. Such request is quite relevant not only for the Russian market, but for the international one as well. 

High level questions that had to be solved during the project implementation. 

  1. How long would the project take and how much would it cost?
  2. Which skills do we need inside the project and whom would we outsource?
  3. How to define a range of primary functions, which we would not be able to start without?
  4. What roles will the system have?
  5. Will it be used by private/ corporate customers?
  6. Is it necessary to maintain several projects simultaneously and keep their change records?
  7. What feature sets will be implemented in the accounts of an engineer, a manufacturer, a supplier?
  8. How will they be able to interact? 

In the stage of the development project organization, it is necessary to understand and do the following: 

  1. To collect requirements and wishes of all who is involved in the process, in order to avoid surprises in the end, and to prevent forgetting someone or something.
  2. To understand which steps and processes are to be automated, and which are to remain manual.
  3. To make thorough UI design, i.e. to define set of pages and screen forms and to assign functions to them. Make sketches accordingly.
  4. To find a designer solutions for the external appearance.
  5. To develop an architectural decision, a data model,  select a software stack.
  6. To estimate speed-torque curves/load parameters (a number of simultaneous users, data volume).
  7. To define a format of workspaces (a rate of mobile and desktop users).
  8. To make a project plan (even agile projects need it).
  9. To organize a developer life cycle management process, starting from the shared access to the code up to building the solution and system deployment.
  10.  To organize management of servers and SDKs.
  11. To organize a testing processes (functional, user acceptance, load).
  12. To define an amount of documentation required for users, for support service, for developers, etc. 

Who is responsible for all these tasks, and how not to miss anything?
How to properly assign responsibilities to roles? 

Today we will just enumerate all the roles required for a project, and in the next article we will show how responsibilities are distributed among the roles, and how roles interact with each other.   

It is necessary to remembers that number of roles does not depend on the number of team members. There are about 15-20 roles, but there are teams of just 2-3 people up to 15 or more members. The smaller the team the more roles each team member will play. But if we skip just one role, the whole puzzle will collapse. 

We can divide all roles generally in three blocks:

  1. A ‘locomotive’ roles that pull or push all others to the goal.
  2. Industry expertise / product expertise / business model expertise
  3. Production expertise in implementation / development

Locomotive

1. Customer/Owner
2. Product Owner
3. Project Manager

Industry expertise

4. Team Lead
5. Product Owner
6. Business Analyst

Production expertise

7. Architect

8. Tech Lead / System Analyst

9. Developers

  1. Front-end
    1. Back-end
    1. Integration
    1. Full-stack
    1. Mobile

10. DevOps
11. UX designer
12. UI designer
13. QA (tester)

  1. Functional
    1. UAT
    1. Load

14. Tech writer

Latest

Reading lists
Seldemirov Aleksandr / 28.04.2020

Episode #5. The 'Locomotive' Roles in the IT project. What is a difference between O/PO/PM/TL and why are they all necessary?

Today we will talk about a responsibility assignment matrix. We will also discuss in more details the roles which in the previous article were named as ‘locomotive’, which are pul ...

Seldemirov Aleksandr / 28.04.2020

Episode #4. Roles and Responsibilities in an IT project. Why are all those roles necessary (Team Lead, Project Manager, Product Owner, etc.)?

Roles and Responsibilities in an IT project. Why are all those roles necessary (Team Lead, Project Manager, Product Owner, etc.)?  Sometimes big number of roles scares a c ...

Seldemirov Aleksandr / 28.04.2020

Episode #3. Can we trust outsource developers? How do we select a contractor?

Let’s discuss the mental barriers which most entrepreneurs, owners and directors encounter when they hear the word "outsourcing."  Lack of trust:I don't understand how man ...

Seldemirov Aleksandr / 28.04.2020

Episode #2. Outsource vs Development Team in the Company. Advantages and Disadvantages

Why and when you would hire an outsourced teamThere are several hidden advantages of outsourcing which we constantly use in our own company.There are preconceptions about outsourc ...

Seldemirov Aleksandr / 28.04.2020

Episode #1. What are the current events on the IT market? Remote work and the concept of distributed development. The future of the economy in a digitalized society.

All of us realize the reality of irreversible changes in the world around us. The majority of companies in the world are entering or already have entered the world of online busin ...

Seldemirov Aleksandr / 02.02.2020

BIMLIB case. BIM-content platform

Case: BIMLIB — Building Information Modeling Library Customer: A construction holding Task: Create simple and convenient system of quick preparation of a bill of materials f ...

Seldemirov Aleksandr / 15.01.2020

ERP for Business. Do I really need it?

Pondering over prospects of ERP platform integration into your business, you need to understand precisely which tasks you are planning to use it for. Do you evaluate your manuf ...

Seldemirov Aleksandr / 18.09.2019

Teamwork and roles in IT projects

Any project goes through initial overview steps, called “presale”: Conceptual foresight of the output productEstimated project budgetTime required for completion of the project ...

Seldemirov Aleksandr / 05.08.2019

How to become a Senior Developer. Path of development.

Where do programmers start from? According to an ideal scenario, a programmer starts his education in school already. Specialized mathematical education becomes a foundation an ...

Seldemirov Aleksandr / 19.07.2019

How to estimate IT system development time?

How can a client be sure that the payment for the development guarantees the same amount of working efforts, and all declared time is used for solving the task? Such a question ...

Seldemirov Aleksandr / 06.06.2019

How to involve a freelancer into teamwork?

Can a solo freelancer become a team player? Personal inclination for a team play has an important role. There are people who are comfortable to work alone and there are those w ...

Seldemirov Aleksandr / 24.05.2019

When is outsource development more effective than in-house, and especially, when should we look for it?

Creation of any project, big company, corporation, as well as start-up can be compared to a construction of a building. For an implementation, we would need the following:  ...

Seldemirov Aleksandr / 24.05.2019

Why do programmers inside of a company say “No” to you?

We are often approached by companies with unfinished software development IT projects which actually need to be redone from the scratch. Our statistics: 3 of 4 projects are like t ...

Seldemirov Aleksandr / 24.01.2019

Fix Price or Time & Material models?

As our experience shows: Fix Price model in general is 2-2,5 more expensive than Time & Material. With T&M model, everyone is satisfied with results and execution ...

Seldemirov Aleksandr / 17.12.2018

Oracle Hyperion Software

Oracle Hyperion Planning Software Oracle Corporation is an American company, the biggest producer of software in the worldOracle Hyperion is a software product line which is ...

Seldemirov Aleksandr / 28.11.2018

International Conference A2IC-2018

Main Hall of A2IC-2018 Conference  During the conference ITQuick Company presented one of the client projects. A2IC covered the following themes: Machine learningArt ...

Seldemirov Aleksandr / 01.08.2018

Development Principles — Agile and Waterfall.

If we talk about project development approaches we can highlight these two: Agile and Waterfall. These two development models are applied, not only during software development, bu ...

Seldemirov Aleksandr / 31.05.2018

CRM system. Client category 2. Continuation.

Previous articles: CRM system. Selection and setup. General information.CRM system. Client category 1. Continuation. This category of entrepreneurs understands that it is ne ...

Seldemirov Aleksandr / 31.05.2018

CRM system. Client category 3. Continuation.

Previous articles: CRM system. Selection and setup. General information.CRM system. Client category 1. Continuation.CRM system. Client category 2. Continuation. The third ca ...

Seldemirov Aleksandr / 28.05.2018

CRM system. Selection and setup. General information.

CRM is a Customer Relationship Management system. It also can be called a client database. This is not just a database, but a more coherent software solution which, with correct s ...

Seldemirov Aleksandr / 28.05.2018

CRM system. Client category 1. Continuation.

Beginning is here: CRM system. Selection and setup. General information.   Category 1. Very cool guys. As the best, they keep their data in a cloud or in the worst c ...

Seldemirov Aleksandr / 30.04.2018

How to solve a problem “URGENTLY”

We always want to solve a potential client's problem. In the beginning, we are trying hard to communicate with a client in order to clarify details, because if a client fully unde ...

Seldemirov Aleksandr / 28.04.2018

Sales channels from small to big

It happened that our company has been working mainly with small and medium-sized businesses (from 100 people) which were our clients. We look for clients through various channels ...