I've been working remotely as a freelance programmer for a ~15 people startup company in the US (I'm from Europe) for about 7-8 months now. They've started a visa process to get me on site and the visa process has been taking ~7 months so far. I assume the company invested a lot of money into the visa process but there are still issues with the visa and they've been hiring lawyers to fix those. Anyway, the visa is still not ready and the process will at least take another month.
On the other hand, I've realized that I'm a bad fit for the company. I've had numerous Skype conferences with the lower-chain team and there seems to have been a lot of tensions - mainly due to the fact that I'm more introverted and the majority of the team is extremely extroverted. Also their lead engineer left in the middle of the project and for no clear reason. And he was the only team member that I had no problem communicating.
How do I resign properly in this situation? I'm afraid that they'll ask me to return the money they've paid for the visa process and, seeing as it's been taking this long, it might have cost them ~10k already. I don't even have that amount of money.