Programming is a a commodity skill these days, less and less money in it.
2) US companies keep ratcheting up interview demands, which artificially constrains eligible candidates.
Examples are using coderpad where your code has to compile and pass a test/performance suite now, and doing random memory quizzes in addition to programming. But that's the fault of the hiring company.