Projects after all have a predefined life. They born, grow and finally die when project completes. Software projects are no different. In fact most of the software industry is based on project work. Software professionals are recruited to work on a project when a project is going to start. When project ends, software professionals working on that project need to pack their bags and look for another project to work on. If their company has any other project for them then it is fine or else they have to sit on the bench till they are selected for a new project. If they are contractors or self employed then they become unemployed till a new project comes along and they are hired to work on that project. This results in semi-employment to temporary unemployment for the software professionals.
This kind of unsteady work environment is detrimental to software professionals. Contrary to other industries where people have steady jobs, software professionals face many ups and downs in life because of the unsteady work environment in which they work. What can be done to improve upon this situation?
This kind of variable nature of the software industry not only poses problems for software professionals but it also impacts software companies severely. they end up having variable revenues and uncertain future. So many of these software companies have come up with certain strategies to minimize vagaries caused by this nature of the industry. This in turn also helps software professionals who are working as employees in those companies in many ways. Let us discuss these strategies and how it impacts the software professionals.
Most of software companies have a pay package for its employees which has a fixed component and a variable component. When any employee is working on a project then he/she also is eligible for variable component as well. When he/she is not working on any project and in fact is sitting on bench then he/she does not get this variable component. This way, the company minimizes its risk. The down side of this strategy is that employees get less salary when they are sitting on bench. The plus side is that employees at least are getting a salary even when they do not have any project work to do.
Large number of projects
Small software companies have a limited number of projects. When a project finishes, company faces a problem in shifting employees to another project as getting new projects takes time. So employees working in smaller companies have larger bench time compared to bigger companies where a large number of projects are available to be worked on. Larger companies have a better chance of pooling employees and projects together and keeping bench time to the minimum. So employees working for larger companies have an advantage as they have more chances of getting most of the variable pay on top of their fixed pay.
In the next part of the article we will discuss a strategy which I like to call “mass servicing of projects” akin to “mass manufacturing”.