Live data from Hacker News

Why I Quit Google to Work for Myself

mtlynch.io

211–220 of 783 posts

Re: Why I Quit Google to Work for Myself

#211
post #159

Writing documentation and fixing bugs is in fact not the bar for a senior software engineer. I don't disagree with the promotion committee on that front. IIRC, Senior Software Engineer is a terminal level. You aren't expected to advance any more once you reach that level. Some do, but you can stay a Senior Engineer for the rest of your career and that's fine. So certainly "can fix bugs and write docs and tests" isn't…

> Writing documentation and fixing bugs is in fact not the bar for a senior software engineer. The bar for a senior engineer should be identifying the biggest problems plaguing an organization, and successfully tackling them. In some cases, the biggest problem is building and launching something shiny and impressive. In other cases, the biggest problem is fixing bugs. Refactoring complex/unstable systems to make them…

> The bar for a senior engineer should be identifying the biggest problems plaguing an organization, and successfully tackling them.

You're missing the crucial step of advocating for these problems to be solved. Until you know this is actually something important to the organization, you're just scratching your own itch.

In OPs example, did it really matter that the data was occasionally bad? Quite often analytics exist to check a box in a sales pitch, but nobody actually looks at them. OP couldn't quantify this impact for the promotion committee because they likely didn't quantify it for anyone but themselves.

Re: Why I Quit Google to Work for Myself

#212

Writing documentation and fixing bugs is in fact not the bar for a senior software engineer. I don't disagree with the promotion committee on that front. IIRC, Senior Software Engineer is a terminal level. You aren't expected to advance any more once you reach that level. Some do, but you can stay a Senior Engineer for the rest of your career and that's fine. So certainly "can fix bugs and write docs and tests" isn't…

I obviously don't work for Google - so an outsider's opinion:

- Expanding on op here, senior software engineer isn't one who is doing more junior work: It is pretty much a different job profile. You are making higher order decisions.

- Promotions come with a lot of timing as well: Honestly talent evens out after a bit and luck/timing/inter-personal skills tend to take over. I have seen excellent code bases that nobody cared about. I have seen a lot of pretty crap code generate billions of dollars (and trickle down to the devs as money/levels).

- Re: Reorgs: life is mostly unfair. I heard this in an ad and it stuck, 'we lose more than we win'. I am surprised you stuck with that manager/team for that long though. Career is a lot about making the right bets in terms of companies / managers / teams as well. I have had reorgs affect me negatively and positively (they shutdown the project and promoted me anyway - a long time ago in ms), so there might be some survivorship bias here. I guess I do try to project every situation into what the protagonist could've done better instead of sympathizing :/.

In an ideal world, we will have people who can grow (and make more money / level etc) in both dimensions: Vertically in terms of responsibilities and horizontally in terms of quantity of same level work / team dynamics etc. In practice we have a system pretty much everywhere where growth is defined solely vertical. This leads to a ton of actual problems too: You get a person really really good at coding / execution but shit in big picture thinking / broad system design choices / cross team work etc. spend a bunch of time in a level. Now you have to either promote him into a spot where s/he will fail OR lose em to attrition. Either choice tends to break.

A quick note since I have seen some people change / grow / learn in these unsuitable positions against odds: All these actions have a probability function in they way they work out. so take my points here about eventualities of various promos with a pinch of salt. Some do end up working out and these anecdotal statements obviously don't apply there. I do know whenever we choose to push / recommend a promo, we definitely are hoping for it to work out though :)

Re: Why I Quit Google to Work for Myself

#213

Earlier quoted context omitted.

At many organizations, Senior Engineer is not the end of the IC track, not even close. For example: ... > Senior Engr. > Staff Engr. > Sr. Staff Engr. > Principal Engr. > Sr. Principal Engr. > Distinguished Engr.

"terminal level", in the sense being used by the OP, doesn't mean "end of the IC track". It means a level that you can be at "forever". Often times the junior engineering levels have some expectations around eventually being promoted (ie, "up or out").

Correct, this is what I meant.

Re: Why I Quit Google to Work for Myself

#214
> Wait a second. I was in a business relationship with Google.

Didn't take me long to realize that most company events and get-togethers and volunteering and other assorted non business activities are bullshit and a complete waste of time.

Like he said.. "it's a business relationship"

Re: Why I Quit Google to Work for Myself

#215

Writing documentation and fixing bugs is in fact not the bar for a senior software engineer. I don't disagree with the promotion committee on that front. IIRC, Senior Software Engineer is a terminal level. You aren't expected to advance any more once you reach that level. Some do, but you can stay a Senior Engineer for the rest of your career and that's fine. So certainly "can fix bugs and write docs and tests" isn't…

Yeah, I agree with you that you can't build a system where people get promoted to Senior Software Engineer just for fixing bugs and writing documentation. I do think it should be worth something.

It doesn't take a senior engineer to fix a bug, but I believe that it is a senior-level skill to be able to identify subtle bugs and pick which ones to fix.

The current situation creates perverse incentives because nobody wants to fix bugs, and everyone suffers for it. The team executes slowly because everyone has to wade through dead code, undocumented code, buggy other components. Time you invest in fixing things would probably be a net savings for your team/Google, but are probably not a net savings for you personally.

I adopt the Joel Spolsky measure of a developer as someone who is "smart and gets things done." I think a good reward system should incentivize picking the right tasks and making high-value contributions to the team, regardless of whether a lower-level employee could have theoretically done the work if it was specified and assigned to them.

Re: Why I Quit Google to Work for Myself

#216
This is why people change companies every two years. It's easier to get a promotion by studying for interviews on leetcode than by spending the extra time promo gaming in one's career.

"Facebook will give me a sr software engineer position after 5 hours of interviews, here is that offer letter" is a very strong position. Market dynamics are a lot faster than internal promo dynamics at bigco.

Once you reach sr although, you usually have to go through the promo game from what I can see. Most companies do not hire staff engineers unless your already staff engineer somewhere else at another bigco. This is why people tend to become manager after this point, because you see its more effort to become a staff engineer than it is to become a 'sr manager', which is about equivalent to a staff engineer. People also become a manager for the learning experience. Understanding 'the other side' can be quite enlightening.

Re: Why I Quit Google to Work for Myself

#217
post #49

I'm also a Googler. Upon joining I was also given the keys to an ancient data pipeline, due a redesign for at least five years at that time. The person handing me the keys left almost immediately. My task was also keeping the thing adrift and nursing it back to health, whatever it takes. I did get promoted for that. The metric I used was pretty much the amount of developer time that went into supporting it that was s…

Were you going from junior (L3) to intermediate (L4)? If you were, then the task you described seems appropriate - you don't have to do much to go from L3 to L4.

The author of the blog post was going for senior (L5), which you can't get just by maintaining code.

Re: Why I Quit Google to Work for Myself

#218
post #45
post #7

Because you made enough money that it was an affordable risk? Yes, perf is garbage and management is chaos, but let's be honest with ourselves. Four years' worth of GSUs oughta be enough for anybody. "Devoted employee" followed by "expert at gaming the perf system" followed by "project cancelled and adrift" is, sadly, the normal progression for a Googler, from what I've seen.

"Four years' worth of GSUs oughta be enough for anybody." No. Not even close. There's a reason it's called golden handcuffs. It all depends on where you are in life. If you have a mortgage, it won't be enough depending on the house you have. If you don't have a house, you will have a lot of FOMO. Big time. It's all about pscyhology - you need exactly 0$ if you are dedicated and don't have dependencies. Ok, let's say…

I thought "oughta be enough for anybody" was an obvious "640KB" joke, but maybe I'm just old. Anyway, it certainly is enough money to appropriately cushion an attempt at freelancing.

And the best thing to do after leaving a job at Google is to move somewhere cheaper!

Re: Why I Quit Google to Work for Myself

#219
post #182

To author: you lost the political game. I busted my ass at a startup for years and also lost the political game. So I'm speaking from experience here. You can either get all mad and worked up and pissed off about it, and waste years of your career (as I did) being pissed off, stubborn, and refusing to change. Or figure out how to play. I'd like to think there are places with better politics but I think it's pretty en…

As a junior engineer, what the best way to learn about and master the political game? I feel like it all goes way over my head. Does anyone have any recommended reading?

Googler here: I think that gaming metrics is not that easy. Here by metrics I mean things like:

  - Your impact on revenue (if you work in ads)
  - Your impact on search quality (as assesed by independent raters)
  - Etc.
If you can "game" these, I think you are solid.

My advice would be to try to come up with your own project ideas (related to what your or other very close team is already working on). Often times, people stick around in their teams for a long time and there is not much inovation -- you are a new guy can bring some fresh perspective.

People who get promoted the fastest are usually those who are self driven and start projects from their own initiative.

Re: Why I Quit Google to Work for Myself

#220
post #182

Earlier quoted context omitted.

As a junior engineer, what the best way to learn about and master the political game? I feel like it all goes way over my head. Does anyone have any recommended reading?

I think the author said it in the article: Optimize for promotion. Work from day 1 to game the metrics. If it helps your metrics, do it, if it doesn't approach with caution. If you start that from day 1 you'd be 2 years ahead of the author. Honestly, it sounds like a really shitty way to live. I personally prefer doing great work and having faith that it will work out. It has, a lot slower than that, but I'm proud of…

I don’t even know what the metrics are though. I work at a big company, and I know they have metrics that drive raises, promotions, bonuses. They keep them very closely guarded though. Any time I ask my manager about the metrics, I get a non-answer.
Post reply on HN