Sunday, January 11, 2009

Effective Diversity Management in the Multicultural Workplace - Managing Immigrants and Refugees

If your company hires a large number of immigrants, refugees, or other foreign workers, you have probably tried providing them with English as a Second Language (ESL) training. Or perhaps you have provided training in Spanish or intercultural communication to your managers. Unfortunately, you have probably discovered that the training, despite its high cost, had limited impact and resulted in negligible, if any, improvement in your workplace. That is because these "obvious" training solutions - language and culture training - did not address the actual, underlying issues of your workplace. They were only "band aid" solutions - quick, ineffective fixes to complex problems.

In order to develop effective management strategies for your multicultural workplace, you must begin with two important steps:

Step 1

First, identify your specific workplace issues, going beyond the obvious and simplistic "They don't speak English." For example, identify the specific problems that result from the fact that the workforce doesn't speak English. Perhaps your customers are complaining and you would like to stop their complaints. Or perhaps co-workers are complaining and teamwork is suffering. Perhaps managers are unable to communicate their instructions effectively, so production is suffering or, worse, you are experiencing high management turnover. Although not speaking the same language is certainly part of the problem in all of these situations, it is never the whole problem. In order to dig down and discover the root issues of your multicultural workplace, you will need to conduct a thorough problem definition, the next step in the process.

Step 2

In order to develop a thorough and accurate problem definition, you will need to investigate a wide range of workplace dynamics which underlie your workplace issues (language dynamics, culture dynamics, personal dynamics, job dynamics, organizational dynamics). These dynamics develop in unique ways in each workplace based on how the organizational culture intertwines with the languages and cultures of its individual employees. Often this intertwining results in the emergence of a whole new culture for the whole organization, which is idiosyncratic and depends on many factors, such as type of business the organization is involved in; workforce demographics; customer base; type, frequency and duration of employee/customer interactions; employee job duties and responsibilities; and organizational policies and procedures, to name just a few. Because these factors come together and function in different ways in different organizations, there is no "one size fits all" solution for the multicultural workplace. That is why good problem definition is vital to formulating effective, focused strategies for improving multicultural workplace dynamics.

So stop throwing your company's money away on ineffective or only marginally effective training solutions, and instead invest first in some good problem definition that will lead to focused, effective and targeted solutions.

Human Resource Clouds

The early morning call is answered on the first ring (no brain-er) and a whispered, "Hello, Did you get my email? I am so sorry and the timing on this stinks so bad." After a quick briefing of all the physical ailments all parties involved she asks if you can scan the employee paperwork. She tells you where on her desk to locate the paperwork and how to scan it properly. Slowly a light shines brighter in your mind and you ask her, "Uh, are we really supposed to scan and send employees personal information including their social security numbers and all that sensitive data over the Internet?" A long pause is followed by "Crap. Your right, we have no right to do that with our employee data. What are we going to do?"

You then ask how it was she was planning on entering all that data anyways. She starts a spiel about some kind of "cloud" thing that allows her to see the same documents that she uses at work at any computer, no matter where she is. This intrigues you, and you start asking more questions. But she just doesn't have enough answers for you and she suggests speaking to the PSS Enterprises, the IT department that you outsource all of the tech stuff too. She suggested that you tell them the predicament that you are in, and maybe that they have a solution that doesn't jeopardize your employees sensitive data. You get off the phone with her and you dial 1-800-285-2448 and don't worry that it is early in the morning because they are a 24/7 operation. You spill your guts and they tell you, "No Problem." We have a safe secure way to access the company PC from your home computer. You are given a url to visit, and the next thing you know, you are looking at your work PC, right there in your house, while sipping the morning coffee. Disaster averted no later than 7:30 the same day. Isn't technology great?

Making Employee Background Checks Yourself

Many employers are making the decision to do background checks on potential employees prior to hiring them. In the past, employee background checks were a hit or miss proposition, with employers running the potential employee's name through the database with local law enforcement.

This simple criminal background check was not without problems, however. If the potential employee had a criminal record, he could simply move to another jurisdiction and often escape detection.

However, not all background checks are for criminal matters. Perhaps the person you are thinking of hiring had trouble on his last job and was suspected of wrongdoing, but was fired, rather than arrested. Local law enforcement would, of course, have no record of that, and in the past, the applicant would merely not give that job as a reference, or would give a friend's name as the reference for that job.

Another reason employers would consider doing employee background checks is not popular, but it is a fact of life: Many employers are now doing credit screening on job applicants, assuming (whether right or wrong) that if the applicant is sloppy in financial matters, then they will be sloppy in their work habits as well. In the past, the employer had no real way of checking this except to call the applicants bank and any references the applicant provided.

Perhaps the common problem with the old methods of doing background checks is obvious; they all depended upon the honesty of the applicant in the first place. You had to trust the applicant when he said he had always lived in this area. If the applicant gave you a work reference with a phone number, you assumed it was correct, because you had no real way to check it. If an applicant did in fact have financial trouble or a poor credit file with his bank or other references, you can be sure that is not the references they would provide to potential employers. In other words, you were at the mercy of the applicant to supply accurate information and, as the computer programmers are fond of saying, garbage in, garbage out.

Well, in the last 10 years, the Internet has changed many things, and one of them is the way that employee and criminal background checks are handled. What in the past took an afternoon of phone calls now takes less than ten minutes with a reliable online database. Where in the past you had to rely upon the integrity of the job applicant to supply you with accurate information, these days all that is required is a date of birth and a social security number and their life story is laid out before your eyes.

Coaching With Emotional Intelligence

Joan had a good job in HR that she felt she had pretty much mastered. As such, she was starting to feel a sameness that was eating away at her. The demands were considerable at home, as well, so a promotion with more hours wasn't appealing at this time. Maybe her situation wouldn't be that bad if it weren't for the sense of sameness to her days that felt so, so empty. This emptiness is what brought her to coaching.

After doing some values work, she and her coach uncovered that it wasn't where she was working that was the problem. She liked the company and what it stood for. It was more about her role. She would love to take on something new and had her eye on a new employee development program. So, her coach challenged her to speak up for what she wanted, to go and ask her boss for the work she wanted. She said she would consider that and get back to her coach before next session.

And she didn't get back.

She did, however, show up for the next call with a very different presentation. "I couldn't do it," she confessed. "Not that I didn't want to. I COULDN'T." She sounded deflated and defeated.

After creating the space she needed to clear, it became obvious that the emotions around this ran very deep indeed.

"Whenever I think about walking up to my supervisor's office to tell her I want to apply for this position, I literally start to shake and feel like I am paralyzed. It freaks me out so much that I choose, consciously, not to. The reaction here is so strong, so physical, that I cannot go through with it. What is wrong with me?"

Her coach helped her see that those physical reactions were actually messages from a powerful part of her, messages from her emotional mind.

"When we have strong emotional reactions to something or someone, our emotional mind is the first to react," her coach explained. Then he continued, "In fact, it does so much faster than our rational or thinking mind. What kind of thoughts were you thinking?"

Joan replied, "I was afraid. I don't know why. I literally couldn't think of any good reason not to go in there. I guess it's just easier to stay comfortable."

Her coach asked, "So have you always played it safe? When have you taken risks before?"

Joan immediately replied, "The first time I started rock climbing, I remember feeling a little bit like this, but I had already committed to my boyfriend, who is now my husband, that I would do it. He was supportive; I did it, and now, it's one of our favorite hobbies to do together!"

Her coach acknowledged her. "That's terrific. Rock climbing is something I have always wanted to do and couldn't bring myself to do it. You really are courageous. So you mean to tell me that you can scale a mountain but not the distance to your boss' office to apply for what you want?"

Joan admitted, "Silly isn't it? But what can I do about what I feel when I go to do it?" Her coach replied, "This feeling is often called an emotional hijack. And there are some techniques you can practice that will help you recover from the physical effects of it. You see, our emotional mind, or amygdale, responds first. It causes a chemical release into the rest of our body that has a tremendous impact. These chemicals stay in our bloodstream for up to three or four hours. We can have things like our heart speeding up or feeling shaky as a result. And our rational mind, or neo-cortex, literally gets flooded as part of this process. That's why it can feel like we can't think during a hijack!"

"Wow," Joan replied. "That makes sense. I don't feel so weird after all. But what can I do about it?"
"You probably have had someone in your past recommend taking a few deep breaths when you are upset," her coach submitted. "That actually makes sense from a physiological perspective. Changing our breathing pattern sends a different message to the brain and is the beginning of reversing the hijack process."

Joan admitted, "Yes, I remember doing that some of the earliest times in my climbing when I reached new heights!"

"What a great metaphor," her coach observed. "You are certainly going for new heights in what you are up to by applying for this position. Something else that helps reverse the effects of a hijack is connecting with an emotion that counters the fear. One that has been shown to be particularly effective is gratitude. What is something you can think of that might do this for you?"

"Well, I think what we have talked about today would be terrific. Every time I go up and see those beautiful scenic vistas with my husband I am so thankful for conquering my initial fears around climbing. I'll do that when I start to feel the fear of walking in and applying for that position." Joan felt confident and grounded.

"Great work, Joan," her coach acknowledged. "It is really helpful to practice this before doing it. Imagine yourself getting ready to walk into that office, take some deep breaths and connect with a beautiful vista from a climb. You sound ready to scale new heights at work! And don't forget, you can use this in any area of your life when you feel that strong emotion might be holding you back."

"Thanks coach. I am going to practice this and then go do it. The next time we talk, I intend to have that position!"

The coach was delighted when Joan sent her an e-mail the following week with the great news that she had indeed gotten the project lead and was looking forward to setting more goals with him on their next call.

Hiring a Programming Staff

The Phone Interview

Few would argue against the notion that the people on a project are the single biggest factor affecting its success. You could have an effective software development methodology in place, but inexperienced or unsuitable coders could destine a project to failure.

The task of finding a good programmer to join your team can be quite difficult and time consuming. I have to admit, I've done it the hard way in the past. A few years ago my boss and I spent an entire week trawling through resumes and interviewing people. We received around 240 applications and ended up interviewing 18 people. Needless to say, we got nothing done that week as far as our regular work went. This experience lead me to believe that there had to be a better way of finding top-notch programmers.

A starting point would be to post your job ad on a popular recruitment website (e.g. SEEK, or whichever online service has the biggest market share in your region). The structure and content of your job ad is ultimately up to you, but beginning with a short paragraph describing your company culture is a good idea. A common feature of job adverts for programmers is two separate bullet point lists; one for 'must have skills' and another for 'highly regarded' skills. You may also want to ask people to fill-out a skills matrix when they apply, this does two things: firstly, it weeds out 'job spammers' (i.e. people that just blindly apply to everything), and secondly, it provides a normalised method for comparing people instead of just relying on information which may or may not be contained in their resume.

After a few days, resumes should start arriving. Generally what I do is open up a resume, press Ctrl-F and perform a keyword search for the most important requirement for the role. For example, if I wanted a .NET programmer, I would look for the keyword '.NET' in a person's resume, if that particular word didn't appear anywhere in the resume, next (i.e. the candidate lacks the most basic of requirements).

There is an optional step you can do before contacting an applicant, and that is to ask them to complete an online test. In this situation, you would first review someone's resume to ensure they have the minimum skills for the position, then email them a URL to your online test. Based on the results of their test, you would decide whether its worth investing further time for a phone interview.

An online test does however require commitment of time to mark answers, but it will ensure that only the most technically competent people are progressing further. And yes, I am aware that a person can 'cheat' on online tests. For instance, they could have a friend sitting beside them helping them out, or they could be Googling the answers. But personally, that's what I call 'being resourceful', besides, they will still have to survive a written test when they eventually come in for a face-to-face interview.

If you find a resume that seems to be a match for the position you are trying to fill, then its time to consider a phone interview. This is where many people go wrong, they organise a face-to-face interview straight away. I believe this is totally unnecessary, you only need to meet perhaps 3-5 people from the total pool of applicants.

Now onto the phone interview. I work from a predefined script, a document about 2-3 pages long with questions relevant to the position. The first set of questions are what I call the 'deal breaker questions'. If any of these fail, then you wrap up the interview and move on. The very first question always concerns communication. If you can't understand what the person is saying over the phone, there's really nothing you can do for them (you would terminate the interview).

The remaining questions would either relate specifically to the technology you are using within your organisation (e.g. "how would you rate your C# skills?") or would be made up of very common interview type questions (e.g. "give an example of when you had to work under pressure"). To keep things simple, you generally rate a candidate's answer as either 'Bad', 'Fair' or 'Good'. As to how you asses an answer, that's fairly subjective. However, each question can have a different weighting on its score. The reason for this is because a good answer to the question "what would you do if a project was running behind schedule?" is far more significant then a good answer to the question "why did you leave your last job?". Conversely, if a candidate answered the question "how would you handle a difficult client?" in a negative manner, that may result in an actual deduction of points.

After concluding the phone interview, there is a Post Interview Analysis where you score the candidate on factors such as what their attitude and demeanour were like. These characteristics may be relevant if you are intending for the programmer to interact directly with clients. Finally, you tally the candidates score - the highest scoring people are the ones you want to interview face-to-face.

Where do recruitment or employment agencies fit into the picture? They are fine for the preliminary process (i.e. résumé review and talking to a candidate on the phone). They can be very effective in helping to short-list quality candidates. Do they need to be meeting and interviewing a candidate in person? I don't believe so, it's unnecessary and adds to the expense of the whole process.

A topic worth mentioning is the choice between hiring someone with a few years of industry experience vs. a recent uni graduate. There are pros and cons to both options, but it generally comes down to two things; personal taste, and how much money is available for the new staff member's salary. Unfortunately, in-depth discussion of this topic is beyond the scope of this article, but I will say my own personal preference is to hire new graduates because they cost less and often have excellent production potential when given clear instructions.

The Programming Test

The ability to hire good programmers isn't a skill generally associated with a project manager, but if a project manager isn't sourcing coders, who is? It's likely that it will be senior management or HR. Senior management should definitely be involved in the selection process, but hiring new programmers is best done in conjunction with someone coming from a technical background.

So what is the key to finding that great programmer? Testing. Giving a candidate a written programming test is the only true measure of their capabilities. The main things to look for are competence in the languages you develop in, be it .NET, PHP, Java or whatever. In addition, logical and deduction skills are a must.

If I was asked to give my opinion on what the single most important attribute of a good programmer is, I wouldn't be able to answer. That is because its a minimum of two qualities. They are; 'is smart' and 'gets things done' (see The Guerrilla Guide to Interviewing by Joel Spolsky). Of course, there are many other favorable qualities to look for when adding to your technical team, traits such as: attitude, communication skills, how well they fit into your office culture, etc. But if you don't have both 'smart' and 'gets things done', all bets are off.

What does 'smart' and 'gets things done' mean? I will try and explain what these traits mean by presenting two fictitious examples:

Tony is a university graduate who loves to talk technology. He spends a couple of hours each day chatting with the other programmers about how AJAX is going to bridge the gap between traditional desktop applications and the limitations of the web. There is no doubt Tony is a smart guy, but if he's spending so much time theorizing about technology rather then doing it, not much is going to get done (i.e. he is smart but does not get things done).

Sarah is a dedicated programmer who appears to be a model team member. But after a number of project postmortems, it becomes apparent that approximately 50% of all bugs are attributable to her (this is out of a team of 5 programmers). This taken together with other anecdotal evidence points to a pattern; Sarah is lacking the fundamental skills required by a programmer. She is 'getting things done', but the quality of her output is very low.

Now onto the test. It shouldn't be too long, about 5-6 pages at most. It shouldn't take a candidate more then an hour to complete. The questions are divided into a number of categories: logic, programming, SQL, JavaScript, XHTML/CSS, and people skills.

Logic questions - these questions set out to test a candidate's reasoning and logical deduction faculties. Some would say that these are the most important questions in the test because they are a strong reflection of a person's capability to think in an abstract manner (and therefore tackle any kind of programming or technology problem thrown at them). I even know someone who immediately terminates the interview if the candidate fails these questions. An example question would be: "if I asked you to build me a house, how would you go about doing this?". A correct answer for this would be along these lines: "I would begin by ascertaining who the house is for, what sort of budget is available, if their are any time or material constraints. Once that is done, I would organize the contracted labor to undertake the work, ensure proper planning permits are obtained, ...". What you are trying to gauge is if a person is thinking the problem through in a systematic sequential manner. Other questions could be: "How many petrol stations does the city of Melbourne require?" or "How much does the Golden Gate bridge weigh?" With these questions, there isn't really a correct figure, the point is how did the person derive the figure, and what logical process did they use to get there?

Programming questions - these questions will be specific to the development environment you use, but an example would be; "Using .NET/C#, write a function to find out how many words are in a sentence". The coding questions shouldn't be overly hard as many programmers are reliant on reference material. A candidate's response to such a question will make it clear whether they have used that language or not. Another good question is to present a slab of code which has a bunch of bugs in it, then ask the candidate to locate the bugs. These questions are where you will spot the above average programmers; where one programmer writes 10 lines of code to do something, another writes a one line regular expression or uses recursion (obviously the better choice). You would also be on the look out for error-checking and optimization.

SQL - I don't believe you need to ask a super complex SQL question involving inner joins or embedded SELECT statements (especially since many IDEs generate SQL these days). The point is to determine whether they understand the basics of SQL. A question like this would suffice: "write a SQL query to return the surnames of all the people under the age of 30 shown in the above table. Ensure the results are ordered alphabetically."

JavaScript - you want to check for a basic understanding of JavaScript. A simple question such as this will be fine: "Write JavaScript code to check that a user has entered a value for the Username and Password fields. If not, present an error message to the user". Again, it will be very obvious if the candidate has never used JavaScript before.

HTML/CSS - you need to determine that a person has a fair understanding of HTML and CSS. I would do this by presenting a few short snippets of unrelated HTML/CSS code. I would ask the candidate to say what each snippet does and also to correct or improve each one if needed. For instance; a basic image tag with no alt attribute (nb. the alt tag is required).

People skills - the question I generally go for is this: "You're the only one in the office when a client you've never dealt with rings. They say in an aggressive tone; 'my website is down, I was told all the problems with it were fixed, what the hell is wrong with you people?' Considering you know nothing about their project, what would you say to them?" A good answer would include these key statements: allow the client to vent, apologize for the inconvenience, empathize, tell them you will look into it immediately and call them back in a half hour, etc. Having a candidate answer well on this question is really just a bonus. Personally, I would still take a candidate with superior programming skills over someone who has good 'soft skills' (after all, coding is what you need done). But this may be a distinguishing factor if you have evenly matched candidates. You never know when you may have to send a programmer out on site or have them gather requirements from a client.

One thing to look for is how well a candidate has followed instructions, have they read the question properly? Have they answered it exactly or did they get off track? Obviously a person's ability to read and follow written instructions accurately would be a tremendous asset at any organization.

I have come across a few other ideas for improving your chances of nabbing a great programmer. Personally, I have not tried all of these approaches, but they do seem like sound pieces of advice. One suggestion is to look for programmers who do coding on open source software.

A person's involvement in the open source community is a reflection of their commitment to the computing industry (i.e. they don't just code for the money). Obviously, you would want to investigate what their contribution is; for instance, if you were especially looking for a UI designer, then UI design is what they should be doing on the open-source project.

HRM System

The manual HR system you have been using is creating more problems and headaches than needed. It's time consuming, takes up a lot of paper, and keeps human resource information in hard-copy file formats which makes it difficult to prepare reports. There may many people involved in the workflow of a lot of the different HR processes which adds another layer of complexity. The answer to your workflow problem is to implement an HRM (human resource management) system. Maintaining all the information electronically in one, easy-to-use place will help you streamline those processes among all users, which will in turn help to increase the efficiency and effectiveness of your policies and procedures.

Prior to implementing an HRM system, document the processes you want to have in place, so that when you are ready to install the HRM system, your workflow processes will work. Some of the processes include:

• New Employee Orientation
• Benefits
• Paid time off-vacations, holiday, and sick time
• Performance management-evaluations and disciplinary actions
• Safety-recording of injuries and illnesses
• Training

This gives you an idea of the many different HR processes that you have in place. Paid time off, such as vacation time, is a perfect example of an HR workflow. The HR manager may be responsible for making sure all employees have the correct amount of vacation time accruals, the supervising managers may be responsible for documenting vacation time employees have actually taken, and the payroll manager may be responsible for pulling a report of vacation time used during each pay period in order to accurately complete payroll. In this example, three different people can access the HR information to update it or use it accordingly. Other things that will be kept on an HRM system include personal data of each employee, complete with historical data. Plus you'll be able to run various reports for whatever purpose you need, including auditing the data, trends for terminations, lists of injuries, and many other purposes.

There are many advantages to implementing an HRM system. You'll not only increase efficiencies, but also streamline processes that previously took up a lot of time. Now you'll be able to devote more time to strategic goals and objectives of the organization.

Human resources

The responsibility for international transfers and relocation management may be structured as a stand alone function reporting into global human resources or as a section under compensation & benefits which reports into global human resources. Its structuring as part of compensation and benefits is related to the need for international transfer management policies to be integrated with general compensation and benefits practices of the overall organization such as performance based pay, frequency and timing of salary reviews, short-term and long-term incentives and recognition programs. This integration is critical to ensure that there is consistency, transparency, competitively positioned, cost efficient and enables smooth repatriation or movement to the next location.

International transfer policies established by organizations need to cover a range of issues such as, purpose of transfer, duration of assignments, employing organization (Host, Home or Combination), salary and benefits structure and components, pension and social security, medical and hospitalization provisions, taxation issues, insurance, relocation, repatriation and severance of employment. Over the duration of long term transfer, the issue of localization of salary and benefits, expenses sharing, payment currency, family related issues such as working spouse, children education, home visits and policies relating to currency fluctuation, need to be also addressed. Typically organizations establish separate policies for short term and long term transfer assignments.

Compensation is a key issue relating to international transfers. The most common approach is the build up method. Under this approach the employee's home base salary is broken into two portions, spent and saved. The spent portion of the salary is broken into major components of spending and a comparison is done of what the employee spends on each component in their base country and what would be required in the foreign country. Adjustments and additional allowances are added to the base compensation. Factors considered include differences in cost of living, quality of living and international assignment premiums. Some organizations with small numbers of international transfers may engage in a one to one negotiation process and provide a lump sum benefit to the employee. Whatever the process used to arrive at an appropriate compensation level, the primary objective is to motivate the employee to take up the role and to manage cost at a level that is justifiable and fair to both the employee and the organization.

The entire process of managing international transfers may be described as comprising five sub-processes:

  1. Candidate identification and assessment - this requires an assessment of both potential candidates technical competence, cross cultural sensitivity and adaptability.
  2. Motivating the transfer - designing and communicating an attractive incentive and development opportunity for the selected candidate thus motivating them to undertake the international transfer assignment.
  3. Relocation management - this covers all activities such as pre-departure briefings, site visits, selection of accommodation, packing and physical movement of assets, etc.
  4. Managing employee development, performance and success - this involves consideration of support required in terms of training, on-site-orientation, clear performance expectations, etc. that need to be communicated for success.