Programming Is a Dead End Job
Do you love to program? Don't expect to ever become CEO unless you start your own company - but even then the needs of leadership will likely result in not writing any more code.
In most jobs as long as you continue to write code you will likely have a limited set of promotions you can get. Usually you go through some kind of hierarchy from junior to senior to lead programmer or software engineer. Maybe you can get promoted to an architect role but in many places architects don't get to code anymore.
If you decide to switch to management, then the sky is the limit. Our parent company's former CEO started off as a programmer 25 years ago, switched to manager; in 15 years he went all the way to being CEO of a $4B company. After 10 years he retired recently with mansions and cars and no worries. Meanwhile I work with people who started around the same time and who are still senior software engineers.
Is that unfair? I don't know, if you love to program and make a decent wage and enjoy your work, do you really need constant promotions? Not everyone can or want to start a company (I did two in my early career). Sometimes it doesn't feel fair, as no matter how amazing you are at programming you can never make the kind of money even a modest executive makes. You might not even have the opportunity to decide what to work on or how without switching jobs until a good one appears. Or you can give in and become a manager.
My former manager here was a programmer for 15 years before he started our mobile group 5 years ago. As the group built up and became successful he would occasionally fix a bug or make some minor change because everyone else was busy but he never claimed to be a programmer any more. He eventually moved on and got a VP equivalent position at a brand name company in another state with a lot more responsibility and visibility and of course pay. Our division is changing to be a marketing only brand, so our mobile group is mostly gone now. All the rest of us have or will get the same type of job and likely similar pay. It's the nature of the beast.
I guess as a programmer you might get lucky and work for a startup with a big payout, but it's actually pretty rare. I did a contract at a company in the mid-90's shortly after they went public. My neighbor had worked for multiple startups that all failed until he went there and wound up with $12M. He later got a job as a programmer working for peanuts because he still loved to program but didn't need money or want to do more. It's a lot more likely you just get paid regular money and maybe a small bonus. I guess people who work for Google or some huge company make a lot more money than the average programmer, but it's still pretty limited compared to what being an executive or manager can make.
The average programmer, even if they are amazingly talented, is likely to work for similar wages for long periods of time. A lot of companies probably assume that all programmers are equivalent and replaceable, and that if they were amazing, they should be in a management role.
In my first startup I functioned as the lead programmer but also dealt with the press, investors, hiring, benefits, marketing and the like. It sucked too much time out of my life. The second one was mostly captive product development so it was less non-coding stuff but completely. After that I swore ever doing it again!
My sister started off at her company as a programmer but after six months they moved her into a management track and now she has been a fairly high level VP for a long time. Again, the sky's the limit if you give up programming.
If you love to program like me, you can't help but notice that you will have a minimal upside over your career. Maybe it's dumb but you have a choice between doing what you love and making a big payout by doing something else. For some, starting a company is a better choice. For others moving your career in a different direction and giving programming up is a better choice. For me, programming is what I want to do but I have to be a realist.
I once worked a job in Hawaii (for a consulting firm). The people I worked with said they knew they were being paid less that similar positions on the mainland, and they assumed it was because a job benefit was living in Hawaii!
Whatever you do, you have to find a balance between doing what you love and making enough money to live the life you want, or what your family needs. It's not always an easy choice.