"no poaching" is illegal but it doesn't go against free market principles. It's just companies willingly agreeing not to poach, as long as there is no coercion, it doesn't go against free market principles. Now, the question of whether it is unethical or not is a whole other topic. I think that "no poaching" is not very efficient anyway as it usually happens between incumbent companies only whose stock isn't growing as much as it used to. There's always an Uber or a Facebook around to poach your best employees anyway with generous stock options offers, and they do.