How to prioritize your day
A former co-worker once told me, "This company will consume all 24 hours of your day if you allow it to.”
At the higher levels of individual contributor roles at a software company, you may be bombarded with many responsibilities. You should identify your multiple roles and group them according to priority. Many of these will not be in your job description, nor within your primary role’s scope.
It may look something like this:
Do I respond to the 10 Slack messages asking for my opinion?
Do I build a feature?
Do I plan out commitments for this next quarter so other teams can trust me?
You are a small product team or you work alone as part of a large company. How do you prioritize and re-prioritize your tasks each day? The following four roles need to be filled even if it’s an internal product without paying customers. Be sure to empower others to take on these roles and collaborate as a team. The following prioritization assumes these roles are not filled already.
Product Owner
Project Manager
Lead Engineer
Engineer
Product Owner
Primary actions
Eliminate
Connect
Define
Common tasks you may want to do:
Define/protect project scope. Say “no” to things. This could be a quick decision. Even if your project is an internal engineering or design initiative, knowing what your consumers want is crucial. You can shield your team from next year’s problems by saying "no." Remember, to be unclear is to be unkind.
Active expansion/adoption, storytelling. Speaking of why and clarity? What do you and your team do here? Why is this role significant? What are you doing next quarter? What story are you telling the rest of the organization? Is there a slide deck that conveys the problem you are solving that can easily be understood by anyone at the company? This may not be an urgent task, but it better get done.
Quick reactive on-boarding requests. Can we contribute? You should be able to connect and provide support to partners quickly.
Quick break down silos: Introduce and connect people. Build connections with subject matter experts across the organization. This could be through one-on-one meetings, planning meetings, or attending internal presentations.
Customer/consumer/representative (face of the project). Do others know who to follow up with for your product, whether it is internal or external. Are you easy to contact if questions arise?
Project Manager
Primary actions
Delegate
Communicate
Define
Manage
Common tasks you may want to do:
Prioritize. What is the most important task this week or this quarter? This is also helpful if others ask how they can contribute.
Groom tasks. Write user stories. Describe the task so that others can handle it. This is also helpful if others ask how they can contribute.
Communicate a transparent process and clear expectations. How are your contribution guidelines documented? If this project scales, a simple written explanation can help folks self-serve.
Lead engineer
Primary actions
Automate
Review the code to ensure quality
Common tasks you may want to do:
Do more with less with scale/impact tasks. How is your testing and continuous integration workflow? Do you really want to manually validate each contribution?
Objectives and Key Results (OKR) feature asks. These are two or three key features that you may not want to delegate depending on your availability. However, at the end of the day, leadership wants deliverables. If you delegate the task, a defined architecture or interface is helpful.
Code review. Consistency across a large codebase will bring you a long way.
Guide/architect upcoming features. Be proactive about upcoming features. Have a short conversation before implementing.
Engineer
Support. Answer questions about bugs, especially ones that require context.
Ship features, fulfill requests from teams/engineers. It can be tempting to start coding right away. Many of these can be delegated if well-defined. You may also find yourself not finishing high-leverage and high-impact tasks.
Principles to keep in mind
In conclusion, these three principles will guide your team.
Focus everyone on outcome over output
Build and maintain a shared understanding
Make sure decisions are made.
How do you prioritize your day? Which tasks would you like to cross off first?
Owning your task list and separating your tasks into buckets by role can help prioritize your day without being overwhelmed.