In today's ever-growing software landscape of tools and experience to gain, we can find ourselves lost wanting to do more, yet feeling like we don't have enough hours in the day to accomplish everything we want.
This problem is all too common in every level of industry, and as software engineers we can find ourselves racing to finish multiple things yet never actually reaching the finish line with anything. If by chance we do, we're often burnt out and ready for vacation (sometimes after a few days). Sadly, we all can't be Elon Musk, but we can begin to fix our habits and patterns to feel more like a genius.
As professionals in any fields, it's important that we execute on our work in a consistent way that helps us not only feel productive, but also feel like we're helping achieve business goals as well as personal growth goals.
Taking an example straight from my own life, I found myself mentally exhausted trying to keep up with everything in my life - my job, personal projects, and my life goals. It seemed like I had so much going on, but my fatal flaw was the fact that keeping myself busy with so much didn't make me feel accomplished. Something had to change.
Simply put, there are no downsides to better time management. The act of time management is a great key to our success in whatever we do. While it's as simple as just doing it, focus and consistency are needed to really be successful. Because we live in a world where the speed of business and technology is increasing, being decisive about priorities is even more important. Where we fail is when we try to make snap decisions especially for important tasks that require our full attention.
Not only does it take focus and consistency to succeed, but when a person knows what they're doing for the week, day, or hour, they can better focus on tasks and feel better about whatever they're doing. There's a sense of clarity that comes as a result of having a single focus on one thing and executing on it, even if it's not to completion.
Being a master of your time can be a difficult task at first, but with some grit and determination, paving the road to success can become easier.
Say you need to meet a deadline for a project with a release in a few days. How can we make our lives easier in a short period of time?
The first step is to write down all you tasks including goals, milestones, or whatever you use to describe large bodies of work. This will paint a clear picture of what is and what is not a priority.
Wins from doing this include:
- framing your to-dos to better execute them
- freeing your mind from trying to remember why you're doing something
- strategizing how to best execute tasks
Pro tip: adding goals and activities you're already currently working on to this list helps make sure nothing is missed.
This doesn't have to be a complicated step with each goal or task being general. In the next section, we'll see how to be effective with this list.
Now we have a list of things to accomplish and activities already invested in, but we haven't figured out what to perform first.
The best way we can prioritize these items is to place value on them. Value can be added to tasks by determing how much of an impact one task can make over the other. We can even timebox them to further increase that value.
Ask youself these questions to categorize tasks:
- Is it urgent and important?
- Is it important, but not as urgent?
- Is it urgent, but not important?
- Is it neither urgent nor important?
Remember urgency often has a time limit, and importance can be specific to you or to a group of persons.
A couple of examples look like this:
- Release candidate to deploy to production by 3/1/2021. Urgent because there's a due date, and important because it affects the team and/or business.
- Technical task to unblock a portion of work. Doesn't have a time limit, but could help unblock yourself or another developer.
Lastly, and this may be the hardest part about time management: consistency is another one of those building blocks to success and it's absolutely critical that all of the effort so far does not crash down on us.
This one really comes down to knowing how best you work. Whether it's waking up at 4:30 am to get your mind ready for the day or working out to keep your body active, figure out your motivation for the work being done and put it into your schedule.
What you gain from doing this is:
- a clear visualization of what's being worked on for the day or week
- what's up next on your agenda
- when you'll have your breaks to recharge and finish strong
A note on breaks: developers write code, check processes, do code reviews, plan solutions to unique problems, suggest and articulate solutions, and the list goes on. Without scheduled breaks, we'd be on the fast track to burn out before the day's out.
Make a plan solid by strategizing about the plan and how you'll stick to it. It makes a world of difference to set your work space away from your bedroom, or to work at the office or a coffee shop. Prepare healthy meals ahead of time so you're not skipping meals or eating junk. Workout during the week because your body is a temple, and the mind needs the body like the body needs a fully functioning mind.
As stated before, write things down and block out your time, so you know what you can and can't commit to. Here are a few tools that I use to get me through the day feeling well-accomplished:
iCal - makes it easy to import multiple calendars, from one or more email addresses, into a single calendar view.
Google Calendar - you won't get the same importing features as iCal, but their interface makes it easy to add shared calendars.
If you can find a 3rd-party mail client that offers the same flexibility as iCal, I'd recommend that for the single calendar view.
Notion - Notion has changed the way I operate entirely. You can use the free version personally and for work. It just requires that you use one email address per workspace.
With Notion, you can:
- Take general notes
- Keep a work log
- Generate to a table of tasks
- Set reminders for tasks
- Sort tasks into views
- Use user-built templates. Some you can buy while others provide instructions on how to make them your own.
If Notion isn't the right fit for you, Evernote is another really great tool for assembling thoughts into books, articles, and notes. It also features templates more than Notion does.
In the earlier example of a deadline for a release candidate, it may feel like there's no time left before that deadline rolls around. That sinking feeling like you're running out of time is the reason you should manage your expectations, priorities, and time.
Only good things can come from taking back your time and focusing it. At the end of the day, you can look back and feel a sense of freedom. Be good to future you!
This Dot Labs is a modern web consultancy focused on helping companies realize their digital transformation efforts. For expert architectural guidance, training, or consulting in React, Angular, Vue, Web Components, GraphQL, Node, Bazel, or Polymer, visit thisdotlabs.com.
This Dot Media is focused on creating an inclusive and educational web for all. We keep you up to date with advancements in the modern web through events, podcasts, and free content. To learn, visit thisdot.co.