How to program yourself out of a job
Have you ever run into an issue in an application you were developing where you could see the code buckling and breaking from the hacks and workarounds that have been added over the years? I know I have. What separates the passionate developer from the day job developer? The passionate developer will show you his plans for fixing the root cause of the issue and the day job developer will say he would fix it if there was enough time and he will keep patching the problem.
If you want to bring very little value to your client and make it that much easier for them to hire an offshore code-monkey for half the price then keep being a day job developer. If your company stifles reasonable risk taking and innovation and pushes people to toe the company line then don’t be surprised that your workers are unhappy, not dedicated, and produce inferior products.
If you went to the doctor and complain that your knees hurt would you rather he gives you some aspirin and send you off to return with worse symptoms later or that he helps you lose the 800 lbs that is causing the problem? Any idiot can treat the symptoms. You went to the doctor because you needed professional advice.
If you find yourself writing code to constantly treat the symptoms and not the root cause then don’t be surprised when your employer asks you how you let things get so bad. The constraints will always be there. Everyone wants everything done this second for free. You have to make sure you have the integrity and courage to stand up for what you think is right. Otherwise you are a replaceable code-monkey providing questionable value to business.