Danger Will Robinson! Moving overseas is something not to be taken lightly. Be sure you have all your ducks in a line before even thinking about it! While it may be tempting to think that everything will work out, the risk if it doesn't is so much higher than taking a job locally that you need to exercise extreme caution.
In your specific case, it sounds like this company is not ready to have you come over, and even if they are really pushing to have a quick start, I'd hold off until you get the issues below sorted.
Most companies in the world do not have much experience hiring workers from your country. This is so incredibly important I cannot express it enough. Visa requirements, paperwork, translations of paperwork from non-English countries, translations to other languages to non-English countries, bureaucracy, immigration restrictions, etc. etc. etc. make this a minefield for most candidates of any position.
Do not trust that the company knows what they are doing. Unless you are going to be writing code for the US state department, you need to learn to be responsible for watching your own back so that you don't end up in a horrible situation.
1) Know Visa Requirements
Many of my (US citizen) friends who lived in Japan and married a Japanese national went to move back home only to realize that it takes (at least) 6 months to get a visa, costs thousands of dollars for an immigration attorney, and is a maze of paperwork and visits to local government offices and consulates abroad. And this is for someone from a highly developed country who is married to a US citizen!
There are a dozen different types of visas, different requirements for each visa, different restrictions on work types and terms, and all sorts of other pitfalls in the process. You need to become an expert yourself.
- Figure out your visa type Depending on your industry and job description, you will fall in to different visa categories. Make sure you understand what the visa is, what restrictions there are, if there are any limitations on quantity issued each year, what the chance of renewal is, and any other information that can be gathered on the web.
- Figure out what paperwork is required to apply Your company, even if they have an immigration lawyer, likely won't have any clue what the actual documents you need to get in your country are, where you can get them, or what they're called. You need to understand what paperwork is required and start gathering it to be prepared, otherwise the process will take much longer.
2) Negotiate Your Contract Well Before Coming
Don't just take their word for anything. They may offer pay package X and tell you to come over, but it's just not that simple. Moving overseas is hugely expensive, and very difficult to cancel in a short period, so make sure all the ducks are lined up before hopping on that plane. Some things to consider:
- Termination On Loss of Visa Many contracts for foreign workers will say that the employer has the right to terminate the contract if you lose your visa/permission to work. If your company is sponsoring you for the visa, this gives them an easy out to screw you over if they so desire, or otherwise give them leverage over you. While they will argue they have no control over whether you are issued a visa, at least put in language that says the employer is responsible for timely submission of paperwork for visa renewal, and that if they will not renew the contract/renew the visa sponsorship, they are required to give you 6 months prior notice.
- Payment on Termination of Contract Many contracts have no provisions for how you will get home afterwards. Make sure that your contract contains a provision for either a severance package on termination of the contract for any reason (so you're not stuck with no money and no way home), or a company-paid move to a country of your choosing at the end of the stint (they may want to restrict you to moving back to your home country, but this is a global marketplace, and try to get it a bit broader than that)
- Expenses for Moving to Take the Job Many companies will not pay you any money to actually move to the location where the job is. This can be very expensive. Ideally, the company will pay your expenses for relocating. Depending on the size of the company, this may not be realistic. At a bare minimum get a provision in the contract stating that if the company terminates the contract within X months (at least 12, preferably 18 or 24) then they will reimburse you X amount.
- Time Before Starting Work When you move overseas, you will need time to find housing, open a bank account, get a driver's license, go to immigration or local city offices, etc. Make sure that the company either gives you time before you start to do that, or that they will not charge you vacation days for those things.
Whatever you end up negotiating, make sure the contract is signed before you buy a plane ticket. Don't sell away your rights counting on the company to do the right thing later on -- if they are going to do the right thing, there's no harm in them doing the right thing now.
3) Quality of Life
Most companies are not used to foreign workers from your company. And it's a challenge living abroad because of cultural differences. Make sure that the location of the job is acceptable to you (ideally you will visit before moving there). Make sure that you find a support group of some form. You will undergo culture shock, and your company may not understand or be supportive of what you're experiencing. Understanding what will happen, and being able to objectively explain to your employer what to expect will make all parties feel a lot happier. If there is a language barrier, it will be even tougher, and just be sure you're mentally prepared.
Some things you may want to discuss with your employer on this front:
- Unpaid leave for bereavement, etc. If one of your parents passes away, it's not just a short drive to attend the funeral. Be sure your employer is understanding that traveling for these sorts of things isn't something you can plan for, and that you won't be penalized for having a family member pass away
- Paid Leave for Visa-related Duties If you have to renew your passport, or go to the embassy to file paperwork, then you should be sure that your boss is happy with letting you do that on the clock. If not, at least realize that you will likely lose 2-3 days a year because of something administrative.
- Ability to Take Longer Vacations Some companies are reluctant to let an employee leave for 2 weeks at a time. When you live far away and need to spend $2,000 on a plane ticket, travel for 12+ hours to get there, and move several time zones, you want to make good use of a single trip for a longer time. Make sure the company is okay with that, otherwise you may find yourself far more unhappy than you need to be.
It isn't enough to say, "This is a good job opportunity" as if it were in the same place you're living now. You are relocating for work, which is a huge commitment on your part. For the company it likely isn't half as much of a large commitment (they just have to hire an immigration lawyer). Be sure that it is a great opportunity, and worth the headaches before taking the plunge.