What wears a developer down, and what holds them up
What draws people into this trade is well documented. What comes loose is less so, and gets mistaken for lost interest when it is something else. Three criteria account for most departures.
What draws people in is fairly constant: you build, the puzzle gives way, and something like wonder remains when the thing finally runs. Add an unusual autonomy, the work is largely conducted alone, and a particular trust in machinery you do not check yourself: the compiler, the tests, the iteration.
What comes loose is quieter. Demotivation almost never comes from lack of interest: it comes from lost confidence. The code looks too complicated, debugging drags, and the sense of producing nothing settles in even while the work advances. It is a state, not a verdict, but it is not corrected by working more.
Climbing gives the best picture: you advance by grades, taking routes a notch harder, with decent gear and somebody belaying below. Few people free solo, and nobody needs to in order to improve. Transposed to the trade, that means calibrated problems, correct tooling, and somebody who reviews.
Virtuosity follows the same rule as in music: you improvise only after a great deal of practice, and you have to have been through the thankless stretches (the bugs, production falling over) to become effective. The conditions for optimal experience described by the psychology of flow say it differently: a task that is hard but reachable, a clear goal, immediate feedback. Three things an organisation can supply or destroy.
The most useful rule fits in one sentence, borrowed from a recruiter in the field: ask yourself regularly what the pay, the interest of the work given to you, and the people you do it with are worth. While all three hold, you stay. The moment one breaks, leaving is on the table, and the two-to-three-year turnover the trade’s own surveys measure is only the sum of those breaks.
The criterion that breaks first is almost always the second, and it is the only one of the three nobody dares raise in an interview. People negotiate a salary and pick a team; they rarely ask to see the work.