15

How to find time to help others?

Profile picture
Anonymous User at Taro Community2 years ago

I am getting overwhelmed with my work, in this team for about 1 year. How should I optimize to squeeze time to help others?

Helping others gives me more joy than doing my own work :) . that is not my core work though.

1.5K
6

Discussion

(6 comments)
  • 15
    Profile picture
    Ex-Microsoft, Ex-Meta, Ex-CEO of tech nonprofit
    2 years ago

    There's always room for ice cream.

    It's super-important that you always give yourself the grace to do things you enjoy. It makes work sustainable.

    There's always time, but it doesn't come for free. If you need to work 55 hours this week, yet you enjoy helping others, you should work 57 and help someone for two hours. This is always worth doing, because it's not for work — it's for you. (Note I didn't say that you should work 53 and use the final two for helping others; in many cases, it's not possible to squeeze magic time out of nowhere, with literally zero consequences or tradeoffs with anything else).

    Note:

    • Helping others is not only personally rewarding, but it's usually a fun pay-it-forward sort of lotto system. You never know which one of those people will help you in the future.
    • Sometimes you can barter. "I really want to help you because I love helping folks, but right now I'm flooded. Would you be open to tackling bug #3147 for me? That'd create room for me to help you with your stuff."
    • Even if bartering isn't practical, helping others often builds a bank of goodwill that you can withdraw from later. So in a way, putting in some extra hours now to help someone may well reduce your hours down the line when they help you.
    • All of that said, it's ultimately not about tit-for-tat transactionalism. The best part about helping others is the great feeling we get from doing so. That award — alone — should be enough to stretch for.
  • 8
    Profile picture
    Engineering Manager at Blend
    2 years ago

    The way that you phrased the question makes it seem like you're already working very hard (e.g. long hours) to accomplish all the tasks assigned to you. When you say, "squeeze time to help others", it's based on the assumption that you are already managing your time very well.

    Here's some thoughts:

    1. What is your current time management system? (e.g. what hours of the day are you most productive, what schedule do you have for deep work, are you being prudent in choosing which meetings I attend, etc)
      1. Here's a video on time management system from Uncle Steve
    2. Once you've got your time management system established, decide/ask yourself, "how much time throughout the week do I want to dedicate to helping others?" And then schedule that into your calendar/week.
    3. Find opportunities to help at scale – oftentimes, the same type of questions get asked on a repeated basis and doing 1:1 zoom calls to answer questions can feel repetitive. If you feel that others can benefit from the help you're giving, find ways to write it / present it once and then distribute it to the rest of the team. (e.g. recording presentation, writing documentation)
  • 8
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    2 years ago

    I am getting overwhelmed with my work, in this team for about 1 year. How should I optimize to squeeze time to help others?

    Ideally these 2 activities of achieving project goals and helping others go hand-in-hand. One of the most important aspects of working at senior+ levels is that you are working through others: This is a huge piece in sustaining the massive amount of impact expected at these levels.

    At the end of the day, anything you're doing can be taught to someone else. This all works out as there's generally different levels of complexity to engineering work: What's straightforward to a senior engineer is often a great learning challenge for a mid-level or junior engineer.

    This is why I'm such a huge believer in mentorship:

    • It's a fulfilling activity that brings massive joy - This was the case for me, and I imagine this would be the case for you as well! It's such a great feeling knowing that your support so meaningfully improved the life and growth trajectory of another human being.
    • It makes teams better - When more senior engineers share their wisdom, there are more people able to fill in more roles. This makes the team more resilient and robust in the face of turnover and prolonged time-off from team members.
    • It lets you scale yourself - By being able to comfortably delegate your work to someone else, this frees up your time, reducing stress and giving you the breathing room to find more exciting scope to get you to that next level.

    I strongly believe that if you play your cards right, there is a good chance you can have your cake and eat it too, streamlining your own workload while seriously empowering others within your team. I also recommend talking with your manager about this - Hopefully you two can work together to decrease your immediate workload, so you can spend a good amount of time providing deep help across the team. When this works out, it truly benefits everybody.

    We have a lot of great resources around mentorship in Taro - Here's some of my favorites to help you out on this journey:

  • 6
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    2 years ago

    All that being said, here's a bunch of other resources to help with general productivity no matter your situation:

    Being overwhelmed is simply not sustainable, and you mentioned that it's been that way for a year. It may be doable if you're a youngster, but it will start eating away at your well-being over time.

    Have a transparent dialog with your manager about this and always ruthlessly prioritize. Best of luck!

  • 4
    Profile picture
    Senior Software Engineer at IBM
    2 years ago

    What's been highlighted really well is the joy of teaching and how you can help others, but honestly it doesn't always have to be fully at the expense of your own time or immediate deliverables. Everything you deliver on has an enterprise-wide impact, otherwise there's no point in doing the work. What's not being mentioned is how to make that time and what you can do with the time that's freed up to move others along a good path.

    Everything I work on is a group project and to give you a sense, I'm focusing on event management right now. I committed to modernizing things one way and didn't want to bother people at the time since they were more focused than I on picking up some new knowledge. I cut one way that while nice, might have incurred some tech debt for the project since the OS natively supports conversion to another format that's easier to handle. My mistake early on cost me maybe 20hrs of work.

    Ok, that stinks, but now I know. Before I made the same mistake and even dedicated time to fix it and move to the better supported method, I asked a coworker who better understood the ancillary tech than I did how to handle things and we think cutting a different way might be able to handle easier and bring under automation, but now I'm purposefully waiting to execute on certain aspects of the project until the team gets a couple meetings under their belt and to see what their preferences are, otherwise more work = more tech debt without knowing preferences.

    By the way, the 2hrs that I would've spent cleaning things up, migrating, etc, I am now spending here with you in part writing this because other folks I need to work with on high impact work are tied up until next week. Most important thing, in this job role, I don't go over 40 hrs of week, though of course I'm not counting the ~1800hrs of education I did on my own time in the last couple years before coming into this job role, that makes everything so much easier. Please forgive the flexing. It's more just trying to say that having fine-grained controls over all aspects of your life and work and turning the dial up and down as appropriate will make your life so much easier. Combine with becoming an expert in a specific technology or set of technologies you really enjoy and your utility, leverage will go through the roof. All's fair love and war. Make sure you contribute enough hands-on to be of use in the problem solving process, contribute your fair share of design points, and don't necessarily try to know everything and you should be on the right way to becoming an expert people can rely on.

  • 3
    Profile picture
    Mid-Level Software Engineer [SDE 2] at Amazon
    2 years ago

    There is some great advice in the above answers, a few things that I think can help are

    1. Hold office hours, reserve lets say one hour slots twice a week and let the team members know that anyone can reserve time with you or just drop in. You can help them troubleshoot, review code/design etc during the time. Be strict with the slots so that you get time to work on your primary tasks.
    2. Avoid context switching as much as possible. I, for example generally work 90 or 60 mins blocks in which I pause notifications. 25 mins pomodoro sessions don't work for me because it takes me some time to focus and actually be productive. 2-3 blocks a day is a pretty good day for me.
    3. Since you are relatively new at the company, its possible that you are not an expert on all stacks/areas in the team (often, a lot of history is needed to truly know the codebase well). If this is true for you as well, choose wisely on what you agree to help others with.
    4. Avoid doing repetitive tasks when helping others, If several people are facing an issue, can we eliminate the issue with a code fix or update the documentation etc.
    5. Delegate. If you just helped person A resolve an issue and person B also has the issue now, can person A help person B now.