Jai’s Weblog – Tech, Security & Fun…

Tech, Security & Fun…

  • Jaibeer Malik

    Jaibeer Malik
  • View Jaibeer Malik's profile on LinkedIn
  • Subscribe

  • Feedburner

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 29 other followers

  • Archives

  • Categories

  • Stats

    • 379,210
  • Live Traffic

Is the cheap developers really cheap?

Posted by Jai on January 25, 2009

Clothing and toys are manufactured overseas. So why not make software there too, where IT labor is cheaper? The question we are going to discuss here is “Is the cheap developers really cheap”. How many times we have heard this ‘to chip in the cheap developers’ or may be I made it up in my mind.

The first question that comes into mind of people while going for these cheap developers is the quality. Can we get the same quality product from these cheap developers? Are they capable of handling it? And certainly few of the major shots try to catch this nerve and play the rest of the selling game. But sometimes the ground reality lies somewhere else, up to some extent. Whoever match these realities and expectations comes out with flying colors in the game. We will also look into the problems or perception issues and also how some players manage it.

How to get cheap developers?

Whether you are working onsite where you have been put by your outsourcing company to work with or under client’s eyes or you are there by body shipping. Both way it does not matter, the point is somehow you are paid less to get the job done at cheap rate.

  • Body Shipping:
    • Get some consultant to sponsor your visa and you go onsite. The consultant is not worried how much and what job you are getting but the point for him is that how much profit he is getting from your contract. The client is also happy in getting you at a cheap rate and job is getting done in front of his/her eyes. You do the job by putting extra hour or compromising somewhere else otherwise he will get some one else. And still you are getting paid less but better than back home.
  • Onsite Assignment:
    • Some how landed there from your outsourcing company, may be lucky enough or by doing some politics back home. Still the expectations are same to produce the same quality code and work same hours each day and sometime even more.
  • Distributed teams:
    • Pretend to work as a team but still somehow back in mind the concept is still of cheap labor and not up to the mark developer and not producing the same quality code. Different culture, different skills set, different way of working, different pay for the same work, different perception about the work done by each other but at the end both try to show to be happy on paper.

Different Players:

On a broader level the numbers versus quality management by different players:

  • Bigger player/ Large Organizations:
    • There are many large organizations in the game for whom the numbers matter more. They will be having only few subject matter expert to keep an eye on the things and large pool of these cheap developers to get the big chunk of the job done. When it comes to quality these experts are exposed to the client not the bulk number, the track record of the organization handling big projects plays bigger role here. Now it depends on these big players that as an organization internally how much emphasis they give on quality issues and the efforts/money put by them to improve the things.
  • Small players/Outsourcing Organizations/Distributed Development Organizations:
    • These small players focus more on the quality rather than the numbers to get into the game. They call themselves master of what they provide or do. They target small clients emphasizing on quality work, very flexible, work very close to the client and promising the success of the project. Being small players they have to prove themselves continuously and have to be on the toes to focus more on quality cheap developers. They focus on providing brilliant and top qualified developers from the available cheap developers. And finally making profits in the process.

Different perspectives:

Lets have a look at the different perspectives from each party:

  • Cheap Developers:
    • Anyhow you get paid. They try their best to deliver on deadline and keeping the client or the other team members happy in terms of job done. In very large teams you do your part and you are going to produce as much code as possible, as fast as possible, to the minimum acceptable level of quality imposed by your managers or to a lower level, if you can get away with it. Usually, the outsourcing companies do not encourage their development staff to invest time in personal development, in deepening and broadening their skills. Generally they are unable to afford to sponsor the increase in knowledge and experience required to turn a junior programmer into a skilled one. This means that high-level skills are acquired and applied piecemeal, if at all, by developers working in less developed economies. There is enormous time pressure to produce quality software in a shorter time frame. At the same time, developers must not sacrifice quality for speed. For the smaller players, as they are selling the services in the name of quality they try to put this structure in place to focus more on the quality issues, comparatively, but being smaller in number, the other factors comes into picture like money.
  • Client or onsite team:
    • As soon as there is a possibility to get something for nothing the usual approach in search for developers is a choice of the lowest price. The logic is understandable enough, ‘Why should I pay $1000 for this bit of software if I can find somebody that will develop the same for as much as $200?’ Is it true? I bet it is. Usually in distributed teams, the company has pushed the policies on them to work with these cheap developers and they do try to accommodate it somehow but the real difference is visible many a times and lot of times it is back in mind that both are not at the same mark but still all try to work as a team.

Where does it lag?

Now where does it lag that the whole system of these cheap developers make others to get the perception of not up to the standards. If both of them reads the same book of standards and principles while talking about quality, don’t these cheap developers know about it or they don’t care to follow these.Are cheap cheap developers really cheap in terms of quality of the work done? What is lagging that makes them to fall into that category, lets have a look at few factors on broader level.

  • Lack of system to encourage skills improvement

    • The outsourcing companies do not spend enough to get these people skilled. Either they don’t do it regularly or they don’ t have the system in place at all. And generally it is projected as individual responsibility rather than organization responsibility.

  • Lack of motivation

    • They are not enough motivated. The general idea is that you are getting paid and the job is getting done for the day and there is lack of bigger picture that what you want to do.

  • Usual mechanical job

    • May be, it will take some time to realize the differences between the mechanical job and the IT jobs. Very commonly people get into IT because there are no other jobs available and sometimes it takes time to understand the difference. Lets see if the mindset of this crowd change over time.

  • Lack of functional/domain knowledge

    • At least in bigger teams, you only work on the piece of the code/functionality you are assigned to. And generally people don’t care or don’t put efforts to gain the functional or domain knowledge about the project which in a way also impact what you deliver.

  • Lack of knowing the big picture

    • Usually they lack to know the bigger picture and recent happening/updates in the IT world. Their usual focus is on the technical part they do in day to day work.

  • Cultural differences

    • Well this quality perception may be inbuilt for them ,because of what they face in their routine life the compromise on quality services etc.

  • Lack of feel good factor in the success of the project

    • May be, lack of enthusiasm toward the success of the project somehow impact the quality also.

  • Jack of all, Master of none

    • The general trend around is the idea that the more you know about many things is better than being master of one. That may be one of the reason why we don’t have proportionate number of subject matter experts.

What can be done?

In the fast changing pace of IT industry back home, people are more focused on the quality aspect these days. Many more organizations are setting up in home training centers and putting efforts and spending huge amounts to target such issues. All need to be open to these new ideas and give enough motivation to these developers. Everyone need to put more efforts and spend more on trainings. We all need to try to change the system around and the perception to get the things going in a good manner.

Few words of caution, I am no way trying to generalize the things but this is also the ground reality that we all need to accept and work around to resolve the issues. Truly, there is no equivalence between “cheap” and “bad quality”, as well as between “expensive” and “good quality”. Lets hope the day come where the perception of low quality about these cheap developers is lost in the dust of time.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: