It's a blatant violation of freedom and it hurts the economy.
It's wrong regardless of skill level. If the worker is skilled, then it is their right to choose what they do with it. If investors have the right to invest their capital in two competing companies at the same time (or hundreds of competitors; as it happens when they invest in stock indexes like S&P500), then definitely a worker should be allowed to work for two competitors at the same time.
Workers should be allowed to put themselves in positions of leverage using their skills as a bargaining tool.
I have had noncompete clauses in my employment contracts in CA, where they are not enforceable. I know that they're not, but I work in tech where must people are aware of bullshit like this being attempted.
I don't see how these positions are reconcilable.