Let’s start from the smallest to the biggest five reasons why programming and software development is awesome.
The reason number 5 (smallest) is programming can pay really well. The average income in the USA is somewhere along $50K per year per household. Programmers typically starts their careers with $80K/year salaries. In major metro areas the salaries are way higher than that. They can easily be in the $120–150K/year range.
The reason number 4 is that you are never bored. There’s always something new. Sometimes new technologies come out before you even release your product. Thus, you are never out of things to learn and update. A lot of people are bored out of their minds at their jobs. Most of them perform the same mundane tasks for 5, 10, 15 years… Not you. Lucky you! Programmers can always grow, learn and master the skills by learning and seeking more challenging problems and solving them.
The reason number 3 is that it’s a real career. Some jobs are not careers. Avoid them. For example, a taxi or an Uber/Lyft driver will always be a driver. A Denny’s waitress will always be a waitress even after 40 years at her job. It’s a dead end. Avoid it. A lot of programmers start as junior developers/engineers, then they progress to associate developers. This could happen in as short as two (2) years. After that, some of them are promoted to senior developers in as short as 3–4 years. That’s not all. The path continues to principal, staff engineer, architect, manager, director, vice president of engineering and to CTO. A lot of tech companies have engineers as their senior leaders, e.g., Microsoft, Google, etc.
Indeed, where I work as an Engineering Leader, has a clear career track for engineers. Make sure when you search for a new job, you apply only to tech companies because tech companies will respect software engineering and engineers. If you want to work with me in San Francisco or Mountain View on some cool multimillion-user products and help people to get jobs then apply to work on Indeed at http://indeed.jobs. Or reply with your resume and I’ll pass it to HR.
The reason number 2 is that programming is very suitable for the remote lifestyle. You can travel the world or live in a place you like while working remotely with smart people and getting paid a lot of money. You don’t have to pay huge rent and live in a stinky place like San Francisco if you don’t like it.
The reason number 1 (biggest) is programming is creative and a pure thought being materialized into tangible assets and useful products (apps, services, scripts, etc.). Not many activities are so pure. Drawing requires to paint and to over come physical limitations of the paint, brush, paper and other materials. Writing and programming are the only two activities which can produce useful good products just out of thin air with skills, time and imagination!