I don't work in FX specifically, but I've worked in various other areas in finance and trading technology [1]. Potentially off-putting factors I can think of:
- Poor working environment. Typically you'll be answering to traders, who are demanding at best, and come from a range of technical and non-technical backgrounds.
- Long working hours, with the potential for weekend work. Presumably not dissimilar to an entrepreneurial lifestyle, except that you're working for somebody else's firm.
- The areas with the most potential for earning, such as algorithmic trading, tend to have a large proportion of their pay in a performance-related bonus, so there's an element of risk involved: it's not free money. Certain top developers invest their own money, giving them even more risk and potential payoff.
Despite this, there's normally plenty of applicants when a job becomes available. For me, the most common reason for not hiring somebody has been a lack of technical skills; in the UK at least, the demand for expert C++ developers in finance definitely outweights the supply.
[1] There's been tough periods, relating to some or all of the above points, but overall I wouldn't do anything differently: every day I get to work with bright people on interesting projects.