Following the AMA where the person running the AMA gave no real answers and was probably not a manager (https://us.teamblind.com/s/TKPTt5zW), I’d like to step in for a proper AMA. Some background on me: at Uber for a few years, started as an IC and moved into management via the apprentice manager track. I worked at Microsoft and startups before Uber. I will answer as best as I can but won’t be able to share confidential information or information that would make it easy to identify me or my team - I’ll aim to indicate where this is the case. And finally, to set expectations: I can answer based on my personal experience. There are hundreds of teams and engineering managers at Uber, so my experience will not necessarily be the same as the experience of other managers or teams.
How is SRE viewed at Uber?
A great question. I can give my personal view that might not represent all of Uber. I work little with SRE currently. I see SRE in the middle of re-defining how they work and how other teams can use them. The biggest view I see is “We’re not sure what SRE really does beyond incident reviews and how they help our team.” There used to be a lot of hype on SRE around 2015, then super bad press due to the Susan Fowler (she was on SRE). There are some good initiatives company-wide like a global rotation to mitigate company-wide outages where SRE builds really nice tooling for blackblox testing and mitigation. However, we still don’t have a company-wise working mode on how to have SRE help an eng team. So SREs don’t embed in teams right now and in return many teams just build their own specific oncall tooling or processes. It is getting better with new leadership though. It’s a good time to join SRE now for those who want to define how it should work within Uber. For anyone wanting to join a place where things are established, it is not the place.
Great answer, thanks!
What is the apprentice manager track? Do you start off managing a smaller team or shadow someone or something else?
Apprentice management is a program mandatory for ICs switching to management to go through. We've learned the hard way that there are few worse things than bad managers, so this aims both to support new managers and also make sure that people who are bad managers don't get to be a manager (at least not for long). It's also financially dis-incetivising switching to management: there is no financial upside (the level and bonuses stay the same, except people are ranked against their manager peers on perf). It starts with training sessions for managers, both in classroom and later, in group settings. Apprentice managers usually have dedicated mentorship - I had this. They start usually with a smaller team. To graduate the program, people need to spend at least 6 months here and a LOT of feedback is collected from people they manage and other stakeholders. I had over 15 people provide detailed feedback by the time I graduated. It is also not uncommon for people to go back to being an IC following them entering the apprentice manager program. I see about 10-20% of this being the case. Sometimes it turns out this person is not a great manager. Other times, the person realizes it's not really for them. For me, the biggest plus was the additional mentorship and a safer environment, knowing it's ok to ask the "stupid questions" and ask for help for situations I was not sure how to proceed with.
This is a really great idea / program. Very surprising to see it coming from Uber of all places, but makes sense given the company’s recent history with bad management?
Does an eng manager have more power over tpm or pms? What's your thought on career switch from swe?
Sorry just realized had some grammar mistake. I'm an engineer and am thinking of switching to tpm to get real training on soft skills. Is that a good idea to you?
I'll answer your question " I'm an engineer and am thinking of switching to tpm to get real training on soft skills. Is that a good idea to you?" as the first one seemed no sense to me (eng managers don't have any "power" over tpms or pms). TPM at Uber is quite different than eng management or PM or eng. It's mostly about project management at large and stakeholder management. Those are skills a successful eng manager would need - but not necessarily the most important one. The most important one IMO is people management. I don't see many engineers switch to PM or TPM mostly due to leveling or pay. Say you're an L4 or L5 engineer. To switch to PM/TPM, you usually start at the bottom, which is L3. So it's a paycut. And because you're junior, you have to work your way up on that ladder which will take time. If you can get away with no paycut, it could be an interesting thing to do. If you want to learn or are feeling this whole SWE thing is not for you, just ignore the whole pay thing and it could give you an edge due to your tech understanding. But I would talk to TPMs to understand what they _actually_ do and if that's something that looks tempting for yourself. Either way, good luck!
How is WLB compared to when you were IC? Do you have to check emails in the evening and early morning? Do you participate in oncall? How is WLB compared to when you were at Microsoft (perhaps as an IC)?
Initially, it felt a lot worse. I used to thing I had a lot going on as a senior engineer. That all seemed to dwarf when I became a manager. The biggest difference is that when anyone of my directs or any stakeholder to my team has a problem, I have problem. It took me some time to divide and conquer these and not try to solve it all by myself, but have people own certain areas and be the point of contact for those, over me trying to take those on without all the context. I am not as organized in checking emails as some of my other manager colleagues, who book out time for them. I scan through them in the morning, except if I have tons of meetings (usually 1:1s on some days) until noon. I check emails about 2-3 times a day thoroughly and often take a look in the evening, when I actually have a lot more time. I always check them the weekend (except when I'm OO) - there have been a few, rare cases, when I needed to respond to something going really south. Microsoft WLB was too much balance and too little work for me - but then again, it might have just been my team and I was an L62 back then. When I joined Uber as an IC, WLB was hell late 2015. It got a lot better. When I started as a manager, for the first 3-6 months, I also felt my WLB was bad. These days I don't complain. I probably do 45 hours/week of work that I need to do and another 3-5 hours the weekend where I choose to do it because I like it (but I would not need to do it). It's more than when I was an IC, but I do a lot of the extra because I want to be better at management. I also make a point to not "show" if I'm working on the weekend, meaning I try to hold off sending any emails or DMs. My team doesn't work the weekend or late nights (as far as I know) and I'd like to keep it that way.
What is the performance bar for the senior engineers? What do they have to demonstrate in order to meet the bar? Raise the bar?
Why did you go into management? More money? Better career trajectory? More transferable skills?
The thing that I REALLY like about going into management at Uber is a counterintuitive one. It's actually less money when you switch from being an IC. When I switched I was an awesome Sr Eng, my perf review being on the top. It was getting ready for promotion to Sr2 or going into apprentice management. When I went into apprentice management, my base salary and bonus all did not change (it's the same level and salaries are per level). Except my perf rating did, because as a recent manager, I was not that amazing any more. So I actually left money on the table. The reason I point this out is because I told myself I wanted to go into this because of the learning. When I realized that I'm getting lower bonuses and equity as a result and it didn't bug me, that's when I knew that I made the right decision. I went into this to learn and to set myself up for future success with transferable skills. Truth is, I felt my learning as an engineer was slowing down. And as many people, I'd like to have the opportunity to start something small after Uber that grows huge. Now that's hard to do without people skills. And I had no idea if I'm any good at managing/serving/leading people. I'm very happy on the choice so far and think that the long term-career trajectory could be better. It's a kind of "slow down to speed up" thing where I slow down for a few years, to beef up on management, while keeping my engineering skills not super rusty. Uber is growing REALLY fast and I get to see how decisions are made, how mistakes are dealt with and am also being stretched day to day both from a management and an engineering standpoint.
Cool sounds like a bet on better long term career/growth. Thanks for keeping it real.
As an eng manager how do you make sure you are growing? One way obviously is to experience situations and do your best to solve them, and learn from them. Besides this, is there any regular training, and/or mentorship program in Uber, or outside that you can use to continuously work on becoming a better manager?
Nice question! There was some initial training, but that helped me the least. The three things that help me most are: 1. Keep reading/listening to management books. I alternate between theory (think: the Managers Path, First, Break all the Rules) and biographies/stories (think: The Goal, The Five Dysfunctions of a Team, Winning by Jack Welsh). I take these books quite slow, going through one or two per month> 2. Doing my day to day work. There's a LOT happening at Uber and I get exposed to lots of challenging things on my team. I also talk with fellow managers and always ask what's up with them. It's a fast moving place so lost of unexpected situations happen. 3. (Internal) mentorship. THIS is an area I've been super thankful to work here. I have two internal mentors from different parts of the org, who are long-timers and super experienced managers. I've built up trust with them and they are people I can go to with virtually any topic. I usually discuss my (perceived) successes and biggest challenges with them. And learn a lot. So far, all I know is that every day, but at least every week, I learn and apply something new. I see progress on how my team works and how I have more energy to look beyond immediately my team, to see how we fit in the big picture. So so far, so good. I'm sure the learning will slow over time. But it's been a few good years so far in terms of learning.
Thank you for the thoughtful answer. The Managers Path is indeed a very good book
Do you hide (or rather not tell) that you work for Uber to your Uber drivers? What was your experience encountering with them?
I tell drivers that I work at Uber and ask them about how they feel about it and what suggestions they would have. It's kind of frustrating that there's not much I can do about a lot of the feedback, beyond sometimes forwarding it to the driver team. The most common feedback I personally got were: 1. Can you tell people we want to earn more per mile/minute etc 2. Maps didn't work well for this and this case. Can you fix it? 3. The other day I had {this and this} issue. Can you fix it? I do try to explain how engineering works and why some issues can take longer to fix. A good example was when there was a big outage where drivers could not get paid for a day or two (big mess up on our end) I actually followed what happened and knew the root cause and how hard the team worked on it. I talked with two drivers and explained in laymans terms what was going on and how we're trying hard to fix it and to also fix the root cause to not happen again. One of them got it and it was really nice. I've had this when I was at Microsoft though - people thought that by talking with me I could fix whatever issue they had with Windows :)
Let me start with my generic elevator pitch. (I don't want to be too specific, but my team works on one of the key systems behind making sure Uber works. If we're down, you can't request a trip.) For many companies, what happens when a system is down? People can't view their feed of friends. Or ads are not shown and the company does not make money. At Uber, when our system doesn't work, people can't get a ride to e.g. get to a potentially life-changing interview. Or a driver who wanted to buy dinner with their daily earnings who has no saved cash suddenly cannot do so (and this happened). I like working here because our work directly impacts people. Both when we innovate building new things (think: Pool, Express Pool, Uber Cash) and when anything we build does't work. The challenge is how to move fast without breaking things. And the impact per engineer we have is still incredibly high - a lot higher (at least on my team) than you'd find at a lot of other companies. A follow-u pitch is that we are what Amazon was like when they just sold books. Most people think we just do "taxi". We're already doing a lot more... and it's complex (I can go on a long time about this). The point is, we haven't figured out how to do this in a good way. So we're at this inflection point where we are building the future of transportation/modalities and the systems that will power all of this. But we need help to do so. The people who come in now will be laying the groundwork, building or re-building everything we will build on top for the next 5-10 years. It's the same opportunity as going into Amazon when S3 just started. Or joining the Facebook Feed team when there were two engineers and ten types of posts. It's an extraggation, of course, but we are doing some really interesting and novel things at a systems level that even we don't know how well will work out. Now, for the "secret". I rarely use the above. I always start by asking what people care about and what challenges them. I then reflect on what we do or not do around that. I also try to "scare away" people who are looking for something we don't have and reflect on challenges me or people on my team experience day to day.
^ personally I preferred not having ML in the pitch since it's "buzz-wordy"
Why do you feel you need to clarify you are "real"? That's exactly what an imposter would do.
Just check the other thread and the answers there by someone claiming to be an engineering manager: https://us.teamblind.com/s/TKPTt5zW . I started this thread being pained to see that on an AMA that person gave no straight answers and it smelled like they are as much of an engineering manager as I am a potato.
First moron.
I was an engineer for 12+ years, a year at Uber. I moved into management as I saw how great managers made a huge difference to teams and how the lack the leadership/management really hurt my team and myself. I’ve found myself working and worrying a (lot) more since I’ve been a manager, for the same pay. It’s very different work. I write no more code but do more code reviews, architecture discussions, mentoring, managing stakeholders who want everything from my team yesterday, perf review that I try to make fair and promoting people on my team who are at the next level and helping others get there. And the lot more frequent firefighting that I had no idea was happening before I became a manager. On the note of parasiting: 80% of my team was promoted with my extensive help and support since I’ve been their manager for two years and 25% of my team now makes more money than I do (I used to be the highest paid on the team). I’ve yet to be promoted. And this is fine - I get the joy out of seeing people grow and for the long-term people learnings I'm picking up, that I hope to be transferrable in my later career. As I said, it’s very different work. I encourage you to talk to (good) managers and understand what work it is they do.