Balance. The goal for many adults involved in multiple things simultaneously in and out of our careers. I am a Software Engineer in big tech with some mentoring and volunteering engagements.
Over time, I have learned how to succeed polyworking in these multiple roles. Here's how I did it.
Balancing mentoring and volunteering with a full-time job coding
To understand why this article is important, let’s learn about these three roles:
- Software Engineering: As my day job, I build Mixed Reality on the Cloud at Microsoft. For me, this involves writing design documents, coding and infrastructure engineering.
- Mentoring: I usually volunteer to mentor during Microsoft LEAP cohorts. However outside this, there are some student software developers that I constantly talk to about their career. I make myself available for this during some weeks and this requires time from me and the other people involved.
- Volunteering: The community gets stronger by the minute because of the quality of volunteers and community leaders devoting their time to make things happen. I became a team lead for an open source community last year and initially, I struggled a lot. Committing more of my time for weekly syncs and tasks were very hard but I learned to make it work too.
A lot of people in tech want to be able to do things outside of just writing code or doing their technical jobs. But as you can see, these things on their own take work. I’ve perfected the art of multitasking, and you can too.
How I achieved balance
Sync your calendars. While managing multiple programs, the importance of scheduling cannot be overemphasized. Calendars help you keep track of meetings, deadlines and important events. However a big problem when running multiple programs is that you might have multiple calendars too and keeping track can get complicated (e.g. events on multiple calendars could overlap). A solution to this problem is to sync all your calendars (or use only one calendar) so that all events are managed from one place. This has prevented me from scheduling overlapping events and having to disappoint people.
Rest. Sleep is great, and we shouldn’t take it for granted. For the sake of our physical and mental health, it’s important to get 8 hours of sleep everyday. When you rest well, you are calmer and are able to concentrate better. I found that when I stopped overworking myself and started sleeping well, I became more productive at my job and other activities because I was able to work faster.
Plan your tasks. Having todo lists help you articulate the things you need to get done in a day or week and you’re able to balance out tasks for work and other engagements into your day. See a sample todo list below:
- Work on System Design Document
- Address pull request comments on Work item #239910
- Sync with PM on testing metrics
- Sync with mentee on interview prep
- Review 2nd mentees pull request
- Research on prices for tech event budget
- Review call for papers
This list has 3 work tasks, 2 mentoring tasks and 2 volunteering tasks. When all these tasks are itemized, it’s easy to know where you want to focus your energy on today and you don’t spend time doing 5 work things and ignoring other areas.
Think about the best ways to spend your day
Articulating what you’d like to spend your day doing creates a structure you can follow and that helps with improving productivity across the board.
Delegate. Each day has 24 hours and that cannot change. If you have a lot to do and some of those things don’t require your specific skill set. It’s okay to delegate them to free up some time for yourself. You’re able to get more done that way. For example, if I had a lot of work to do and I also needed groceries, instead of abandoning all that work to go grocery shopping, I could write a list of things and give it to someone else to get those items for me.
Say no. This one is particularly hard. As people working in tech that want to grow our careers and add value, it’s easy to get caught in a lot of requests and truthfully, you’re one person and you can’t “help” with everything. When your plate is almost full, it’s okay to say no and recommend the opportunity to someone else in your community that you know can benefit from it.
Prioritize. On some days, you wouldn’t cross off all the things on your todo list and that’s okay. This is why you should prioritize your tasks and you’re always working on the task with the highest priority first. If you need to move tasks to a new day, they shouldn’t usually be things that have deadlines and consequences.
Track your time & ask for help. Timeboxing things help you track your time. It’s important to know that you’re not spending a lot more time than required on a particular thing. Because life isn’t straightforward, if for any reason you’re stuck on something for longer than expected, ask for help because a problem shared is a problem half solved and the other person might help with an answer or might just be a really great rubber duck.
Setup a home office. This helps me a lot with context switching. I only do work stuff at my work desk and this helps me not overspend time doing engineering work. I created a space for working and other tech community things and when I’m outside of that space, I do things outside that space. That helps me live a balanced life.
Enjoy your work. For sustainability, I believe it's important to enjoy what you do. You’d be able to show up everyday and do it well. Study yourself, know what works for you and that to fuse that energy into all the things you do.
To stay focused and get things done, I try to follow these principles as much as I can either at my home or at my job or in any other thing that I have to do.