"Our job is not to program, our job is to create value."
This bears repeating. Rare is the job that allows the job-holder to write code for the sake of writing code. Most of us have to build software that adds value to some other business process.
That takes a lot of thought and research, a little bit of code, and a lot of testing, documentation, and maintenance.
If we're lucky, we get to pass off what we consider the most mundane of those tasks to other employees. BUT! If we're good, we can (and do) perform all of those tasks when needed.
> Rare is the job that allows the job-holder to write code for the sake of writing code.
Just as rare is the job that allows the job-holder to clean up toilets for the sake of cleaning up toilets. Janitors clean toilets for a reason: allowing people to poo in a clean, healthy environment, therefore diminishing their stress and health problems, therefore making them more productive at whatever they do, which means more money for their company. On the other hand, getting paid for cleaning toilets up without reflecting on those good consequences is quite common.
Programming is the same. Many, possibly most programmers, are paid to implement specifications handed out from above, few questions asked. They are definitely not paid to think about the actual business value of the solutions they are told to implement. The bigger the company, the more junior the programmer, the truer this is.
This bears repeating. Rare is the job that allows the job-holder to write code for the sake of writing code. Most of us have to build software that adds value to some other business process.
That takes a lot of thought and research, a little bit of code, and a lot of testing, documentation, and maintenance.
If we're lucky, we get to pass off what we consider the most mundane of those tasks to other employees. BUT! If we're good, we can (and do) perform all of those tasks when needed.