Throughout my time some of the best years were those spent around people of other cultures. Living and working together with individuals of varying cultural background has provided for the most unique, the most exciting and the most illuminating experiences. I only wish I had more of those.
Why is it so wonderful, will you ask? Because of what it does to you and with you. It opens doors, it eliminates barriers, it changes your notions with that unique simplicity, sincerity and honesty which you cannot resist, avoid or otherwise ignore. You succumb to its charm and you let it in.
Spending significant time together with different people unveils a part of their endless culture to you. You learn new ideas, new ways of doing things, varying opinions, different attitude. It changes your ways, it makes you rethink even the most basic elements of your life – why you do things this way, how you react to certain events, how you behave in particular situations and so on. It changes your thinking patterns and restructures the most basic of your neural pathways which means it has a potential of changing you profoundly which happens quite rarely if you're only keeping to your kind. Learning something from a different culture enriches you, perhaps not so in professional matters at first, but personally and socially it has an immediate impact. The more different a culture is, the more learning and change will come your way. I've worked with people from European countries, America, Arabic world, Africa and Asia. All of those experiences were eye opening. The more time you spend together the more of their special world is uncovered to you. Random encounters on the street are quite interesting too, but it's much different when you spend time working side by side or studying together. Of course it is even deeper and almost engulfing when you're having personal relationships with someone from a different culture but we'll leave it out of the scope of this writing. Today we'll focus on professional matters.
And what has it got to do with anything professional or programming-related for that matter, is going to be your next question almost jumping from your lips out of impatience rising while reading this lyrical digression?
Everything. It's got to do with everything we do as our daily job.
Our field which is the software development or the entire IT industry for that matter is the most open, the most international and the most pervasive area of human activities. New and great ideas are born in the minds of people worldwide, spread around, hyped over and reverberated around the globe. It's hard to identify a field which has not developed to its current state from the contributions of people of different nations spanning all continents. In fact we wouldn't be where we are today without the collective effort. We see ourselves as one global community living in our global village which is our little planet. We speak the same language that has its characters borrowed from the computer science basics which are combined into vocabulary words that represent the ideas and experiences we all understand and share. In addition we enjoy the same communication protocol which is English. It finds itself in an immediate contradiction with the reality to even entertain the thought of us being split into separate groups of which some are better and smarter than the others.
Having seen the situation for what it really is what do you say about the fact that many software companies consciously assemble teams of people of the same (typically local) nationality? They go to great lengths to filter out the smart folks of all of the other cultures with the argumentation that they are not a cultural fit. Not a cultural fit? You've got to be kidding me.
It's more like the managers and the boys in the chairs are not a cultural fit for the industry where they've been trying to pull strings.
Now, it is quite possible that a particular business requires certain knowledge of the local market and the expertise in dealing with the local customers. Sure thing. That's why you get marketing people and the sales with the experience in the regional market. No questions here. It's how it works. Specialists talk to the local customers, analyze the requirements, write a business plan and here you go. Having people in the team naturally understanding the matters at play is necessary for an effective cooperation.
That situation which is rather typical for many local businesses from varying industries is not necessarily found in software companies. Software companies offer software products. And software products are surprisingly similar throughout the globe. Customers in Africa, Middle East, Asia, America and Europe have pretty much the same notions about software, very close requirements and quite similar opinions as to what makes a good software product. The restrictions of localized businesses do not usually apply to software companies. In particular to software companies working for global customers. And especially to software companies developing web products. Here you are exposed to the entire global market. You've got global competition. This is where you want all the help you can get.
But you decide not to take it.
You settle on conquering the global market single-handedly along with your local village boys. Obviously you believe you know just about everything you need to succeed and beat the competition. To accomplish that you first need to make sure you have a cultural fit within your team because those different people will only divert you from your goal.
The loss is yours. It's actually you who might turn out to be not culturally fit to join the global market. But you won't have anyone around to tell you.
But it's not so dull really. Keeping the pack of the same kind has also significant advantages.
You'll be able to collectively chatter invoking references to your local culture and cackle at the local jokes. That should give your morale a good boost.
But it's not why you've gathered together. You want to create software and be great at it.
This cultural filtering is sadly widely practiced in many software companies worldwide. Having lived for several years in Germany as a foreigner I have observed it there first hand too. Many software companies of the local origin avoid hiring people from the other countries. That includes developers from farther countries as well as their close European neighbors. Some prefer to only take people from their particular part of the country or the town. I've even known ridiculous cases when local developers who had spent some time in America or otherwise had a prolonged contact with the other nations were discarded because of their mindset not being a cultural fit anymore. It is however not a German phenomenon. It's been a standard hiring practice in many companies in the other countries as well. Companies apply an extraordinary amount of effort to keep different folks at a distance, with the dedication worthy of a medal. A medal of dishonor I suppose.
Fortunately there are modern software companies with an open culture and the right attitude. They laugh at their close-minded competitors and happily collect all of the benefits brought in by multicultural teams. Let us review those benefits, shall we?
Diverse technical background
In a team assembled of locals most people have likely studied at the same universities. That means the group members have received quite similar education. They have visited the same lectures, listened to the same professors, read the same books and done the same exercises. Even across a country universities have a similar instruction process, methodology, a set of values and priorities which they communicate to their students. In their practical life the graduates will follow same processes, come up with similar solutions, reference same books and cite same known people.
Not that it is necessarily bad, but it's limited. In the other places people think differently. They read other books, visit different courses, listen to their own professors who have their own unique and elegant ideas. Their notions, opinions and the attitude, they all differ. Not that it is necessarily good, but it brings diversity and that is a value on its own right. In practice you wish to gather a variety of ideas no matter how strange or different they might seem at first and then to select the best ones. Think of brainstorming sessions. People write down all random ideas and sometimes the weird ideas win. To diversify the pool of ideas you need different people.
Broad practical experience
Developers from the same country transfer their university background into their practical life. Combined with the demands of the local market they shape a quite special development culture. New ideas are derived from the same experiences and similar projects, learned from their other countrymen and adopted in their companies.
At some point the pool of experiences stagnates. Everything starts to seem like a rework of the old ideas but is essentially the same. This is where you need fresh input.
Get some people from a place far away. They worked in different companies, they developed different products. Their customers had different requirements and expectations. And it worked. They had their unique great experiences which seem rather obvious to them but would surprise somebody on the other continent. And some of those ideas can be employed to sparkle the atmosphere and give birth to new projects to turn into surprisingly successful market products. Isn't it worth trying?
Wealth of ideas
Local markets have their own unique ecosystems comprising the market segmentation, relationships between businesses and customers, a list of rules and a set of values. It is quite surprising that even in the global economy where information is open to flow into any direction the unique local peculiarities stay largely unknown outside of the region. Very often these include valuable business tactics and quality products which have a great chance of succeeding elsewhere.
By inviting people from different regions to work in your team you obtain more than just new colleagues. You get a source of unique ideas your local competitors have likely never heard of. If you're wise you will use that resource to augment your product portfolio and advance your marketing strategy with creative tactics that will not go unnoticed with your customers.
Varying angles of view
In software development many tasks and problems naturally have multiple solutions. It is crucial to pick the one that makes the life simpler and your work more effective. Even if a better solution is within your reach you often won't be able to see it because your mind has accustomed to certain thinking patterns not allowing the neurons to stray away from the trodden path.
This is where you can benefit from the opinion of those who've used to solving this kind of problems differently. Sometimes even a different decomposition of a problem into smaller parts can remove the hindrance entirely. Other options include reassigning subtasks to different architecture components or a temporal restructuring of the problem to be solved step by step at different times instead of all at once. To be able to think out of the box a view of the problem from the other angle is needed. Get some help from your international colleagues, ask for their suggestions. The exchange of ideas would provide you with a much larger toolbox. And with a larger set of instruments you will be able to find the right tool to solve a problem and make your work more efficient.
Balance of decisions
It is interesting to see how a cultural background defines and influences the attitude people transfer to every their activity in life. Software creation being a common playground can demonstrate it quite clearly. People from southern and warm countries have not needed to build rigid houses capable of withstanding harsh weather conditions. They won't get overly obsessive with making their software able to stand against any dangerous combination of factors either, would prefer simple and lightweight solutions. People from northern countries will do the opposite and build an infrastructure capable of resisting conditions which will never arrive. Russian people may want to do things with a scientific precision and totally overengineer a simple application into a framework with the potential to solve the world hunger problem, unfortunately neglecting the time constraints and scaring the customer with the result. Germans may stick to the old proven techniques never giving a chance to something new, modern and more productive. Americans would overprioritize the time-to-market and release an immature prototype not resilient enough to accommodate future extension demands so it would have to be redone again.
If you've always worked with your local countrymen, chances are, all of your developments have suffered from a certain imbalance. It would be very difficult to correct the shift at an early stage of the project without an external input. Having people with a different background might help to recognize that shift and introduce the necessary corrections to bring the work to the golden mean. This will improve your sense of balance too.
Process improvement
Different cultures have their own ways of organizing the work process. Splitting the work, keeping the team spirit, taking credit and blame, solving personal problems, it always bears the imprint of the local culture. However people are very much the same in nature, and their local culture cannot mask those basic instincts entirely. Sometimes usual things fail to motivate and stimulate people and the specialist in human resources cannot help.
This is one situation when a deviation from the usual is needed. If you've got people from a varying cultural background you have a unique opportunity to take advantage of all the best ideas the human civilization has to offer. You can change your usual process into something that would seem unorthodox at first but would then yield great benefits. Something which your local expert on human resources would have told you is completely off and would never work. How would they know?
Outside feedback
When you've been doing something for a while, especially for a long while, you get used to it. It happens with experiences, interactions with people, administrative work, personal relationships, with everything. Most notably it happens with certain difficulties and issues that you get initially annoyed about but soon accept and move on. With time you might even start reproducing the circumstances of those issues to feed their continued existence, unintentionally that is. But the fact remains, there may no longer be an objective need for those problems to exist, but nobody around will recognize that.
Different people would immediately tell you that something is wrong in their eyes. Be it a working process, communication with customers, programming problems or architectural decisions you keep repeating. When offered a chance to recognize old problems and get rid of them one should gladly take it.
Insight into local markets
Products targeting a global audience encounter other challenges and experience different barriers on their way to their happy customers. One of the very common complications include the cultural mistakes. It is when you're trying to communicate a message pronounced according to your local customs and it's being received and understood differently by the other side. Sometimes it is the presentation of benefits which find no good reception with your international customers. Sometimes it is the mere wording which repels people. It can even be wrong colors which invoke different associations elsewhere.
To name a few examples, American companies tend to overemphasize the business component of an interaction so it seems from the outside like they only wish to make money on you. German products often speak in a prohibiting language, in the terms of things being not accessible or not allowed, which continuously frustrates their international customers. If you're using a picture of a pig as a common idea of wealth and prosperity, be no surprised that it will infuriate the customers from the Arabic world. Russian products may be long talking of internal technical advantages which will bore the customers and make them feel dumb and demoralized.
It is when an international colleague becomes an invaluable asset in your team. Even one person can stop you from doing a catastrophic mistake with your product or the marketing strategy thus saving your day in one particular region. A group of colleagues from all over the world can shape the product to be well accepted everywhere it goes.
A value of building a truly international and a multicultural team goes far beyond of what can be said in a short writing. Sadly you can't quite understand it until you've tried it for yourself. In that case I ask you to believe me it is well worth it.
If you're scared to go that far from the start try first a simpler approach. Find colleagues for your team even if coming from the same culture but from a different professional background. Developers with a degree in computer science, electronics, physics, mechanical engineering could support and complement each other's experiences in a way that will keep their work focused and most efficient. Get some people with a background in graphical design, psychology, sociology and perhaps literature and they will keep an eye on your work being properly done in other subtle aspects you may not know even exist.
Me, I have a dream. To find myself one day in a team where a member of one particular culture is only represented once. So that we are all different, but at the same time all equal, supportive of each other and there are no isolated micro-communities on a cultural basis. That should provide for a fantastic work and an exciting experience. Shouldn't be too difficult to achieve. We've got about 246 registered countries and the number of cultures is even greater. The kaleidoscope can create truly unique combinations. And those teams would create truly unique products.