Friday, March 13, 2009

Outsourcing – The Known Paradigm in a Flat World

Various cultures have had conceptions of a flat Earth, including ancient Babylon, Egypt, pre-Classical Greece and pre-17th century China. The modern belief that especially medieval Christianity believed in a flat earth has been referred to as The Myth of the Flat Earth. The Flat earth concept is also mentioned in the bible (ref:Isaiah 40:22).

Belief in a flat Earth is found in mankind's oldest writings. In early Mesopotamian thought, the world was portrayed as a flat disk floating in the ocean, and this forms the premise for early Greek maps such as those of Anaximander and Hecataeus of Miletus. The fallacy that the earth was flat also was a contributing factor in Columbus discovering the Americas. Though we know in the real world that the earth is geographically spherical but day-on-day it is becoming Flat!


As Corporations and Organization’s become multi-locational, multi-nationals and increasing availability of resources, modern communication, internet(world wide web), emergence of modern work-flow systems, global talent, raw material is truly defining the world as a level playing field in terms of commerce, where all competitors have an equal opportunity and equal reach to resources by varying degrees of separation. Modern Corporations aare adopting Global Philosophies of present day Management Gurus – “Diversification”, “Cost/Skill Arbitrage”, “Transnational Competitiveness”.


Organisations are focusing on their core-competencies and are outsourcing non-core activities to companies having core expertise in those competencies. Though for many enterprises outsourcing has became a preferential thing, for some enterprises it is still a proverbial dilemma to Outsource or Not to?

1. First of all, why is it worth outsourcing?
There are several reasons for using out-side services: someone can do something much better, than you (we mean company) and it is cheaper to buy these services than to make everything in the company.
Would Nike be as successful as it is now if it didn’t use cheap labor of Philippine workers? Nike concentrated on its core-competency Branding & Marketing and realized that manufacturing was not its core competency. Would you hire an accountant, create a work place, pay taxes, if your enterprise is not so big and your accountant works efficiently two days per month? Most likely you would buy services of accounting firm.
Everything depends on the tasks you need to accomplish. On the scale there will be the cost, on the other – quality/speed/security.
Let’s consider several situations
Situation 1. You are a big company. Every employee has a computer. You need to automate work of many divisions. You are worried about security; you want to protect your information to the maximum.
Solution: First of all, you should worry about security, consequently, the most responsible people – system administrators should work in your company. They would be responsible for undisturbed operation of your servers, network, and e-mail. It is enough having in your company a small IT division which would be engaged in adjustment of computers, printers and other office equipment. But probably it would be worth using services of local IT company in case financial arrangements show that it is really profitable.
Is it worth hiring programmers who would be developing software for your company, for example, for accountants? It is worth, but only if
- you are a software development company;
- you cannot buy ready software;
- you want to sell what your programmers would develop;
- you found a very talented manager who would be able to organize the work of prospective development division;
- you don’t know what to do with your profit.

Situation 2. You are a software development company. Your software is popular, but the expenditures for its development are still very high. You want to cut down expenditures, speed up development of new versions of the product(s). Or you would like to get new products and increase expenditures not more than by 30% (or less).
Solution: The biggest part of your expenditures is salary and taxes. You can refuse current “expensive” workers, hire a company with cheaper labor cost, and leave in your company the most effective managers who would be able to set tasks and control the process of these tasks implementation.

Situation 3. You are a not very big company, selling your products and services. You need a web site or a software product, but the project budget is limited. You turn to local software companies and understand that their services are too expensive for you.
Solution: You can work with other companies (or freelancers), who can sell these services to you at a low price.
So, you decided to use software outsourcing services, you need to accomplish several tasks then.

2. How can I choose the developer(s)? Russia, India, China, or Western Europe?
Developers can be situated anywhere: in another city, another region, or another country. I cannot elaborate or comment on other countries resource pool except India. The reason for differences is that historically, Indians have contributed towards the growth of mathematics and science. In 498 CE, Indian mathematician and astronomer Aryabhata stated that "Sthanam sthanam dasa gunam" or place to place in ten times in value, which may be the origin of the modern decimal-based place value notation.The oldest known text to use a decimal place-value system, including a zero, is the Jain text from India entitled the Lokavibhâga, dated 458 CE. The rules of Algebraic Math also was invented in ancient India. The growth of the intellect and analytical abilities in ingrained in the Indian Education system. Education in India is also more inclined towards developing Math & Science capabilities. More attention is paid to thorough study of math sciences. Also the Indian education system is very diverse and right through Pre-KG schooling a child is subjected to a lot of analytical and derivative studies. The reason the IT best brains have come from the IIT's and IIM's and Engineering Institutes of India. It is a known fact that Bill Gates has commented on the growth of Microsoft contributed by the best brains from the India. Major IT start-ups which have now spun into muti-billion dollar corporations have been started by Indians in the US. The US Silicon valley is full of these stories of young Indian's from IIT's/REC's starting off small IT corporations in Silicon Valley which gave impetus to the growth of the IT industry decades ago.


Thus, if you decide to outsource some work to some company, we recommend you to confirm the savings against vis-a-vis educational and experience.

3. How can I keep control over the project if the company developing it is situated too far (for example, in another country)?
Refer my previous blog- Deploy Offshoring Success: Define Metrics



4. What if there will be problems concerning intellectual property?
In any case, the person or company that ordered site design or/and development or software development gets the intellectual property rights. But you still need to discuss it with developers beforehand.

5. There can be communication problems, especially if developers speak some other language.
The medium of Higher Education(University education) is English. This does not pose to be a problem when comparing working with other countries like China, Japan, Russia or Phillipines.

6. Time difference may become a problem.
Sometimes time difference between customer and developers can be very sufficient. Nevertheless, we believe that time difference can be a great advantage. For example, if your company develops some project and you decide to outsource some part of work, you can work with the overseas team in shifts, so that programming goes on 24 hours a day.

7. Is it profitable to turn to third-party developers?
The answer is: yes, it is very profitable. First, using services of third-party developers you get high return on investment. Second, you can reduce the need to invest capital funds in non-core business functions, so capital funds more available for core areas.

8. How skilled are the companies acting as third-party developers?
Usually, such companies, especially if they work with foreign companies, have sufficient experience and skills which allows them to successfully operate on the international market of programming and Information technologies. You can view portfolio, clients list, find out the rates and pricing, how the work process is organized. Before signing the contract of long-term relations with a software development company, give some small project to this company and check the result. If everything suits you, you can continue the relations.

9. How do assure that Outsourcing would benefit me or my organization?
(Also Read my blog article-
Deploy Offshoring & Outsourcing Success: Define Metrics)



Saturday, March 7, 2009

9-Key Factors behind a Successful Technical Career

Many engineers think that the path to a great technical career is about technical skills alone.Long back, Bell Labs conducted an interesting study – closely watching the common characteristics among a group of technical professionals who rose to the top. The exercise revealed nine key factors outside just technical competence that differentiated brilliant technical folks from the masses. The study was conducted by Robert Kelly of Carnegie Mellon and Janet Caplan of Williams College. As we see the Indian industry today, I think the study done at Bell Labs remains relevant in every detail.
The Bell Labs engineers who did extremely well for themselves – as they progressed in their career, showed the following qualities that differentiated them from their peers: taking initiative, cognitive ability, networking, leadership, teamwork, followership, perspective, organization savvy and show-and-tell capability. Let us look at each of these and see what lies underneath.

1. Taking Initiative : This is about accepting responsibility above and beyond your stated job. It is about volunteering for additional activities and promoting new ideas. None of these will jump out as apparent as a young engineer gets in to his/her first job. She/he will tend to think that her/his career progress is really dependent only on the ability to write code. The concept of initiative begins by looking for technical and other opportunities in the organization and volunteering for them. The idea of volunteering is littleunderstood – both by organizations and individuals. In the days to come, it will gain increasing prominence in our professional lives. Initiative is also about two other things – dealing constructively with criticism and planning for the future. The latter is a function of many things – a good startingpoint is to start mapping the environment, learning to understand how the future is unfolding and then stepping back to ask, how am I preparing myself?

2. Cognitive abilities : The concept of cognitive development is about understanding the interplay of technology and trends in how they are getting deployed. It is also about recognizing the business eco-system in which technology works. It is about situational understanding and consequence thinking. The importance of consequence thinking is very critical. It asks us to look beyond the immediate deliverable of a task and it is about asking who will be impacted by my work, what is the end state? People in our industry just think in terms of modules and seldom ask where is it going, who is my customer and more importantly – who is my customer’s customer? Cognition is a key faculty that determines how much we are able to read patterns, make sense of things. Refining cognitive skills helps us to go beyond stated needs of our customers to explore unstated needs.

3. Networking : We tend to think of networking in a social sense. As one grows higher in life, we are often as powerful as is our network. Building a professional network requires us to step out of the comfort zone to look at whom can I learn from? Quite often, and more as one progresses in life, the learning has to come from unusual sources- industry peers, mentors, leaders from Client Organizations and sometimes from our sub-ordinates themselves. The interesting thing about benefiting from a network is that it workslike a savings bank. I need to deposit in to it before I withdraw. We all have heard about how important internal and external knowledge communities are. We should all affiliate ourselves to different and diverse knowledge communities to have a wider radar to experience and understand matters which might not even concern us. These create networking opportunities and open many doors.

4. Leadership : Next to networking is development of leadership skills. Many technical people associate it with “Management” and shy away from developing key leadership skills like communication, negotiation, influencing, inter-personal skills, business knowledge, building spokespersonship and so on. Take forinstance negotiating as a skill. Imagine that you are an individual professional contributor. Why should you learn to negotiate? Tomorrow, your organization becomes member of a standard body and you have to represent the organization as a technical expert. You will find yourself needing to negotiate with powerful lobbies that represent a competing viewpoint or a rival standard. Unless you have honed your capability alongside your hacking skills, you will be at a complete loss. Yet, you do not discover your negotiating capability one fine morning. You need to work on it from an early stage.Negotiating for internal resources is becoming another critical need. You can choose to remain an individual professional contributor but from time to time, you have to create mind share in the organization where resources are limited and claimants are many. Establishing thought leadership is another key requirement of growth and independent of whether I want to be a technical person or grow to be a manager, I need to develop as a leader who can influence others.

5. Teamwork : Our educational system does not teach us teamwork. If you ever tried to solve your test paper “collaboratively” – it was called copying. We all spent all our school and college life fiercely competing to get the engineering school and seat of our choice. Then comes the workplace and you suddenly realize that it is not individual brilliance but collective competence that determines excellence. Collaboration is the most important part of our work life. Along with collaboration come issues of forming, norming, storming, performing stages of team life. Capability to create interdependencies, capability to encourage dialogue and dissension, knowledge sharing become critical to professional existence. All this is anti-thesis of what we learn in the formative years of life. Add to it, our social upbringing – our resource-starved system tells us to find ways and means to ensure self-preservation ahead of teamwork. In Japan, the country comes first, the company (read team) comes next and I come last. In India, it is the other way round.

6. Followership : The best leaders are also great followers. We can be great leaders if we learn and imbibe the values of followership. Everywhere you go - there are courses that teach leadership. Nowhere will you find a business school teaching you followership. Yet, when solving complex problems in life, we have to embrace what is called “situational leadership”. I have to be comfortable being led by others, I must learn to trust leadership. Many people have issues reporting to a test lead as a developer, or being led by a business analyst or a user interface designer. In different parts of a project life cycle, people of varied competence must lead. I must be comfortable when some one else is under the strobe light. I must have the greatness to be led by people younger than I, people with a different background or a point of view. That is how I learn.

7. Perspective : This is the hardest to explain. It begins with appreciating why I am doing what I am doing. Quite often, we find people having a very narrow view of their tasks; many do not see the criticality of their task vis-à-vis a larger goal. So, a tester in a project sees his job as testing code or a module designer’s worldview begins and ends with the module. He does not appreciate the importance of writing meaningful documentation because he thinks it is not his job or does not realize that five years from now, another person will have to maintain it. There is a very good story which I would like to elicit here- There were 2 workers who were laying bricks. A passerby asked the first one as to what he was doing. He replied, “I am laying bricks”. He asked the second one. He replied, “I am building a temple”. This story explains what perspective is and how the resultant attitude and approach to work can be vastly different.

8. Organizational Savvy : As technical people grow up, they often feel unconnected to the larger organization. Some people develop a knack of exploring it, finding spots of influence, tracking changes, creating networks and in the process they learn how to make the organization work for them. The organization is not outside of me. If I know it well, I can get it to work for me when I want. Think of the difference between one Project Manager and another or one technical lead from another. One person always gets the resources she needs – the other one struggles. One person knows who is getting freed from which client engagement and ahead of time blocks the person. One person reacts to an organizational change and finds himself allocated to a new project as a fait accompli – another person is able to be there ahead of the opportunity. Larger the organization, higher is the need to develop organization savvy. It begins with questioning ones knowledge about the larger business dynamic, knowing who does what, tracking the work of other groups, knowing leaders outside of my own sphere and a host of other things. Importantly, it is also about tracking what the competitors of the organization are doing and keepingabreast of directional changes.

9. Show & Tell : This is the bane of most Indian software engineers. We all come from a mindset that says; if you know how to write code, why bother about honing communication skills? Most of our Clients also think that the one area of improvement for our engineers would be definitely - Communication. Show and tell is about oral and written communication. Some engineers look down upon the need for communication skills and associate it with people who make up for poor programming prowess. It is the greatest misconception. Think of the best Chief Technology Officers of companies like Microsoft, Oracle, IBM Global Services or Sun. Their number one job is evangelizing. If they cannot forcefully present their technologies, nothing else will matter. So, every engineer must pay attention to improving the ability to present in front of people, develop the ability to ask questions and handle objections. In a sense, if you cannot sell the technology you create, it has no value. So, building salespersonship is a key requirement for technical excellence.
The foregoing points are not relevant if you have already filed your first patent at theage of eighteen. Everyone else, please take note.


Let us make the above 9 factors as our guiding factors to have 200’9’ as our stepping stone to Future Success!

Best Wishes

Mustafa Balsara