There can be a number of factors that stimulate a programmer to leave their job to someone else. Below we mention a few such points:
The continuous and monotonous mind encapsulating nature of the job dissatisfies the person who has adopted. The unaltered routine everyday nonstop for hours leds down the programmers as during the process of writing a computer program that cannot pause out of it into the real world very often, otherwise they lose their concentration and the series of logical steps streamlined into their minds might disintegrate.
Programming is a task that requires severe concentration of the mind and body both. This intense exercise tires the human mind and makes programmers sick of their job.
Sitting for long hours affects the physical efficiency of a human being as is an unhealthy practice in itself. Sickness and unhealthiness may arise due to this job.
Growing age of a programmer lessens his mental capability to maintain the stream of logical steps in it that need to be followed in order to write a program. This slows down his coding speed and also irritates him. This is one of the reasons why programmers leave their job. They feel they cannot do optimal justice to it anymore.
Since programming is a long and time consuming continuous job therefore programmers do not get time to learn new and fast emerging programming techniques and certifications. This makes them lack behind in skills as compared to the new and upcoming programmers. This often demotivates the programmers.
When a programmer becomes experienced in his job the programming tasks enable him to predict the design level details of the tasks assigned to him. His inclination towards design level lessens his interest in his current job.