Deep work vs multitasking for developers
Five years ago, most of my work was single-threaded. As a CS student and developer, it was mostly one task, one problem, long blocks of focus.
Then I started pullpo.io, and that changed overnight. Suddenly, my day was split between product, customers, bugs, sales, legal, support, contracts, emails, and random urgent things at the same time.
I think most developers are facing a similar shift: waiting for AI agents responses, worktrees, async reviews, CI, Slack.. make engineering less purely single-threaded.
I find it useful to be conscious of which work mode you are in:
Deep work mode. Single thread.
For architecture, complex debugging, defining specs and requirements, risky reviews, setting up the AI harness.
Orchestration mode
This is managing computers working for you: agents coding your requirements, tests running, small PRs, docs, refactors, and parallel branches.
Here, being too single-threaded can be slow and break your flow too.
Admin / communication mode
For messages, ticket clarification, quick feedback, follow-ups, and unblocking people.
Here, deep work is overkill.
The hard part is knowing when to switch based on business needs, and also how you feel.
Single-threading has a cost: waiting.
Multi-threading has a cost: context loss.
Originally published in CTO Circle Issue 008.