Taro Logo
2

How to not spend way too much time in searching during software designs?

Profile picture
Anonymous User at Taro Communitya year ago

When software design tasks are given, I spend way too much time in keep looking for other wikis or resources to get information about similar problems.

I don't know when to reach out to senior engineers to get their input because I don't want them to think that I know nothing and how I even got this job. Even after some research, sometimes I can't choose an option over others despite listing pros and cons. I keep thinking about the designs all day and night till the design is finalized. How to take a break and allocate time when solving ambiguous problems?

94
1

Discussion

(1 comment)
  • 2
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    a year ago

    I don't know when to reach out to senior engineers to get their input because I don't want them to think that I know nothing and how I even got this job.

    Flip this mentality! I highly recommend watching this video on how asking questions isn't a sign of weakness. Senior engineers are literally the most important group to consult when doing software design. What is going to make the team wonder what you're doing (especially if you're a senior+ engineer) is when you make a proposal that doesn't align with the team's engineering values at all because you were too afraid of consulting the senior engineers and learning this information.

    Even after some research, sometimes I can't choose an option over others despite listing pros and cons.

    Figure out which engineering values are more important and work backwards from that. A classic one is velocity of execution vs. system stability. If your team prizes velocity, then choose the faster option.

    If everything is still equal, ask the team. They'll probably help you pick one. I talk about this more in this video about system design process.

    Another thing I recommend is time-boxing these decisions. Things drag out when there's no forcing function - It looks like this is happening to you. If you get a design task, and there's no hard date, manufacture one (e.g. "After 1 week, I will have a formal doc outlining my strategy and present it to the team").

    How to take a break and allocate time when solving ambiguous problems?

    This applies to everything in work, not just when solving ambiguous problems. Set clear boundaries for yourself, use your PTO, and don't go >40 hours per week too often. Check out this discussion that covers this all more.