The 4 Steps to Plan Your Workday
How to prepare, distribute and reschedule your time blocks for maximum efficiency
One thing that changed my approach and attitude to work completely is planning my day ahead. But not just dully pour your tasks into your to-do list but:
👉🏼 Plan the day according to your energy
👉🏼 Prioritize work items to follow your and your company’s goals
Today we are talking about planning the workday and how I approach it. Here are the steps I follow:
📊 How to determine your high- and low-energy periods throughout the workday.
⚒️ How to classify your work by the types of tasks it involves.
📝 How to plan your day.
✂️ Adjust your plan if things coming up (or down).
High and Low Energy Blocks
You aren't equally productive all day, and you know it. Some time blocks might even be better spent away from work, as you're likely to waste them due to low energy.
It took a while for me to figure out my energy blocks, but there's a simple way to do so:
Set a timer for every work hour and track your mood, energy, and alertness throughout the day. After a week of tracking, you'll see patterns of ups and downs.
For consistent results track also your sleep, physical activity, and meals. I’d elaborate on the way to do so but that's a topic for another time.
For example, this is a breakdown of my typical day (80% of workdays look like this):
9:00-12:00: High energy
12:00-15:00: Medium energy
15:00-16:30: Low energy (or no energy)
16:30-19:00: High energy, and
20:30-22:00: Middle or low energy depends on my workload before
Your daily energy map should guide your planning. You can maximize productivity by following it.
Understand the Types of Tasks
For most software engineers, task types are quite similar. It takes time to track them, especially after changing jobs, projects, or roles. After a month or two in the same position, you can predict up to 90% of your daily tasks.
My task blocks look like this:
Tech design: When I get a new task and need to figure out how to approach it, including integration and object design, and data flow layout.
High-intensity coding: Hands-on engineering tasks requiring full focus, such as algorithms, bug fixing, and refactoring.
Low-intensity coding: Implementing tech design, writing tests, and infrastructure work that doesn't push cognitive limits and feels more routine.
Peer review: Reading peers' code, deploying and testing locally, and reviewing documentation and tech designs.
Team-related work: Meetings, async activities, and agenda preparation. All social aspects of work.
Infrastructure work: Rebases, deploys, Jira ticket management, and other shallow and automatable tasks.
Once you identify your task types, set an "energy level" required for each:
Tech design: High
High-intensity coding: High
Low-intensity coding: Medium
Peer review: Medium
Team-related work: Medium
Infrastructure work: Low
Now, you're ready for the next step.
Steps to Plan Your Day
There's one type of work I haven't mentioned yet: the Daily Review. This is the time you spend planning your tasks. The goal is to connect your priorities with your energy levels to produce a daily plan.
I'm a big fan of time blocking and using a calendar. I argue that any task should have its place on the map of your day, otherwise, it can hardly be done.
Here are the steps:
Clean your inbox: Process emails, chats, Jira, and code review comments, turning them into tasks.
Plan recurring tasks: Schedule them in respective energy-level blocks. Examples include peer review, deployments, backlog, and Sentry alarm reviews. Plan these activities at the same time each day to build a habit.
Plan project work: About 70% of a developer's work involves building something. Schedule:
Tech design and decomposition in high-energy blocks.
Implementation of difficult parts in high-energy blocks.
Integrations and less intense tasks in medium-energy blocks.
Schedule remaining tasks in the appropriate time blocks - once project work is planned, fill the remaining time with smaller tasks, like handovers, deploys, clean-ups, etc.
Share your plan. It's not mandatory but highly recommended. Share your calendar with your team:
Mark the time of the deep work as “busy” to let them know when meetings aren’t possible
Commit to tasks are in your calendar, so they know what you are working on.
Now you have your day planned according to your energy map and can start working.
Yep, it won’t be so plain every time, and your plan often needs to change.
Adjusting Your Plan
Rescheduling is an important part of being intentional about your time. When urgent tasks arise or planned tasks become unnecessary, reassess priorities. Imagine two scenarios:
An Urgent Task is falling onto your head
Chats with urgent roll-outs, bug fixes, and requests can be disruptive. My rule is never to keep chat open during high-energy, deep work blocks. You know, regular updates look just the same as urgent, but appear 10+ times more often, and if you pull yourself to check whatever comes every time you hardly are able to focus.
Nonetheless, if an urgent task arises, don't just drop your current work. Evaluate what’s going on first:
Urgent bug on production? Determine if you're the best person to handle it and what the timeframe you have to fix it up.
Still no chance to avoid it? Reschedule the rest of your day. Do a mini-review and adjust today's agenda to accommodate the new priority.
Sometimes, more often than you might think, the urgent task can wait until tomorrow or be assigned to a peer with a lighter workload.
Something you are working on is no longer important
Completing a high-focus task early or it becoming irrelevant can lead to defaulting to shallow tasks or distractions.
Instead, switch to the next important and complex task to make the most of your productive time. Conduct a mini-review and focus on the next big thing.
So you get the framework when plans seem to be changed:
Evaluate updated priorities - it’s important to test new work against existing ones.
Adjust your plan following the new ones.
It takes time to master daily planning, and even after years of experimenting, I still learn new things about myself and my work. Be open-minded about your schedule. It's okay to plan hard tasks for the evening or take a nap after breakfast if it suits your biorhythms. Turn off chats during deep concentration periods to maximize productivity.
In the next deep dive, I'll focus on daily reviews with an emphasis on clarifying and prioritizing your inbox. Stay tuned!