Most of Your Life Is the Boring Work
The Emptiest Days Are the Ones That Felt Full
Twenty-five years in, the numbers stop being abstract. You can count the systems you have left in you. Not precisely, but closely enough. A handful more big builds, some number of years of maintenance and review and the slow work of handing things off, and then the count runs out. The runway is visible from here in a way it never was at year 10.
The thing nobody mentions when they talk about finding your purpose: most of the hours you have left are going to be spent on work that does not matter very much. The CRUD app. The migration nobody will remember. The ticket that closes another ticket. You are going to die, and a large share of your remaining finite time is going to go to the unremarkable middle of the job.
So the honest version of memento mori is not the inspirational one. It is the uncomfortable question the inspirational version skips. You will die. Should you really be spending a Tuesday on this?
The answer that’s true but not enough
There is an answer to that question that I have given before, and it is true. Your time is finite and nonrefundable. If the work is hollow all the way down, if you are trading your one life for a paycheck and calling it safety, then the running out of time is the argument to leave. To go do the work that is actually yours. I stand by that. I am not going to walk it back here, because walking it back would be a lie, and most people sitting in a job they have outgrown already know it.
But it is not the whole truth. The clean version, just leave, assumes an escape that is not always available and not always right. You have obligations. You have people who depend on the paycheck landing. You are good at something the world pays for and indifferent to most of what it would pay you to be passionate about. The follow-your-passion promise, the one where the work stops feeling like work, is mostly sold by people who already escaped, to people who cannot. For most working developers, most of the time, the ordinary work is not a phase to be exited. It is the job. It is going to stay the job.
You can’t make it permanent
So if you cannot reliably escape the ordinary work, the next move people reach for is to redeem it. To make it matter by making it permanent. To build something that outlasts them.
I have made the case elsewhere that this does not work, and I will not relitigate it. Your code dies. The framework you mastered will go obsolete, the clever system you are proud of will be deleted or rewritten by someone who curses your name, and the monument you are quietly trying to build out of source code has the structural integrity of a sandcastle at high tide. Permanence is not on the menu. If the meaning of your work depended on it lasting, the work would be meaningless, because none of it lasts.
Which seems to leave nothing. You cannot escape the ordinary hours and you cannot immortalize them. That looks like a dead end. It is actually the whole point.
Occupied is not the same as alive
Seneca put the diagnosis better than anyone has since. The problem was never that we get a short life. The problem is that we waste most of the one we get. He had a word for the people who fill their days with motion and call it living: occupatus. Occupied. Busy with everything, present for none of it, mistaking the volume of activity for the substance of a life. The occupied man, he observed, is the least equipped of all to die, because he has not yet gotten around to living.
You have had this day. The one where you went heads-down at nine and looked up at six and could not name a single thing you would defend. Standup, then three meetings, then forty Slack threads, then a dozen ticket comments and two context switches per hour, and somewhere in there your actual work waited and did not get done. That day felt full. It was the emptiest kind of day there is. That is occupatus, and the modern toolchain is a machine for manufacturing it.
We have never had more ways to be busy and call it work.
The Stoic move out of it is the one the whole tradition turns on, and it is not the bumper-sticker version about staying calm. It is a sorting. The outcome of your work, whether the system ships, whether anyone notices, whether it survives the next reorg, is not up to you and never was. It is a preferred indifferent. Nice to have, not the thing of value. What is up to you is the quality of attention and judgment you bring to the hours while you are inside them. That is the only part death does not get a vote on.
This is where it stops being abstract. Marcus Aurelius told himself to perform each action as if it were the last of his life, with dignity and full focus, free of the desire to impress anyone and free of resentment at his own circumstances. Read that as a productivity hack and you miss all of it. He was not talking about doing more. He was talking about how you occupy the present action, including a boring one, including one nobody will ever praise. The CRUD app does not become important. Your conduct inside it is the only place your character actually exists.
How you spend the hours is not the preparation for the life. It is the life. There is nothing else it is made of. A career is not the few significant projects with the forgettable work in between. It is the forgettable work, almost all the way down, and the only open question is whether you were present and honest and careful inside it, or whether you were merely occupied, waiting for the part that mattered to finally arrive.
The only thing that survives
That still leaves the legacy question, the one that gets sharper the closer you get to the end of the count. If the code does not last, what does?
The only thing I have watched survive is the people.
Not in a sentimental way. In a specific, observable one. The judgment you built over a long time, the thing that catches the missing null check in twelve seconds, the instinct for which corner of the system is about to rot, you cannot ship that in source code. But you can hand it to a person. Working next to someone, slowly, the way it was once handed to you. Debugging out loud so a junior watches how you think instead of just what you typed. Letting someone sit in the confusion long enough to form the muscle, instead of handing over the answer because it is faster and the sprint is ending. Most of what your best mentors gave you was not information. It was a way of seeing, transmitted through proximity, and it outlived every system the two of you ever touched.
That is a legacy precisely because it was never yours to keep. You do not own it once it is transmitted. It walks out of the building in someone else’s head and surfaces years later in a decision you will never see, made by someone who may not remember where they learned it. The code was always going to die. The person carries it forward, and does not need your name attached for it to have been worth doing.
The hours pass either way
None of this resolves the first question, and I am not going to pretend it does. The CRUD app may still not be worth your one finite life. If it is hollow all the way down, leave, the way I said before. That tension does not close, and you should be suspicious of anyone who tells you it does.
But for the ordinary work you are not going to escape, the work that is simply the job, mortality does not make it significant and it does not hand you permission to phone it in until something better shows up. It clarifies the only thing that was ever in your hands. The hours are going to pass either way. You will spend them lived, or you will spend them merely occupied. Death decides the number. You decide the rest.
Quote of the Day:
“It is not that we have a short time to live, but that we waste a lot of it.” - Seneca
👉 If you enjoy reading this post, feel free to share it with friends!
Or feel free to click the ❤️ button on this post so more people can discover it on Substack 🙏
You can find me on X and Instagram.


