My current TN visa application was held up by USCIS questioning my experience in the field, and the validity of the visa for my new role. (Despite having cleared both last year. Figures.)
I wrote about my first experience [0], if you're curious!
[0] https://jonlim.ca/blog/getting-computer-systems-analyst-tn-b...
It is really important to remember that the actual written requirements are one thing, but the interpretation of those requirements by whoever you talk to at your POE are arguably more important.
If you end up with a border officer who believes that your degree is not applicable, or your experience doesn't count, it is unlikely that you are going to be able to change their mind in that moment. NAFTA officers can be better (as the post writer above mentioned), but it still always feels like a bit of a toss-up of whether you get a "good" border agent.
The decision to approve or deny is entirely in the hands of the officer, and I managed to get a NAFTA officer who interpreted the agreement in my favour. It's why so much time and effort goes into the supporting documents.
Ie, if you are currently within the US on a TN, and looking to switch jobs, you can not file for a new status with USCIS; your options are either to leave the country and apply at a POE, or leave the country, and only then petition with USCIS.
Is this incorrect? Can a current TN holder petition USCIS for a new TN while still within the US?
However, it's been a slow process, especially with having received word of USCIS requesting additional evidence from my first application.