The food wallets are straight up awesome. $220/month for Door Dash is fantastic.
Really nice shirts and sweaters with company logo. I hate the company, but these clothes are comfy.
My gosh, where to start?
Too much process. I spend 70% of my time making documents, 25% of my time in meetings, and 5% of my time actually coding.
Engineering team boundaries are not well defined. Figuring out how to do a project is a mess, and it makes sure you're always in a ton of meetings with other teams. Due to this, there's a fat mess of bugs, and everyone hot-potatoes them to other teams. Even the tests don't catch these bugs, and if you're on an "experience" team, you're the first line of defense, having to drop everything when you're on call to figure it out. Then you need to pawn it off on a downstream team. Awful.
Obsessing over the smallest thing. I made an email thread with my boss and a PM about when to turn on a feature flag for launch, and the next morning, it had 7 other people added to the email and 8 questions for me to answer. The work ballooned beyond a simple answer. It does this all the time. It isn't fun.
Expect to really, REALLY be on call – cancel your plans for the whole week. The infrastructure is so brittle and interconnected that the on-call rotations are busy, and you really get grilled if you don't know which of the 6 other teams you work with could have produced a bug that is breaking your API. I've broken down more times than I'll ever admit. You're going to get paged, and it will hardcore suck.
Upgrades require a huge amount of team coordination. Imagine 6 other teams coding in the same repo, and you all need to upgrade to the next major version of the visual component library. Incredible mess.
Still on Python 2.
You need a huge doc explaining why you want to make a change instead of just making that change and shipping it. The time to make the smallest change has grown exponentially in my year here.
Staff software engineers run every meeting for the team. You'll never have time to work on actual coding.
If you just want to scope large projects with reasonable boundaries, easily work to make a stable product, and ship your high-quality coding work, then do not go work here. A staff software engineer is essentially just a PM. This is a nice job for some, but hugely untenable for me.
Define clear boundaries for teams.
Get each team a PM.
Anyone with the title “engineer” should not be in a giant amount of meetings.
Stop making engineers do PM work.
The interview process consisted of: * an initial phone screen * a take-home project * a hiring manager screen * a virtual on-site. The whole process has taken about a month and a half.
The process began promisingly: the company reached out proactively and offered an interesting Staff Software Engineer position. I successfully passed the HR screening interview and the technical interview with a tech lead, who immediately communicate
Two Months and Eight Interviews: The process was quite long, lasting two months and involving eight interviews. This felt a bit excessive. No Feedback on Performance: I received zero feedback throughout the process. I would have appreciated some i
The interview process consisted of: * an initial phone screen * a take-home project * a hiring manager screen * a virtual on-site. The whole process has taken about a month and a half.
The process began promisingly: the company reached out proactively and offered an interesting Staff Software Engineer position. I successfully passed the HR screening interview and the technical interview with a tech lead, who immediately communicate
Two Months and Eight Interviews: The process was quite long, lasting two months and involving eight interviews. This felt a bit excessive. No Feedback on Performance: I received zero feedback throughout the process. I would have appreciated some i