Unlike most jobs, software development is in high demand. Pay, flexibility, and company culture can be great.
Like most jobs, software development isn't fun most of the time for most people. When a job is really fun, other people will do it for low pay, competition will increase, and average pay will drop (see: writing, music, non-pro sports). So in some ways, you won't find a job that is fun to a wide variety of people and also high-paying.
That said, some people want to code all day, and then they'll do unpaid side projects after the work day ends. Even if you're not one of them, you're competing with them, so maybe this isn't the best type of job for you.