If you're going to optimize for money, optimize for money. I optimized for money for years and have no regrets. I'm now enjoying the fruits of that choice living in Asia and the amount of effort sacrificed was totally worth it.<p>You have a wife and kids now, I would heavily advise against E. (From the tone of your post it looks like you know this). This is what I do now, but I'm currently not optimizing for money.<p>C is doable. One leetcode question a day for five months then one month of hardcore interviewing will get you there without much sacrifice for family life. You can find that extra hour in your day by waking up an hour early. Remember, we're optimizing for money here, not short term happiness, if you feel frustrated every day trying to re-learn how to reverse a linked list, remind yourself that's the _correct_ feeling to have and it means you're moving closer towards your goal. The end result is a better life for your family.<p>D is basically C, except without doing one leetcode question a day. You still need to do a 1-2 months of hardcore interviewing. 80% of the effort for 1/2 of the results is a bad trade.<p>However, if you're _not_ optimizing for money, there's option F: move somewhere cheaper and work get a remote gig. I'm currently in Taipei and am friends with a lot of people who've made this decision. Some with families, some without, some single. The main thing we had in common was we valued autonomy over everything else. I have other friends who stayed in Canada/USA because they value extended family over autonomy, and that's OK too!<p>This sounds cheesy, but if you haven't already write down your 4-7 core values then make decisions based on those. Making decisions that align with my values has reduced my anxiety drastically.