A general point: it's important to adjust one's interpretation of salary by factoring in things like cost of living. Software engineers in New York and San Francisco make more money on average than those in other parts of the world, but it's very expensive to live, especially at a respectable standard of living, in both of these cities, dramatically offsetting the jump in salary. London is, of course, also very expensive, so I imagine my comment may not be quite as relevant.