http://racismschool.tumblr.com/
If you need any help, feel free to message me personally via the email in my profile.
For example: I'd much rather hire a Russian programmer than a Chinese programmer simply because I can communicate with the Russian better, we're from similar cultural backgrounds, and I understand where he is from.
Is that racist?
To pretend that differences don't appear in all types of people is ignorant in itself.
The easiest way to determine if something is racist is to ask if you're generalizing about a race of people. If you say "all Chinese people <blank>", it is a racist statement. Most people don't like to hear that, though, because most people make racist statements without realizing it.
Is it racist to hire someone because you prefer people from their ethnic background? Yes, because again, you're making the decision based on race in general instead of the individual person. You may find out the Russian is part of the Russian mob while the Chinese person has high business ethics. You wouldn't hire just white people because you feel uncomfortable dealing with black people, so don't make the same biased decisions about Russian vs Chinese.
(Warning - attempts at trying to draw me down a semantic rabbit hole about what culture is are very much distracting from this conversation and will be ignored, and probably should be ignored by others as they are pretty blatantly strawmen).
Pretending differences don't appear amongst different groups of people is ignorant. However using this to justify all groupings is also ignorant. For one thing there are different types of groupings, some valid, some not. Some reflect inherently true things, some statistically probable things, and some that are not inherently true but the result of various other factors combined with an arbitrary and otherwise insignificant grouping. For another, a lot of groupings don't lend themselves to generalizations - for instance in the US in California especially, being ethnically Chinese doesn't imply being an immigrant, or having recently immigrated family, so assuming that a person who is ethnically Chinese speaks Mandarin is a bad assumption based on a bad generalization from a grouping that probably doesn't even matter.