> I view this as simple ethics. You keep your word, period.
Certainly in the US in most states, employment is "at will", meaning the company can fire you for pretty much any reason at any time (ignoring protected classes and so on). Likewise, the employee can leave at any time.
If you accept the offer and then renege you've actually fulfilled your contractual obligation.
If the company wants more than that, they need to pay for it. They can lock you up for a period with a golden handshake. They can keep you with golden handcuffs.
You have a misguided view of ethics here. The employment contract exists to give both parties an out.
This reminds me tangentially of the ethics debate around foreclosure. Some smart people realized would do things like:
- deliberately not pay the mortgage to trigger foreclosure as they were underwater and presumably they lived in a "no recourse" state (meaning the bank could take the house and that was the end of it);
- they might do this simply to force a better rate or get the bank to settle on the owed debt at a level where they were no longer underwater.
Some argued it was your ethical responsibility to pay if you can. I disagree. The contract that exists between the lender and the borrower exists to lay out the rights and responsibilities of both parties, including a mechanism for terminating the contract.
From a purely ethical (and completely irrelevant) point of view I see this as holding banks accountable for shady lending practices. After all, it was banks and the lack of due diligence in lending practices that led to this situation.
You are under no obligation to spend several years working for your second or third choice employer just because you said you would.
Think about it this way. Imagine you said to your spouse "I said I'd marry you but that's because someone else said 'no' so I'm going to stick with it because I said I would". What would happen? Would your spouse thank you? Almost certainly not. Nobody wants to be a second choice.
An employer wants people who are excited to be working for them and enthused about what they're working on. It makes a happier employee and a better place to work. If you feel like you're trapped you'll simply mope around thinking about the other chance you gave up, helping nobody, including the employer.
Oh and as for the idea that you've crossed the employer, in my experience most people don't take this personally and, for those that do, you probably don't want to work for them anyway. Fact is, they'll probably forget who you are in a few days or less.
It might hurt your chances at working for that same company in the future but it probably won't. And if it does, considering you turned them down once, do you really want to work for them?