I'm an E5 iOS at a Big Tech company. Our team's E6 backend and E6 iOS tend to dominate our team discussions, often talking over each other. I get the impression that the E6 iOS wants to be the smartest person in the room and enjoys micromanaging all the details, but the E6 backend enjoys challenging him. When I proposed a solution to one of our project's challenges, the E6 iOS quickly shot it down but could not propose any alternatives. The E6 backend challenged the E6 iOS to explain why my idea wouldn't work, but the E6 iOS just talked in circles. It seemed like the E6 iOS just didn't like it because he didn't come up with it himself. How do I avoid making the E6 iOS feeling threatened? I'm a bit hesitant to contribute to team discussions due to this dynamic, but my EM wants me to contribute more.
Can you address your ideas to one or both of these engineers separately and garner support before bringing it up in a meeting with both of them where they may be vying for… I don’t know what, attention, respect, power? You attempting to be a third voice and get your ideas heard and accepted in an already contentious environment doesn’t seem like a recipe for success.
if your boss specifically wants you interceding in the conflicts between these E6s, I don’t think your boss is doing the right thing. They should be figuring out mitigations on their own. You can always note in the meeting that you are thinking through an alternative idea and will send it out after when you’ve fleshed it out. That way you can show initiative and that you’re working through things in the meeting without the discussion happening in real time with this jockeying between leads.
For what it's worth, I have shot down plenty of ideas without providing a clear alternative. At Big Tech's scale, it is often far easier for an idea to be bad than it is to be good due to mountains of poor assumptions, unmaintained systems, and tech debt in general.
I get the impression that the E6 iOS wants to be the smartest person in the room and enjoys micromanaging all the details...
This is a pretty charged impression to have. It may very well be true, but I recommend still trying to see through the lens of good intent. At the end of the day, a lot of software engineers just want to write really clean code. However, it can be easy to lose track of the true goal of shipping impact and be unable to make quality sacrifices. I've gotten feedback for channeling this myself (I was sort of like this E6 in many past scenarios) - I tend to have more sympathy here as this can all easily flow from good intentions.
How do I avoid making the E6 iOS feeling threatened?
By making them feel like you're on their side. Our masterclass about building deep relationships quickly has a lot of tactics on how to do that.
On top of those, here's some things you can try:
I also second Lee's feedback that your manager should probably be more active resolving this problem. 2 Staff engineers not working well with each other and the rest of the team is 100% one of the "people problems" managers are supposed to fix.