1

How to grow when there are no E6 role models?

Profile picture
Senior Software Engineer at Taro Community9 months ago

I'm an E5 iOS engineer reporting to an M2 at a Big Tech company. I am the mobile lead for a complex mobile-heavy project spanning 2 other teams. This is a high visibility project that's on the VP Eng's & VP Product's radar. This project had 4 E6s:

  • E6 iOS engineer on partner team #1 delivered an onboarding guide with 70+ compilation errors and took a month to fix all the bugs blocking our integration. He did not test his code at all before delivering it to us.
  • E6 iOS engineer on partner team #2 delivered a component that did not tokenize SSNs properly, resulting in raw SSNs -- this would have caused an s0 incident, but my team fortunately caught it before it went to production. He also did not test his code at all before delivering it to us. My team's E6 BE engineer spent a month fixing it for that team, resulting in delays to our project's BE.
  • My team's E6 BE engineer had a falling out with my M2, so he switched teams, leaving us in a bind since our only other BE engineer (E5) on this project had resigned at the end of last year.
  • We got a replacement E6 BE engineer, but he is very slow, requires a lot of handholding, and most of his PRs have serious bugs -- I feel he's performing like an E4. A junior iOS engineer joined our team at the same time as he did but delivered more complex features in the same amount of time.

I switched to BE to de-risk the project after I took care of all the iOS fires. I've already fixed more BE bugs than the replacement E6 BE engineer.

Of the 4 E6s, I feel the one who switched teams was the strongest, but my M2 said that E6 did not exhibit ideal E6 behavior because we're over a month late due to BE delays and we keep discovering more and more BE bugs. The E6 also changed the design 3x when fixing the SSN issue. The M2 told me not to use that E6 as a role model, but the other E6s are even worse!

148
2

Discussion

(2 comments)
  • 1
    Profile picture
    Engineer @ Robinhood
    9 months ago

    You could try reverse-role modeling: you have worked with engineers that are E6, but have clear behavior gaps that negatively impacted the project. Try doing the opposite of what they're doing. For example: when it comes to deliverables you own, make sure to provide a test plan and be available to provide some amount of general maintenance support.

    If you want a good example of a E6 role model that you could emulate: there was an E6 iOS engineer on a project I was on that spanned a few orgs. For one of the major features in this project, they effectively did all of the iOS and the backend work concurrently (Android had 2 senior engineers and they were barely able to keep up with this 1 iOS engineer). This engineer was so individually productive that they lowered the number of people (which indirectly lowered the number of dependencies) needed for the project.

  • 1
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    9 months ago

    The first thing that immediately jumped out to me is that you should nurture that junior iOS engineer. Those kinds of mentees are the best ones. They would probably get promoted at decent speeds on their own, but if they have the help of a genuinely strong mentor, they can get promoted 2x faster (and you'll get a lot of credit for it). Ask them if they're open for a recurring 1 on 1 (weekly or bi-weekly), and follow the advice here: [Taro Top 10] Effective Mentorship And Growing Others

    Growing without any role models is hard, but it can be done. A mantra my manager hammered into my brain as I was progressing from E5 -> E6 was "Fill in the gaps". The idea is that no matter where the problem is and how messy the overall project is, you do whatever it takes to move things forward, even if it's uncomfortable (which it will be).

    This leads to the following very common growth path for senior engineers going to staff:

    1. They start filling in all the gaps on their own (solo carry mode)
    2. They get stretched too thin, putting their back against the wall
    3. They begin thinking more creatively so they can start filling in the gaps in a more scalable way (multiplicative impact)

    There are many ways to do #3. Mentorship is one. Process optimization is another one. Sometimes, the solution can even be in a code where you create/improve an internal tool or add quality control measures (e.g. automated tests). Figuring out the options for #3 and picking the highest ROI ones is classic staff behavior.

    All that being said, I just want to say that every promotion (especially for E6) will be lagging given the current economic conditions with slashed budgets. What's important is that you build up the skills. If you truly become a master of filling in the gaps in a scalable, sustainable way, you are operating at staff and will eventually get that title.