Now that I'm thinking of jumping ship to other interesting companies, I'm having serious doubts that I really learned what I should have learned during all those years. Especially since I'm considering companies with a higher hiring bar than Google.
How can I keep myself accountable while I'm still at the company to deeply learn the FE/BE technologies to be better prepared for other companies? Should I start by preparing a checklist of technologies and dive into each of them for a month and continue from there?
In the few years since I left; I worked as a solutions architect managing a team, a team lead, a remote dev, and now in a startup. Front-end, back-end, flip-side, all the ends. So I've been deliberately trying different angles of my career to see what suits.
I'd describe this process as grueling, ("challenging" is too friendly). I honestly think I would have been happier staying at Google, farting around, and being social. I agree with a lot of the comments here. However it's a catch-22, because the me that exists now wouldn't choose to go back and overall I think this has been good for me – and not just because of the, er, _character building_ aspect of it.
If you stay at Google, make the most of it by progressing deliberately in your social life. If I'd've stayed, I could have comfortably raised some kids with my wife by now - but that's still on the todo list.
If you leave, just jump right in. I didn't study anything, I just picked it up as I went along. If you were able to follow Steve Yegge's advice and Get That Job At Google, then I'm sure you're a smart cookie and can fake it til you make it.
Basically I'm saying you can be happy either way. If you leave, know what you're getting yourself into. If you stay, don't waste this time but use it on yourself.
So what's changed since then? Have I found meaning in work? No! I've become a professional slacker who knows all these psychological tricks, knows what body language to use to make the desired impression, what to say and what not to say. My managers think I'm a high performer who also makes valuable social contributions to our team and this is reflected in pay rises. I see my mission at work in carefully educating the overly enthusiastic co-workers by dropping a few seemingly random hints or observations that make them think and challenge their beliefs.
Work is just work and unless you're curing cancer, you shouldn't put any effort into making some billionaires richer. Just do the minimum, get your paycheck and appreciate the fact that you don't need to worry about money. Very few people in the world have this level of freedom.
But life is quite a bit more interesting than it seems. Learn applied psychology to understand what drives people. Learn about all these LLCs, corps, trusts and other fun stuff. Talk to a lawyer and try to start your own company. No need to leave your current job: you can use the gained knowledge to hide traces, while still being very legal and very cool. Even if you get caught, use the learned psychology tricks to negotiate: you may even find yourself in a VP position as few people can covertly pull this type of stuff. Even if it doesn't work, there is nothing to lose: 50 years later the only thing you will regret is not taking the risk because of some silly non competes with a company that no longer exists. Learn some Buddhism and some Tiberian phylosophy: it gives a very interesting and different outlook at life. Learn how pilot an airplane: like I said, there is nothing to lose.
“All I do is copy code from the internal codebase and patch things together until they work” — this is exactly what established tech companies mostly need from their engineers. They want people with enough CS competence to not fuck things up while patching together new solutions from the institutional code soup that everyone knows how to navigate and review.
If you can do this reliably at 10% of your capacity and don’t have ambitions of applying creative solutions with unproven tech, you’re a real asset. Don’t leave rashly unless you’re genuinely bored or frustrated.
1. you work for a company that is an excellent resume booster outside of the valley. I'm from central texas and most everyone I know in tech has worked at Dell and once complained how boring it was to work at Dell. The moment they decided to move away from Austin their Dell experience made them very hot commodities to non-Austin tech companies. Every day you stay at Google the more valuable you become.
2.you presumably make enough money to not worry about your monthly Bills and probably have enough to save as well. At age 28 you are well ahead of the vast majority of 28 year olds from the last 100 years. Not saying you should be content but still...
As others have said you have a great opportunity to do some new things, both in terms of mental and financial capacity. Nevermind learning more tech stuff...get a hobby. Try different things to make you the kind of person you've always wanted to be. Most people are not able to do that because of stress at work or stress about money. You seem to have neither.
One is very smart, but he's been telling me literally for years that he has zero motivation, to the point where he sometimes won't actually start working until 6PM. He's moved around within Google trying to find something he's interested in, but it's just the same thing on a new team. I've suggested a number of times that he leave and find something that inspires him, but he's too used to the salary, perks, and lifestyle to try something new.
Another friend is very similar - nice guy, but there was a consensus at his last startup that he wasn't really accomplishing very much, and he would have been fired if he hadn't left voluntarily.
Another friend is a nice guy, but the most irresponsible person I know. He's been fired from other jobs for being unable to show up before 1PM, and he keeps making some truly irresponsible life choices (ghosting people, drugs, prostitutes).
I know this is anecdotal, but do other people have this experience with Google engineers? It seems like Google is the kind of environment where (at least if you're an SWE) you can get away with doing the minimum for a very long time.
I think you got enough advice, so I'll just add a few points:
* Challenging oneself to try harder is itself a skill. Don't lie to yourself that you're only using 10% of your capacity - it implies that given the right condition you'll be 10x as productive, but we all know "the right condition" never happens. Truly productive engineers (and I saw a lot of them at Google) bring the right conditions to themselves. At best, you will be something like ~2.5x productive, if you try your damnest.
* Google still has tons of different projects. I don't know how easy it is to transfer internally these days, but at least try to find something that sounds interesting to you. A lot easier than changing the company.
* Googlers have complained that "all we do is moving protocol buffers from one place to another," since forever. That's part of the job: truly interesting stuff doesn't happen that often. And yes, I think the problem is more pronounced at Google, because really interesting problems were already solved by much better people, so you end up moving protobufs. But all other places have similar issues, more or less (see point 1 above).
* If you decide to change places, do NOT look for higher hiring bars. (I'm not telling you to avoid them: I'm just saying they're irrelevant.) Google already has a pretty high bar, and tons of incredibly talented engineers. Having extra hoops during the interview did't motivate anyone, and it wouldn't you, either.
Leading up to that, part of my path out of the doldrums was (a) therapy, and (b) going through the list of technical subjects that seemed out -of-reach-wizardly (writing a compiler, writing an emulator), and chipping away at them one plush, cushy Google bus ride at a time until they were working. But the change of scenery — and especially of expectation — was invigorating.
A few miscellaneous comments (“advice is a form of nostalgia”…):
- the feeling that you're only idling at 10% mental capacity will kill you slowly.
- you might want to investigate the idea that you're procrastinating because of anxiety or depression, rather than the reverse
- assuming you're giving programming interviews, and using borg/bigtable/cns/etc/etc/etc day-to-day, you'll be amazed at how much knowledge you've picked up in 6 years. You probably have a practical fluency with distributed and sharded capacity design that most interviewees lack. Depends on where inside Google you landed…
- just preparing for and attempting the interviews at “companies with a higher hiring bar than Google” will probably wake you up a bit. Good luck!
But when you do take some slack and reflect, then you will realise that you just learned a ton of really practical things that can help you in your next job. You've also learned the discipline of hard work (which in the long term trumps any deep knowledge of tech because ultimately every job eventually becomes a grind, and tech is ever-changing anyways). Plus you've probably made a good reputation for yourself which never hurts.
You will also be able to decide if you found that last few months energising or if you would rather gnaw off your arm than do it again. And that helps to answer if you should leave the job or not :)
I really doubt any other tech company that pays as well as Google will be any more interesting. And most people eventually get bored with their jobs. There is no job that isn't repetitive to some degree.
Also, you seem to be downplaying your experience and what you've learned but I highly doubt you'd have kept your job if you were truly slacking. Odds are you just got efficient at doing your job and are getting bored.
Anyhow, there is something to be said for a stable, well-paying job, so go figure things out in your personal life before you shake up your professional life.
If you're doing the minimal amount of work, does that mean that the users are suffering? If you had put in more effort, would they be able to get more out of your software with less effort? The drive to make the best experience for my users motivates me to learn everything I can about design.
What about your fellow programmers? Does anyone else have to deal with the code you wrote? If so, is your code sloppier or harder to maintain than you could have made it, had you put in more than 10%? The drive to make code a joy to work on, for others and myself, motivates me to learn.
What about Google? Are they getting their money's worth out of you? This is a bit harder to sympathize with, being that now we're talking about a rich company instead of particular people. But think of it as a test of your honesty. Did you agree to work a certain number of hours but are really working a fraction thereof? Don't get me wrong, no one that I know can code for 40 hours a week, 50 weeks a year, without burning out. But I think your managers, if they understand programming, expect some reasonable fraction of your day to spent working hard, doing your best, etc.
If you're having issues with dating and work at Google HQ, the problem may be that you're in an area over-saturated with your demographic (nerdy 20-something men). Strongly consider seeking a transfer to another office, any(?) of which will have more favorable area demographics for dating.
I think that could give an indication of what might be wrong here, I can relate (somewhat!). I work for a top-flight tech firm, straight out of school, for about 5 years or so, and for a long time I felt just like that: I focused for a very long time on achieving the next goal - passing an exam, getting into University, getting that job, and not really focusing on what that was all for, not really focusing on my personal life etc. Once I got my job I was like “what is all of this for?”
So I changed tack, I rotated positions at my job, I tried to “live with purpose”, do something with a super-high impact, and not put myself under such relentless pressure to succeed. It may not feel like you have a super-high impact, but I’d say you do - the services you run help to improve literally millions of people’s lives. Try to think about it like that, instead of “I’m not living up to my potential”, think about the enormous impact you already have. If you just don’t find the work interesting, talk to your manager about the possibility of a secondment to another team.
I’d also advise that relationships are hard, and it is OK to feel miserable when they end. But one thing I only realised recently is that if your misery extends by more than a two months, it could be indicative that you need to see a doctor. Depression is a terrible condition that’s still (IMO unfairly) stigmatised and it’s often hard to disentangle from the rest of what goes on, but it is not a weakness to admit that we all need some help sometimes. If you need an impartial but sympathetic ear, you can find my email in my profile. Good luck! :D
Or you can become a skillful slacker as some here have mentioned. That personally wouldn’t work for me; maybe it will for you.
Since you are new grad employee, I assume your comp wasn’t competitive as it could be. 6 years at L4 also probably indicates you are at/below median comp for that level/location. You might be due for a change if you want more money.
In my opinion, Google is still an amazing place to practice all sorts of different technologies. Internal education programs and mobility between teams would let you work anywhere in the company that’s interesting to you. I suspect unless you find that passion, this might repeat anyhwere you go.
But hearing stories like this just kinda demotivates me and confuses me more. Most non FAANG companies have no interest in keeping people who wants to stay purely technical like me, so in the end I'll have to end up at FAANG/unicorns to get better compensation. But on the other hand, joining FAANG seems soul crushing.
Second, it's immoral for an individual contributor to resign themselves to this fate. The lost opportunity is terrible for both the individual and society. Be where the action is!
I thought I was doing meaningful work at first. But after 7 years of the grinding it took its toll, I burned out and I left in September.
I'm not sure our situation is comparable, but I'll share some of my experience.
I was very well paid and that kept me on the job longer than it was healthy for me. Still I can't tell you if I made the right decision or not. My job was not stressful at all and not demanding, but I had some periods that I slacked too much and that took a toll on my perf. A bad perf made internal movements harder.
I wish I could have stayed longer for the money, I wish I had better scores that internal movement was possible. In the end I just got up one day and quit, and I don't regret.
I'm taking my time now to rest, travel and work on some side projects before restarting my career. I lived a pretty scrappy life in the bay that I can now not worry too much about money for some time.
I don't share the Google hate so common in this forum, I think it's a wonderful company to work for. A lot of opportunities, great people and comp. I blame only myself for my mental health deteriorating and affecting the quality and balance of my work. I'll work on getting that in order before finding a new job, and if I get back to Google I'll feel lucky.
This was more a rambling than anything. But to summarize my advice would be to prioritize your mental health, that's a lot more important than you realize. If you feel like the grinding is affecting you seek help or quit and find something else more fulfilling. If you feel you are ok maybe try an internal transfer and stay longer, add a side project if you need a challenge. If you do decide to quit give yourself a quarter to rest at least.
And lastly you're probably better than you think you are, impostor syndrome is real and affects everyone.
P.S. -- there would be no need to 'keep yourself accountable' if you were genuinely interested in what you were doing.
On the other hand, going to another company may or may not help that much either, and for two reasons. First, depending on where you are inside Google, the technologies which you have picked up may not be all that useful outside of Google. More importantly, and you've pointed that out for yourself, if you don'y have habit --- and the curiosity --- to deeply learn new the technologies you are working with, you're probably going to struggle wherever you are.
Spending a month for each new technology that you think you need to learn is not going to be enough to deeply become an expert in any of them. Also, it sounds like you have some not-so-great work habits, such as not doing the best possible job you can with any assignment you have been given. Shaking those is also going to be helpful for you, no matter where you are.
So... here's what I would suggest for you. First, spend as much time working on yourself as you so working on "new technologies". Try reading books such as Steven Covey's The Seven Habits of Highly Effective people. I found listening to books such as Brian Tracey's Success Audio Tapes to be helpful in my early career. If you are more spiritually minded, some of Og Mandino's books are old classics.
Secondly, try to bump your performance review ranking at least one level each cycle, until you are getting strongly exceeds expectations. Not because you necessarily want to stay at Google, but because of the self-confidence that this will hopefully help you gain. And tell your manager that (a) you feel that you've been slacking, and (b) that you want to do better. If your manager is any good, they will want to work with you. Try to get promoted at least once more at Google. Why? Because if you are going to try to strike out at some other company, people who understood Google's performance levels will not necessarily be impressed if you have been at Google for six years, and are still a SWE III.
Finally, once you have a string of good ratings so it will be easier for you to try moving to another teams, you might want to consider working at some team which has contact with outside customers, especially in the Cloud PA. This will give you a lot of contact with external technologies, since customers will use a variety of different software components.
Please do keep in mind, first and foremost, that it's all about how you can add the most business value, no matter what company you happen to be working at, and no matter which customers you are trying to help. It's that work attitude which is going to be the most important, which is why I started this by suggesting that you work on your soft skills as much as your technology skills. In addition to listening to various success tapes while I was commuting to work, I also made sure I knew how to read a balance sheet and monthly income/expense reports. I also took supplementary classes in management (which my employer paid for) for subjects such as "Law for the I/T Manager" at the MIT Sloan School. This is all going to be super useful, especially if you think you want to leave Google; at large companies, you can get by just being a technology specialist, but if you are working for yourself, or at a small company, being a well-rounded employee who can understand various business and legal issues will stand you in good stead.
The bottom line is you need to wake your curiosity to learn as much as you can in a wide variety of subjects; not because you want to get a good/interesting job elsewhere, but for its own sake. And you need to develop good work habits and have the internal drive to do the best that you can no matter where you are. Jumping ship to some other company isn't going to change who you are; and you may find that it is much more about you than your environment.
If you want to discuss this more, look me at at Google and I'm happy to chat some more. My ldap is the obvious one at google.com.
this is... a big and important thing (and difficult... a lot of people re-implement rather than trying to understand what is there.) when dealing with a giant big corporate codebase. This might be, the primary SWE job at big corporate? I mean, there's a lot there, and to understand what is there well enough to actually do something with it is not nothing.
All that said, 6 years is a long time to spend at your first job. There's nothing wrong with seeing what else is out there. Don't quit until you have the next job in the bag, and keep in mind, when you quit, that you might want to come back.
Inevitably you run out of cool things to learn, and very few jobs can keep challenging you mentally all the time. Almost by definition a job must get more boring over time.
You can do some learning and growing on your own, but that only goes so far: You can write a script and look up stuff and apply it at your job, but can't quite break out a sample project in the new framework.
Almost by definition, the person who can handle coming in at that kind of job and grok it all, can't be the one who does the job for years on end. Enjoy the ebb and flow of the job lifecycle - after a hectic start, settle in and enjoy it for a while.
But then: leave! If the company is smart, they'll put you on a new challenge if you ask. Most likely you'll have to quit and apply somewhere else. Then you will be on 100% of your mental capacity again in no time :)
As businesses and their products get more complex, "systems" behavior becomes a larger part of making things work, until you might only need a few people working on components, and everybody else on fitting those components together in different ways. There's hardly any loss of honor in doing the 90% of the work that needs to be done and makes the business successful.
I think you can do two things. First, look into new technologies that you'd like to dive into. Second, start to rehearse your elevator speech about how great your present work is, until you begin to believe it yourself, because it might be true. Doing great work and looking for better work are not mutually exclusive.
First question I'd ask myself would be: "Why do I think this would be better elsewhere?" Is the issue Google, or is the issue you/the profession?
Depending on the answer it seems like there are a few reasonable landing zones: 1) find a new job at google that addresses the perceived issues at google. 2) jump to a new job at a new company that addresses the perceived issues at google. 3) approach your current job with a new attitude to work harder and do more. maybe set your sights on next promo. 4) embrace your slacking, saving money to prepare for a career change.
What you choose to do is completely up to you, but know that a lot of people would give up their right arm and a leg for this kind of job and the job security that entails.
That said, as long as what you are doing is keeping you relevant in the job market and you are building competency you should be fine.
Don't worry. Go to job interviews when you can, this is to ensure that your knowledge and persona are still relevant. If they give you an offer you are in a good situation to use that information to either improve your current position or change job. Don't forget you work to live, don't live for work.
Also as others have said, don’t expect that your job will fulfil you completely, unless you’re curing cancer it’s just a job, talk to your manager about a different role or a bigger challenge but don’t give up a job at Google because you’re bored.
And get some counselling, it’ll be the best thing you did in 3-6 months.
I think you've got the right mentality - that staying where you are isn't the best long term move at your current stage of life.
Ask yourself what is it that you want to try? ML, FE, BE, Full stack? and simply build a project out of it. Dabble and dabble. It'll likely be hard at first since there's a mental rut, but at some point, something will pique your interest.
From there it's just diving deeper and deeper until you're ready to jump ship. You may even find it at the current company through a transfer.
I don't recommend jumping ship until you're sure. You've got a fantastic backstop.
I’ve done the startup scene before, and I can tell you, you will be doing 3 different jobs and using 100% of that mental capacity. You will be making changes that wouldn’t be possible without director-level oversight at larger companies. You will feel like you’re making a difference.
https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-...
0: I can personally recommend TalkSpace. Fixing my anxiety and ADHD has made my work life nearly immeasurably better.
I've had two of these in my career - extended stays in a role which is "naturally prestigious" but had minimal actual challenge or operational responsibilities. They're fantastic...
The first one (at about your age) I used to court my wife and read / think EXTENSIVELY about business and life. It let me get my shit straight before the next leg up.
Rolled off that into a super-intense turnaround role and fatherhood (also super-intense) which took about 5 years. At the end of that, wound up as an "executive caretaker" managing group with instructions not to disrupt anything while they sold the company. So 3 - 4 years of sideways action with no meaningful opportunities for promotion.
Which turned out to be a MASSIVE gift. My bosses basically didn't care what I did with my time, so I learned how to code (full stack + database management) on company time and leveraged that into a successful side business. They funded me through the low-return slog of learning a new industry and starting a new business....
THANK GOD they didn't make me a fucking VP....
Don't go looking for the missing sense of fulfillment you have at work, either for Google or any other company. Crack some classic literature and take some long walks, figure out what you haven't been doing.
You might try deep diving into Linux. Buying a book and studying for the RHCSA is a great way to get started with an achievable and valuable goal (disclaimer: I work for Red Hat and have the RHCSA). It is mostly applicable to all Linux, maybe 5 to 10% is RH specific.
I also bought some Great Courses on philosophy and that has been stimulating. I can highly recommend the courses from David Kyle Johnson.
You may also try starting a new project. That is the best way I've found to really learn BE/FE. Elixir is an incredibly fun language, and it's gaining traction. Get the Dave Thomas book first, then the Chris McCord Phoenix book. Being at Google there's probably lots of great people to ask for advice too.
Just my thoughts. I'm no expert at this, just sharing what worked for me.
I say quit your job, but don't have a plan; figure things out afterward. Catapulting yourself out of your comfort zone is the best way to get to know what you really want to do, and force yourself to care about what it is you want to do. Nobody here can tell you what that is.
I spent the first 7 years of my career in the public sector. Talk about a career killer.
If you are concerned about getting a job elsewhere, just study and do online coding exercises like crazy. That should land you a job at most companies with whiteboard interview at your seniority level.
If you are concerned about actual learning, most of my professional growth has been on the job.
I spent a long while doing 'proactive learning' where I would study new techs and frameworks. It turns out that all of them, either I never had to use, or when I had to, I needed a refresher, since I forgot most about it. Lately I have been doing more 'reactive learning', where I learn new things as I need them, or studying general topics that can be broadly applied.
Long story short, look for positions that will stretch your abilities, you'll be fine.
I don't think you really need to learn anything special for job interviews. There is no necessity to understand special technologies, as most good companies are fine as long as you have any experience with similar things.
I would also recommend you read books on programmers. I recently read "Masters of Doom", and it might open your eyes into goal driven programmers and their impact on the world.
Also, out of curiosity, which companies do you think have a higher hiring bar than Google?
Then what about AI machine learning.
Life looks so difficult now.
I believe this kind of "we need the brightest engineers to spit out HTML via JS" is the major reason for the ridiculous amount of yak shaving around web development.
Now, if pushing your career forward is what you really want, people in a new company will start to notice once your putting in the effort and communicating what you accomplish. There’s no trick to it, just putting in the effort on the tasks you take on and being thoughtful about how to accomplish them in a way that is focused on the company’s goals.
Don’t start prepping to much, just do it. Jumping in is the best way to get moving.
In these situation, I always tell myself (or if it is the board of directors / leader group at my company that is being a bit too risk averse): ”Ingen minns en fegis” (Swedish, more or less “No one remembers a coward”)
The days when people can coast forever at Google are coming to an end. I had to let one person go because they basically never did more than the bare minimum (and got 3 Needs Improvement ratings in a row), and I know many more (some under me, some not) who are approaching a PIP.
Go work for a small company, at about 6 to 20 people. Your work can actually make a difference there. 10% or 100% at a big company won't really be noticed as x10. At a small company, it makes a huge difference, at about x10. And for me personally, much more gratifying.
I'm not sure how this might apply to your situation, but hope it will give you some helpful perspective. You can take the exact same slothful person and put them in different circumstances and end up with a stellar worker - the game-changer for me for me was to be accountable, in a big, meaningful way, to someone besides just myself. If this resonates, maybe you could volunteer your tech skills to a small nonprofit or something, and see if you feel more engaged with that work.
BTW, I think it's possible to have a great home life and a great career, but THAT takes REAL work.
I worked at Google for eight years, and fell into a funk, because I picked up new challenges and moved teams, and learned a whole lot, but I also worked on backend infra projects, not shippable features, and you know how well that goes over with the perf review and promo committee.
So, I left for a startup. It was trial by fire, because Google does thing the Google way, and everyone else uses other technologies. Gone were borg, stubby, tap, and in came Kubernetes, REST, Jenkins. It took a long time to learn how the rest of the world works, and Google wasn't my first job, I started there after already working for fifteen years, but in eight years, the world changes a lot.
Now, I'm the main tech lead for a large startup on the verge of success. It's been a crap ton of work, grueling, I've probably made 30% of the income I would have if I stayed at Google in the years that I've been gone, but I've also worked with the best people I've ever encountered - better than at Google, and I feel professionally successful, albeit not financially.
Practice identifying problems, taking full ownership of them and fully thinking through and delivering solutions.
This is way easier if you find a problem that you're interested in.
If you're not able to sink your teeth into any good problems, at least pay attention to people around you who do this well so you can copy them in the future.
Or find ways to challenge yourself outside of work = learn to fly a helicopter, set a goal to run a marathon or ironman, learn ballroom dancing, learn how to sword fight/fence, whatever... push yourself outside of the comfort zone, sign up for 5 "intro to" classes to avoid procrastination and see what clicks.
- invest yourself in a project to learn as much as you can - start or join a project at home that you believe in. It doesn't have to be code; community outreach, gardening, repairing a car, taking some moocs, making wine or soap or beer or whatever
But most importantly, save up the money you're making there (it should be pretty good) and then take time off for yourself to decide what you want to do. When you're financially secure, your options are open.
By "financially secure" I do mean having money in your savings to sustain yourself for at least a few months or years. Speaking from personal experience, it's a load off of your shoulders when you can sit down and really decide on what you want to do without financial pressure. You can ask to work on 4 days a week, join a movement, travel the world, work on opensource or that contraption in the garage, learn something new, whatever.
After all, you're ultimately responsible for your own progress in your career.
Quit. Join a small company, where you'll have the freedom to work the way you want, the inspiration to do so, and the certainty that you'll be judged properly. It'll lead you to do great work again, work you're proud of and that makes you feel good and that really makes a difference.
I worked at a Big Corp, and would often spend the day surfing or training for ironmen, and coding at the cafe shop between sessions.
My reviews came back nearly the top ranking consistently. My “secret” if anything was jumping into the hardest technical problem available to me and taking it on largely myself.
The folks that were promoted faster were the ones that put out business critical fires and spent 80 hour weeks debugging customer issues. Which was well deserved imho.
Google is a huge company, with tons of opportunity. Your risk adjusted return there is probably higher than YC. If you can’t figure out how to hit homeruns at Google you are likely to fail everywhere else.
Your managers job is to tell you what you need to do to become a “critical” employee that’s on the fast promotion track.
Maybe do a side gig and build something that you find interesting, could be a game for kids, a dating app, a music app,...
At the bottom of my heart, I always wanted to build my own startup or work with startup so eventually I left Google.
Now, during that time, I did my work as many other Googlers would do but the difference is that I was in a position to access huge amount of training materials, design docs, 3rd party research materials, etc. In my "spare" time, I just went through and read, absorbed as much as I could; so at the end, I did learn a lot but outside from my usual scope of work.
"Make it a ride and become a passenger."
I mean we are all going to the same place in the end. Nothing really matters.
Have a comfortable job. And positive outlook but never plan for anything. Its so much fun. Life happens all around you and you just observe.
In my experience, once you have enough money then friends, family, social life, and pursuing your own interests are a lot more important than working for a company, and far more deserving of your time and attention. As they say, nobody on their deathbed ever says "I wish I'd spent more time at the office."
I don't like the idea of checklists of technologies to learn.
Instead, I like the idea of thinking about important problems that you would like to solve and then investigating technologies that might help you to do so.
I would also consider looking for some more interesting and fun work within Google.
There are some downsides to that of course. I mean, I am purposefully reinventing the wheel. Sometimes, it fails, and short term productivity takes a hit, but I consider it a long term investment. Because next time I see the problem, I know what not to do, and why.
This presuppose you are not at 100%, because you sometimes need to catch up with your mistakes, but since you are at 10%, that shouldn't be a problem ;) Being at 100% is a bad idea anyways, because you can't take a step back.
This is a very dangerous and destructive behavioral pattern, not unlike what happens with people when they are on government support and don't have to worry about earning a living. It's destructive for you and those around you.
Print this in a large font and place it on your monitor and wherever you spend the most time at home:
"Your focus determines your reality" (Star Wars, Phantom Menace).
There's a great deal of depth in that simple five word sentence.
My advice: try to find the root cause of your slack-off mentality and adress it. If you figure out that you need to place yourself beyond a point of no return in order to get going, do it.
This however could potentially all happen while still staying at google. The mind is a powerful thing and just a change in perspective can change a lot in your life.
I always enjoyed building things — but they have to have some sort of meaning to me. Do the things you build have any meaning to you? If not, which things would?
To me, it sounds like you have a lot of questions to resolve first. I would do that before you change anything. For example why do you think you are doing a minimal amount of work and does that actually mesh with reality? How do you define and measure work output anyway?
You mention dealing with depression for example. In my experience dealing with depression itself is a full time job. That you held down a second job during that experience is a major accomplishment. Go easy on yourself.
Remember above all that your thoughts create your emotions. Ask yourself why do you feel that way. What thoughts underlie the feelings. Question those thoughts.
If you are in Mountain View or the bay area, I'd recommend going to the Feeling Good Institute. I'd also recommend reading Dr. David Burns book Feeling Good.
Consider CBT as a set of tools for your brain and human operating system. I would start by learning those tools first.
Choose topics in which you have genuine interest, use tech you're not familiar with, adopt different architectural styles, make it public (ex: GitHub) and share progress with developer friends / team mates.
Before you know you will feel more confident with your tech skills, may start seeing opportunities to apply recent learnings into your daily tasks and even if you really decide to jump ship these projects may come in hand while interviewing for other positions.
Google is huge and if, for example, ads is boring to you, try Google Brain or any of their X projects (self driving cars?). That way you have more data points around what's causing you to slack. It's not necessarily the case that when you do find personal alignment that you won't regress to slacking off.
If it's intentional then I don't understand why you'd do that, it seems to me like it'd be horrible to wake up knowing you'll be slacking all day...
If it's not, I'd suggest first of all changing teams while you learn other technologies for a different job.
edit: there are so many things broken with Google products, there has to be something you're interested in fixing...
My advice for you: just apply to other companies anyway and wait for an offer that excites you.
The worst thing that will happen is you'll get rejected and the particular interviewers will think less of you. You can always re-apply later.
Meanwhile, start watching Google Tech Talks during your spare work hours and tell your boss's boss that you'd like a challenge.
Being conscious of the demotivating aspects of a job that has too low expectations is described very well in this book.
If you think that your paycheck is a factor in finding a woman I have news for you: you get the women you deserve.
Did you think about just chilling, getting a hobby, and treating your job as a means to an end?
either accept it and settle at an employer, or change jobs. often this happens around 5-6 years in if not sooner.
its ok to settle at an employer and just be happy wiht your life. if it sucks the life out of you i'd suggest finding a new challenge. with a resume of longer term employment at a big corporate like google , finding a new challenge should be doable.
perhaps you enjoy a startup, its a lot more dynamic and versatile, though often pays less atleast initially. personally i hate that, and try to challenge myself in my current work rather than looking for different jobs. but then again i don't have issues with my job being a bit boring / stale as i try to find things outside of work to fufill me which can also help a lot to fight depression / stress etc.
in the end you sound like you need some thing you are passionate about to work on to feel good about yourself, this is normal, but it doesn't have to be your job which gives you this.
You’ll certainly be able to see higher and further from a place that has supported you for this long than starting from scratch elsewhere.
If you don’t learn to make the most of any place you’re presently in, there’s no guarantee you’ll do it anywhere else.
1. Consulting on the side? Surely you being G employee will open lots of doors.
2. Side project/your own startup .
I think you are getting a great value for 10% of your capacity. I would just keep milking it till you get something on side get started.
PS: I don't think 'deeply learn the FE/BE technologies' is good investment of time.
"What, then, constitutes the alienation of labor? First, the fact that labor is external to the worker, i.e., it does not belong to his intrinsic nature; that in his work, therefore, he does not affirm himself but denies himself, does not feel content but unhappy, does not develop freely his physical and mental energy but mortifies his body and ruins his mind. The worker therefore only feels himself outside his work, and in his work feels outside himself. He feels at home when he is not working, and when he is working he does not feel at home. His labor is therefore not voluntary, but coerced; it is forced labor. It is therefore not the satisfaction of a need; it is merely a means to satisfy needs external to it. Its alien character emerges clearly in the fact that as soon as no physical or other compulsion exists, labor is shunned like the plague. External labor, labor in which man alienates himself, is a labor of self-sacrifice, of mortification. Lastly, the external character of labor for the worker appears in the fact that it is not his own, but someone else’s, that it does not belong to him, that in it he belongs, not to himself, but to another. The worker’s activity is not his spontaneous activity. It belongs to another; it is the loss of his self."
At some point what you want should come into focus. Don’t be too quick to quit the job, save up first and buy some income investments.
My only suggestion would be: Pick 2-3 technologies you have been using most and which are popular (in terms of finding jobs) and really spend time mastering them. Otherwise, good luck finding a more senior job.
I'm genuinely intrigued and curious about this one. Care to elaborate please? :) What are the other companies with a higher hiring bar than Google?
You can set yourself up for life.
Otherwise, find a non-tech hobby as others have said, and remind yourself just how good you have it compared to 99.99999999% of the rest of the world.
Maybe your next career move should be to make YouTube videos about the days in your life as a developer.
Google isn't the most stringent? I thought only the quant firms had higher bars.
PS: Never interviewed myself, just read stories.
If you don't feel challenged enough, seek intellectual activities (of ANY kind, as long as you enjoy it. Code, study, read, play an instrument, whatever) outside of your job. They will be much more satisfying, because you will have complete control over when and how do you engage in them. I've been doing this for many years and it's one the most satisfying aspects of my life, if not the most.
Also, being kind of a veteran (35yo), let me tell you this: be careful what you wish for. You seem to be enjoying a job that doesn't stress you or burn you out. If you start working at a company where you don't have that any more, there is a very good chance that you will miss the sustainability (in terms of mental health) of your current one.
TLDR: if your job pays the bills and doesn't offer challenges, great. Look for challenges in other areas of your life to maximise happiness.
Yes, seriously even! The count is n ow almost 100 books and studies only including the CS AI part not other CS parts and whole lot of neuroscience
This won't give you more work motivation but it will make the rest of your life more interesting.
I left to join an AV startup and it's amazing how much more I've learned and accomplished in a few months versus the time at Google. Things at Google move slowly, and the amount of work per person is relatively limited. Also, all the complicated infrastructure or codebase decisions were already made for you, or is being handled by someone L+2 at least and outside of your purview.
Edmond Lau's The Effective Engineer talks about this, except to the extreme that he wanted to do and learn everything at Google, and even then he left after ~2 years after he felt his growth was slowing.
I think for many, being at Google for a few years will give you invaluable experience, but then severely diminishing returns on growth and practical experience unless you're one of the lucky ones who gets promo'd every year or two.
For your actual question, though: >Now that I'm thinking of jumping ship to other interesting companies, I'm having serious doubts that I really learned what I should have learned during all those years.
Having Google on your resume always helps get people interested. Having experience working on big teams with big codebases is also something not everyone in this industry has, and there's value to it, even if you'll initially scratch your head at how to build without Blaze.
>Especially since I'm considering companies with a higher hiring bar than Google.
Curious why you're confident in that statement. I've found that Google has a much higher hiring bar to the actual required skill -- they basically seem to hire as though everyone will work on GWS, when in reality many are just copy-pasting CSS and BUILD rules from another project.
On the flip side, many more interesting companies have lower hiring bars relative to the job requirement. It's harder to hire good talent when you're not FAANG with a pipeline right out of the Ivy League.
>How can I keep myself accountable while I'm still at the company to deeply learn the FE/BE technologies to be better prepared for other companies? Should I start by preparing a checklist of technologies and dive into each of them for a month and continue from there?
Well, I would focus LeetCode, tbqh. That's still the standard. But whatever you want to do, focus in on technologies used in that industry/job role. Do some side projects. Maybe take some online classes. I think you'll find the practical experience requirement to be lower than you think. People can generally learn the right technologies, and companies know this. It won't be a big deal unless you're a frontend-only SWE who suddenly wants a ML role or something.
Lastly -- feel free to DM me, I use this handle on twitter and gmail, happy to help, especially if you're curious about where I ended up.
If you want to change Google into a better company or alternatively build or find a better place to be, here is a reading list I've put together which might help: https://github.com/pdfernhout/High-Performance-Organizations...
Since you mentioned depression, see especially the related health sections.
All the best and good luck!
P.S. Something I wrote in 2008 on ideological challenges inherent in Google inspired by contradictions in the "Project Virgle" April Fools joke: https://pdfernhout.net/a-rant-on-financial-obesity-and-Proje... "Even just in jest some of the most financially obese people on the planet (who have built their company with thousands of servers all running GNU/Linux free software) apparently could not see any other possibility but seriously becoming even more financially obese off the free work of others on another planet (as well as saddling others with financial obesity too :-). And that jest came almost half a century after the "Triple Revolution" letter of 1964 about the growing disconnect between effort and productivity (or work and financial fitness) .... Even not having completed their PhDs, the top Google-ites may well take many more decades to shake off that ideological discipline. I know it took me decades (and I am still only part way there. :-) As with my mother, no doubt Googlers have lived through periods of scarcity of money relative to their needs to survive or be independent scholars or effective agents of change. Is it any wonder they probably think being financially obese is a good thing, not an indication of either personal or societal pathology? :-( ... Google-ites and other financially obese people IMHO need to take a good look at the junk food capitalist propaganda they are eating and serving up to others, as in saying (even in jest): ... "we should profit from others' use of our innovations, and we should buy or lease others' intellectual property whenever it advances our own goals" -- even while running one of the biggest post-scarcity enterprises on Earth based on free-as-in-freedom software. :-( Until then, it is up to us other ... "semi-evil ... quasi-evil ... not evil enough" hobbyists with smaller budgets to save the Asteroids and the Planets (including Earth) ... from financially obese people and their unexamined evil plans to spread profit-driven scarcity-creating Empire throughout every nook-and-cranny of the universe. :-("
There's really no rational reason for you to worry about obscure corporate bullshit which will be gone and forgotten in 3 years. It pays the bills, but beyond that it's not your "life", so don't treat it as such. That's one of the benefits of being an _employee_ rather than, say, an _owner_: you get to leave work at work.
What you _think_ Google wants from you and what it actually wants might be two different things. For as long as they choose to employ you (and moreover, promote you), you can be sure they're getting a good deal as far as their requirements are concerned.
B/c a huge percentage of our smartest people are utilizing their smarts to figure out how to coast as lazily through life as they can while optimizing their "observed personality"?
This explains a lot. But, it is not something I haven't suspected.
What would it take to change this? To allow productivity, growth, and proper compensation?
It is not just software engineering where this is a very common scenario, btw.
Six years at the same place with only one promotion means that you're not really advancing.
Fake it 'til you make it.
If you do stay in place, get yourself promoted again and complete a graduate degree.
Then, once you lose your job, you will no longer be slacking at Google. This will definitely push you a bit.