3

How to make it count for putting out fire before it started?

Profile picture
Senior Software Engineer [E5] at Meta7 months ago

Background:

Our team inherited a set of products which are full of spaghetti code and bad design. We are currently building a high visibility and high impact project based on the backend of this system.

Although the main project UI goes on-track, some critical backend design flaws will hinder product performance and reliability within a couple of months - maybe close to or right after official product launch, which will turn our whole effort into a joke since we have executives' eyes on it.

My progress this year so far: (besides my roadmap item commitment)

  • 1. Identified a system hotspot, finished analysis & design, and convinced our EM to rewrite this module (currently 95% finished by a junior engineer.)
  • 2. Rewrote 1 foundation module to eliminate legacy design flaw (ended up with less code, less complexity, same performance, more system reliability.)
  • 3. Design and rewrite another foundation backend module to address legacy design flaw & unblock development of the next milestone
  • 4. Leading on technical design and discussion of a re-architecture for the overall backend end to end flow. (simplify design, improve performance)

NOTE:
- I tried to delegate 2 & 3, but no other engineers can do them after a few try since it's too tightly coupled with the rest of the system.
- our team lead is championing for all these work, which is how we are able to make room for them

Benefit of these work:

  • accelerate other engineers' work in the system
  • cut clean with the legacy system design flaw, improve product reliability and performance
  • ensure our team's win on the high visibility project that built on top of this backend
  • easier oncall for the short run or long run

My questions:

  • In terms of performance review, my manager thinks this is better engineering work, while I think is closely tied to the success of our main project. What kind of evidence do I need to convince him? (My EM is not very technical)
  • From his tone, I sense he thinks better engineering work in considered "lower priority contribution". Is this true? How do I communicate the importance of code/design quality with him?
  • I'm trying to reach the staff level promo, does this initiative demonstrate any trait for the next level? (I'm not doing it for promo, but my EM's neglect on this makes me pretty frustrated because refactoring and rewrite is such tedious and painful work... I want to make it count)

Thank you!

99
3

Discussion

(3 comments)
  • 5
    Profile picture
    Staff Eng @ Google, Ex-Meta SWE, Ex-Amazon SDM/SDE
    7 months ago

    Was there any demonstration of the limitations before you initiated these work streams? I.e. did you load test, showed a breaking point at N TPS, but you know the system will need to support 20*N TPS at launch?

    Do you have demonstration of engineering efforts before and after these changes to show that there is higher productivity?

    Did you ask your EM if these changes were the right prioritization, versus getting to an MVP sooner, showing real world impact, then prioritizing fixes before launch?

    Did an L6+ engineer agree with your assessments and the prioritization of these changes? Do you have their approval and support in writing?

    If your team’s mode is feature delivery, and not on-going support and incremental change, then it may be true that your EM values direct contribution to delivery over better engineering. You are asserting that these changes are critical to launch, but if you haven’t demonstrated that, it looks like strictly BE, which may look like it’s at cost to delivery timelines.

  • 2
    Profile picture
    Friendly Tarodactyl
    Taro Community
    7 months ago

    I think is closely tied to the success of our main project. What kind of evidence do I need to convince him? (My EM is not very technical)

    You can ask your manager directly: I think this project will fail without this feature. What evidence can I provide to convince you?

    You mentioned your EM is not technical, so you can bring up the same question to your tech lead.

  • 0
    Profile picture
    Tech Lead/Manager at Meta, Pinterest, Kosei
    7 months ago

    our team lead is championing for all these work

    Why did the team lead champion the work? Were they looking at data, oncall tasks, or from their familiarity in the codebase.

    One way to convince your manager about the core importance of your work is to collect anecdotes showing feedback from well-respected people on the team. If you have 2-3 strong stories of "Without this work, the product launch would have completely failed", that's pretty clear that it's Project Impact work and not Better Engineering work.

    Even better is if you could back up the anecdotes/peer feedback with data, as Lee suggests.