Now how do I deal with an engineer who seems to be brilliant - though this is sometimes hard to gauge since code quality can be subjective - who always leaps in to answer things quicker and is loved by upper management because he, I guess, constantly codes even outside of work hours, but who is extremely grating to get along with. Lord I need a different job.
As a manager? Coach your report on his soft skills. Software dev is about being a good team member as much as a good individual contributor. If the strongest guy is dominating meetings and dominating the team's direction with his opinion, that's something to work on.
He has to give others space to contribute by not jumping in. And his manager should be coaching this directly. As the EM, you want your whole team to be able to confidently do what he does. Functioning teams have multiple engineers concurrently owning your scope.
If your company isn't toxic, over-working would also be seen as a negative because of the precedent it sets. If this guy wants to be a leader and not a monkey, he has to appreciate that. And senior/staff counts as "leader" here.
That sounds very familiar to me... I know of a guy like that, who will rapidly jump on and propose and implement half-baked "tactical" solutions to any production incident. As you say, he is valued by management, because he is very responsive, at all hours, and always has some kind of snake oil "fix" to offer for any problem, and generally maintains a bit of a "mad scientist" vibe.
The issue is that, most of his "fixes" are just rearranging deck chairs, increasing timeouts, decreasing timeouts, adding memory, upgrading random libraries, etc., and he's constantly operating in "emergency mode", trampling on other people's work and priorities to get his "urgent" stuff out the door. He also just sort of throws things at the wall - "what if we change / disable X to fix this, would that break any client use cases?"... well, I dunno buddy, you are the one proposing the change, you have access to the logs, you are the genius, why is it _my_ job to evaluate your stream of half-baked ideas to separate the wheat from the chaff?
Ultimately, we co-exist, and I'd even say there are things to learn from him, i.e. being responsive is important and hugely valued. Over time, I've learnt not to get sucked into his urgent, half-baked proposals to save the world, I just say look, if you think that's a good idea, go for it, do it, but... you don't get to force it down everyone's throat and pretend there is consensus, I have my own, different priorities that I am not going to drop for you.
I’d go so far as to say that you and this other engineer both fill vital roles on your team. It’s not that you’re right or he’s right; you’re both right.
I’ve been on teams where I needed to be the methodical engineer who carefully built critical infrastructure and agonized over every decision. I’m currently at a small startup that hasn’t yet reached breakeven, so I’m scrambling like crazy to build things our customers and investors will pay for. That’s what this team needs.
Thank goodness for both of you. Your team would be worse for it if they lacked either.
Great insight and advice I need to take - your description captures my current situation almost to a tee, better than I’ve been able to understand it for myself, so thank you.
In addition to what you described, in my case this engineer quickly recognizes other highly-effective and/or important people, and aggressively tries to build that reputation by privately messaging and even privately demoing work where the recipient has some stake in the outcome.
I would onboard him to a project, sharing all of my tools, key contacts and personal insights, e.g.
“our manager Smith is hinting that there is a big customer interested in X capability, which I’ve discussed with their power user Wilson and product owner Flores informally in recent demos. I think we could use Y approach and want to start prototyping if we get the go-ahead”
This engineer would start messaging Flores, Wilson and Smith privately and schedule calls about X excluding me and other core maintainers to push the thing forward, often proposing Y in his own words.
This strategy worked wonders for him in terms of upward movement. He is a diligent and extremely responsive to important people. But the strong engineers from whom he has effectively stolen credit, or even the opportunity to have a seat at the table in critical early discussions, obviously resent it.
His direct manager is lackadaisical and basically just gets bombarded by this engineer asking for frequent, long 1-1 calls where he shares “his” accomplishments and ideas. I’ve watched this play out in person (we are a remote-only team except for big project-related events) — his manager clearly trying to leave the event after it concluded, keys in hand and facing his car door, everyone else has said goodbye and given space, and this engineer keeps him there talking for no less than 10 more minutes.
I’ve never met someone so comically ambitious and overzealous to be seen as the MVP He was promoted in record time, much to the frustration of stronger and more critical maintainers.
I am baffled by the whole thing, and just laugh at this point. My most charitable interpretation of manager’s actions are that they do recognize the dynamic, and just don’t care because ultimately their job is slightly easier for the meantime. But if any 2+ of the critical core maintainers split in frustration, the whole thing will suffer, badly
ETA: it seems to me that remote-only teams are particularly susceptible to this kind of thing getting out of hand, because the capacity for secret communication is immensely greater
This sounds similar to the guy I'm working with. He's great in certain ways and takes his job seriously but can be really grating to work with. (Frankly, I think it probably has something to do with taking stimulants, just based on similarities between him and another engineer I worked with who was open about being on a big dose of stimulants, and who resembles this guy but about 2x worse.)