Abu, as I said, there is ALWAYS something better than we have. ALWAYS. There is no limit for better. You are brought to Qatar for purpose of work with certain company. This company has chosen you, and you accepted the offer. Normally, what should happen is when you completed your contract with your company, you simply have to go home. Or if the employer is not satisfied with your performance the contract is terminated and you are sent home before the contract is completed. This is a common sense! You are NOT in your own country, where you can either work or not to work, or do whatever you want. You are not a permanent resident here, you are not a citizen. You cannot live in Qatar “just because”. You have to remember that you are in Qatar only for work purpose. And once your work is over or terminated, you have to go home. Simple. As a next level, another option might be given to the employee. IF you want to find another job instead of going home, you should be allowed, but only after your contract is either completed or terminated. That would make sense.
Now. There are so many employees who are lazy, incompetent, stupid, etc. Just imagine if these employees started jumping from one place to another every few months, and there is no any tool to make them working properly. Once they are at the new place, they will start looking for something ‘BETTER” (as there is ALWAYS something better), instead of focusing on their duties. Once the patience of the employer comes to its end, employee is simply shifting to another place and start doing the same thing. Why the companies of the country, which this person doesn’t belong to, have to suffer from such idiots? The employee should not be allowed to shift to another company with no reason, before his contract is completed. If there is a legal reason (salary delay, working hours abuse, etc.) this is a Labour office’s cases and legal actions should be taken against such employers. But if the employee just used the “first employer” in order to come to qatar, and then wants to shift to another employer just because was offered 100 riyal more, it shouldn’t happen! Do not accept the offer in the first place if you don’t like it! Since you has accepted it, you signed the contract to work for this employer for the certain period, and you cannot change the job before this period is completed, without any valid reason. Simple as that. Contract is Contract!
What I think is some balance should be found. When the contract is completed or terminated by the employer, the employee shoudl be allowed to find another job without any "NOC letters", etc. Some other sensible rules should be implemented. But to cancel all rules and just to let people do whatever they want to do... it will create a lot of mess..