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.
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.
Flagged by the community.
- Uber fcknfrstctI’m also an EM. Dealing with intentionally difficult people like Shahejjd is also a significant time/energy drain for most managers. :) No, seriously. If someone is constantly negative and never satisfied with any answer it can negatively affect the entire team’s morale.Dec 10, 2018 9
- Google UJBa23Not gonna lie, when I saw the title of your post I thought it was arrogant but hey, hats off, I’ve never seen someone replying with such level of detail to so many posts
You’ve improved my perception on Uber in a quite impactful way
Thanks for sharing your experience 👏🏻 👏🏻 👏🏻
This comment was deleted by original commenter.
- 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.Dec 9, 2018 25
- Amazon / Eng c841b5What 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.Dec 9, 2018 18
- Microsoft KxhdbnHow 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.Dec 9, 2018 15
- Microsoft Lemon114I will be joining Uber next month. Have been following this thread since the beginning. Best AMA ever. OPs posts have been super helpful and detailed. Made me sway my decision because I had competing offer and join Uber. I hope I get a chance to work with OP, someday.. Kudos!
- Capital One BozFor all the censoring of Blind by companies, this is an example where OP is actually doing Uber a great service here. I'm impressed by what I've seen, and would love to join and work with him/her
- This is Blind, k1ndness. It’s an anonymous app which claims there’s no way to match your ID with the email address you registered with (I still have some doubts on that, btw).
On the same note. Proof that you’re not true spouse of a Box engineer, using their unlocked phone to post this question here.
Make your own judgement based on what you read if this sounds like someone who’s been doing eng management for a few years, from being an IC for over 10 before that. I am actually this person, but I can’t prove it beyond this statement.Dec 9, 2018 18
- LinkedIn / Eng Tomek213I have signed an E5-B uber offer. I was told during the negotiation phase that because Uber is trying to be fair to all their engineers(internal and new hires), there is 0 room for negotiation on the base pay, equity, bonus and refresher. However I met someone else, who is also joining exactly at the same level, with exact same initial offer but was able to negotiate his base salary. How do you justify such behavior by the recruiting team and what role does eng managers have to play in this? Sorry, it may sound like a question from a prick, but i genuinely want to know the answer.
- We have salary ranges for each levels, internally. These ranges are visible to the comp & HR team, some senior recruiters and potentially directors or above. Basically, not to hiring managers who are L6 or below.
When, as a hiring manager, I decide to make an offer, the offer goes to the central comp team who come back with the numbers. The recruiter emails this team. 95% of the time they are the same numbers for the given level at the given location.
Now if someone is clearly at the higher end of their level or has completing offers or there’s some other data, the recruiter passes this onto the comp team. The comp team might come back with something different.
Also, execs (director or above) can talk directly to the comp team and I assume bump some packages. I would think they can mostly affect equity. Base salary can never be out of the range.
But look, you’re also a manager. We try really hard to have fair pay (90% of the people on my team on the same level have the exact same base pay) but we also need to be competitive. Catch 22.
So tl;dr is for higher base, do really well on the interview so you’re almost at L6 or bring competing offers and do really well on interviews. And it’s true that failing any of that, there is no room for negotiation: take it or leave it.
Having been here long enough, IMO our strategy is a good one. 3 years ago I had a female L5 Sr eng on my team making $5K less than a newly hired, arrogant & super good interviewer L4 who was a super tough negotiator. Took years to fix this mess. The base pay for that L5 is now 45% higher than before and exactly the same as every other L5 on my team.Dec 10, 2018 8
- Morgan Stanley ninja0071) How big is your team ?
2) Have you scaled from an IC to an EM, and then an EM of junior EMs? If yes - what was the transformational moment in the second part ? I ask because - I learnt a LOT when I became a manager of managers over just running a team and being responsible for their delivery.
3) How do you stay updated with tech ? It’s easy when it’s all in a stack where you worked as as IC - but say if you take over something in a stack you haven’t worked before. Or it’s a new language/platform you didn’t use before - but now own the delivery. You can’t do any code reviews to begin with. Have you handled any such transition? If yes - any lessons you can share?
4) You must now be used to being comfortable with ambiguity. How do you teach/mentor good SWEs who are not there yet but very good at their day job.
5) I see that you conveniently ignored a minion asking about “so all you do is mentorship - what do you do all day?” My answer to such questions has always been “a day in the life of ...”. You should probably take a stab at answering that. The good senior/manager folks work at problems when they are not defined yet. You may be told an abstract goal - you translate it into a technical problem and convert it to a project. Then get the right people on it to carve out a solution while emphasizing the end goal. A solid example from your time at Uber would be useful to share.
- Lots of questions! Here goes:
1) My team is now 12 people. This changes though. Started with 6 direct reports when I was an EM and I have a couple of new starts the next few months.
2) I still only manage EMs. I'm talking with my manager on this being the next step - both because by end of Feb my team will probably be 18 people and because I seem to have gotten pretty good at directly managing the team. I do a lot of reading on managing managers and it seems to be a HUGE jump to what I do now. Right now, I can sort out all problems just by "stepping in". I hope I'll have the opportunity learn there - thanks for sharing how this was helpful to you!
3) I have two main ways to stay updated with tech and a minor one.
a) I volunteer to give internal and external tech talks on domains I'm not super familiar with. This forces me to learn a lot to prepare well.
b) We have an RFC process where any new service/bigger feature needs to have an eng spec that's sent around the company and approved by certain people. I try to read every one my team does and some within my org. I've managed to learn a lot on topics on reliability, service design and testing so far.
c) I spend dedicated time on code reviews, especially for new members on the team. I used to do a LOT when I started as a manager and gave a lot of coaching feedback, mostly on separation of concerns, readability and correctness. These days I'm dropping off from reviewing people who are solid coders and give great code reviews to others. It is hard to keep the carved out time though and I notice not many other managers do this.
4) Dealing with ambiguity and mentoring on this. I have this very simple thing I do with people who are all over the place/not great at prioritizing. On our 1:1 that's at least once every two weeks, I ask them what their priorities are, in order and help them define it. I then give them a "free pass" to say no to everything but the #1 and ask they use me to do so. Then I check in with them next time if they've done #1. I do this until they can reliably do the most important thing.
5) Thanks for the advice! I'd rather keep this AMA simpler/shorter, as I'm already rambling quite a bit.Dec 9, 2018 10
- Given the fundamental problems with Uber’s business model (see any of the recent articles), how long do you think your runway is there? What’s your pivot and how does transitioning from IC to manager enable it?
- Thing is, I have access to the numbers and data on many of our businesses. And I see none of these “fundamental problems” that all the experts who don’t have access to them see.
I find it the same analysis as how Amazon was analysed as being fundamentally unable to produce profits from online books, analysts baffled on the weird investments it made.
Being a manager did not change much on my outlook. Except I see that the execs - who I have a bit more access to - see it the same way and interpret this internal data just like I did.Dec 9, 2018 9
- Of course, you have numbers the rest of us don’t have, but externally visible behaviors don’t seem to square with this assessment. e.g., consider self-driving Ubers: if your underlying business was even marginally profitable or there was a path to it being so, there’s no reason anyone would pin so much hope on a moonshot. Moonshots can be game changers, but they’re not 5y business plans.Dec 11, 2018 2
Flagged by the community.
- 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.Dec 9, 2018 11
- Facebook m79What are the differences in expectations between L5a, L5b and L6 at Uber? And what’s needed to be demonstrated for each level in the interview?
- That’s a big question to answer! We have a long competencies doc that define what the expectation from each level is from software engineering, design&archirecture and 4 other competencies. On our interview, we try to determine where, on this ladder, the person lands.
The biggest difference between the levels is impact horizon. A 5A will be able to solve complex business problems for a team with a high quality bar, a 5B for multiple teams and a staff eng for a whole organisation (think: 100 or more engineers).
We do the calibration based on mostly the architecture and hiring manager interviews, taking into account previous experience. Your potential level is assessed based on your background and the phone screen.
A panel is then assembled with your target level or above engineers/hiring managers who gather specific signals. If there’s signal that you might be at higher level than the committee could assess, another interview loop might happen with another panel.
So there is no simple answer to this - we try best to determine the level of a person via a process where we aim to calibrate as best as we can.Dec 12, 2018 4
- I would not obsess on the exact percentage. In my larger org of about 500 engineers we have 5 staff & 2 Sr staff engineers. Across Uber, we have less than 60 staff and around 10 Sr staff - it’s below 1.5%.
There are some places that have more of them - there’s an office with 60 engineers & 6 staff/Sr staff engineers.
There’s definitely no ratio requirement. But for staff engineers, on top of being productive and producing meaningful impact via code, they have to be able to multitask - mentor, attend many meetings - and often travel a lot as well for various initiatives, from what I have seen.
A nice thing is that the staff engineers I know are still very productive in terms of code and help me and people on my team with architecture jamming.Dec 12, 2018 4
- Thanks for doing the AMA. Your answers are great and insightful! I'm a junior engineer and want to get advice/feedback from you.
1. What's something you'd tell a junior engineer who just started their career?
2. What do you look for in a high performing engineer?
3. In such a competitive world, is pleasing the manager by finishing tasks important or doing the right thing for the product (longer vision - architecture, clean code, design, etc)? How does one draw the balance?
4. Why is that many dev managers (who I've come across) care less about test automation?
Sorry for the long list of questions.
- 1. Two things:
a) Be open to feedback and humble on it. You want people - your manager, your colleagues etc - to give you feedback on how you can grow. Be open to it, seek it, and challenge yourself to improve on it.
b) Get the most important thing on your plate done, every time. Also known as focus on fewer things and get those done reliably. You would be surprised how few people consistently get the most important things done. Consistency is the key here. I give those people the stretch assignments.
c) Don't be afraid to say "no" to too much work. Better to underpromise and over-deliver than the other thing around. If you do this while seeking feedback and improving on it, you're off to a great career.
2. I look at the above 3 things on a high performing engineer. To me a high-performing engineer is someone who I can fully trust that they get stuff done at the quality level I expect them (based on their experience) and often pleasantly surprise me by e.g. getting more done or better (they under-promise and over-deliver). The highest performing engineers are usually ones that are most open to feedback as well, in my opinion.
3. You want to do both. If what you're working on is not the most important for the product, talk with your manager. To get the most out of career growth, you want to be on the same page as them. If your manager doesn't see the great work you do, it's not fully wasted, but it won't help you during e.g. perf reviews etc. I personally really like when people tell me "hey I think I should be working on this this and this because of these reasons.". That's a sign of maturity for me and always leads to a good discussion. It's also a first step to growing into a tech lead role, where you make a lot more autonomous decisions.
4. I care a LOT about test automation. Probably because as an engineer, I've seen how the lack of it hurt me and my team and how it saved my ass multiple times. Managers who didn't have that "aha" moment usually don't have the same view. Don't get me wrong, I am not religious about it, but I will question the tradeoffs we're making mid- and long term by not investing in testing, now. You are doing the right thing to care about this, early on. Try to find managers who do or show them, over time, why its worth doing it. Also: no one can (or should) stop you writing tests. I used to work on a team where I was initially the only one writing tests. Two months later, bugs started creeping in everywhere. Except the code that was tested. Wait... that was all my code. Then I started to slowly convert the team...Dec 9, 2018 5