Taro Logo
0

Finding scope in a team with multiple senior devs

Profile picture
Senior Software Engineer at Taro Community6 months ago

I work as a senior iOS engineer on a team with 2 iOS developers (including me), 2 Android developers, and 3 backend developers. While we are all senior engineers, one backend developer, one iOS developer, and one Android developer have been at the company longer and possess deeper knowledge of our systems. As a result, they have more influence over priorities and how the team operates.

I’m trying to make a bigger impact and carve out my own space, but I’m finding it challenging because it feels like there isn’t much room for me to step up.

What are my options to navigate this situation effectively?

53
3

Discussion

(3 comments)
  • 1
    Profile picture
    Engineer @ Robinhood
    6 months ago

    That Android engineer pretty much sounds like the position I'm currently in my org. So the perspective that I can share is how did I get into this position.

    • I wrote a ton of code: I consistently do 2x-3x the yearly average for mobile engineers.
    • Whenever I had spare bandwidth, I'd immediately try to refactor/delete something based on how much I had to spare. This led to me understanding the codebase more broadly and allowed me to play around with figuring out how I wanted my code to look.
    • I spent a lot of time iterating on the code I wrote so I was exposed to pain points that my past decision introduced. Over time as I got more exposure to these points, I also began to code around them or be more deliberate for the tradeoffs I wanted. Since I circled back to bad code I wrote less, I was able to move and ship faster.
    • This naturally built up to me reviewing a lot more code (since so much code had my fingerprints on them): I'd say this yearly number I do is 3x-4x the average.
    • I pretty much said "yes" to every opportunity (that I felt like I could reasonably do given my bandwidth), but often times I didn't have much choice (one time, I ended up TLing 3 projects concurrently + writing nearly all of the Android code for all 3 projects). I felt like the exposure I got was much broader here compared to "normal work": both in terms of variety of responsiblities and intensity of work.

    I'd boil down my experience to 2 themes:

    • If your volume of work is signficantly more than your peers, you will get more opportunities. Since in the end, teams are judged on impact every year and giving work to the fastest, most consistent engineers means more impact to be had.
    • Mentality is a big factor as well: what you think you own impacts what you're actually owning. I've been fortunate enough to be at the company for a while, so I have enough domain knowledge and trust where people are more willing to let me do whatever. Example: I just spent 2-3 months deleting an entire feature from the Android codebase the company shut down a while ago. I never worked on the feature before, it was causing complications to occassionally support it, and no one planned to delete it.

    Hope this helps!

    • 0
      Profile picture
      Senior Software Engineer [OP]
      Taro Community
      6 months ago

      Thanks for the detailed insights. I will start doing that :)

  • 0
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    6 months ago

    Jonathan gave a lot of excellent points with very specific tactics on finding scope. On the other hand, I have a higher-level, broader approach that starts off with a simple realization: (almost) Every senior engineer wants to get to staff.

    Let's keep up the simple ideas: In order to get to level X, you need to be able to create scope for level X-1. So if the senior iOS engineer on your team wants to become a staff iOS, they need to be able to create high-quality projects that are comfortably senior level.

    Tactically, this means my recommendation is to just talk to the senior iOS engineer and see what big, ambitious ideas they have on their backlog. Reassure them they can bring on the "sushi grade" and raw ideas are okay - It's expected for high-performing senior engineers to work through lots of ambiguity anyways. An interesting way you can tease out these ideas is to have a 1 on 1 with them and ask them a question like this: "If you had a magic wand and could solve any problems across the team, what would you do?".

    Software engineers are always looking for projects and scope, but those are downstream artifacts. In order for those to exist, you need to start off with a problem. If you have just a problem, that is enough to create scope.

    All of this rests on the assumption that your goal right now is more to solidify your reputation as a high-performing senior engineer, not start seriously pursuing the jump to staff.

    Here's some other resources I recommend checking out as well: