Instead, I'm on a team that has and horrendous turnover and is staffed with below-average IQ people.
This company builds EVERYTHING in house, and the toolset is like going backwards in my career 10 years.
If I do want to stick this out and turn this team around, I'm going to be working nights and weekends for at least a year - there's just too much to fix.
I've told this to lots of people who work in other division (that I can trust) and they've said the easiest thing is to just accept it as it is and coast. I've never done that in my career and don't think I could do that.
Has anyone been in the same boat? I'm told that it becomes easier to switch teams after a year.
I feel like I've made a terrible decision and don't know what to do next.
Any advice is appreciated.
I'm not sure why your co-workers' IQ is your concern. To come out of the gate with a comment like this sounds like you have a strong disdain for them.
Part of your reason for joining the company was the paycheck. I assume the checks aren't bouncing.
My advice is the same advice I would give to many people: Learn from your coworkers. Understand the problems that the team and the company face. Make incremental improvements.
If you really want to you can work late every day and at weekends. It's your choice. Bear in mind your job won't love you back.
..
> Any advice is appreciated.
Not shitting on your colleagues with this generation's phrenology would be a great start.
More generally, it sounds like you are starting with the idea that you're better and smarter than everyone you work with and only you can see the problems, as opposed to everyone you work with being (by and large) decent and hard working people who are making the best of a complicated situation. Learning about that situation, chesterton's fence etc, will be more productive that presuming everyone you work with is an idiot.
I work for a FAANG, and have for a while. Maybe I have below average IQ, too, but I've met and had the pleasure of working with some of the smartest, hardest working, kindest people in my career here. Some assholes too, of course, but we're all human.
Everything is built in-house because it needs to solve problems at a scale that you've never worked at. Be humble. If the tooling is terrible, congrats! There's a bunch of impact in your future making the tooling better. And because it's a big company, it cares a lot about marginal productivity improvements like better tooling, and will reward you for it. That's pretty different than my experiences at startups that are struggling for survival.
Maybe you picked a bad team. That's a possibility, because large companies are less homogenous than startups. But that also means that there are good teams, whereas if you pick a bad startup the whole thing is bad. Sounds like you didn't do the homework you should have before choosing a team. Maybe, again, be humble and accept that you have things to learn, even if it's just how to see red flags prior to joining a team, and use what you've learned when choosing a team next time.
Good luck!
Is this really what people think when joining a large company such as FAANG ? I mean not everyone can be an A player in a company with 1000s of employees, correct ? Also not every team is going to be solving hard problems. Someone has to do the dirty things. Isn't that understood ?
Not trying to shit on you OP but I would have tried to learn more about the team in interviews if possible or is that just not a thing with FAANG interviews ?
The U.S.'s $13 Billion Aircraft Carrier Has a Toilet Problem
https://www.popularmechanics.com/military/navy-ships/a319296...
This comment doesn't reflect well on you.
I've recently joined a FAANG as well, and I've been disappointed with the code quality and the tooling. I expected better. Yet I feel there are tons of things to learn, and there are definitely bright people there. If anything, it reminds us that it's not easy to build software.
As someone in a movie once said, "Now you can either accept that, or you can get to work. That's all it is. You just begin. You do the math. You solve one problem... and you solve the next one... and then the next. And if you solve enough problems, you get to come home"
Use this as an opportunity to learn how to adjust your thinking so you can thrive personally in a challenging environment. You may never get to a point where you love it, but you can probably get to a place where you are successful and can focus on the positives.
Learn how to work well with challenging people. You'll encounter more of them later in your career. Again, adjust your thinking. These people almost certainly have their positive qualities. Work with those positive qualities and become a master at mitigating or avoiding their bad qualities.
As far as working nights and weekend goes... do you really have to do that? Are other team members doing that? Big companies are not like startups. All the things will never get fixed, and you simply need to do your best with things in a permanently semi-broken state.
I understand that you don't want to coast. You don't have to even if others are. Focus on doing an excellent job on your corner of the world. Your projects, your code, helping others, etc.. Worry less about the bigger picture.
Also remember that it's not forever. This is an investment in your future career.
One final thought is that I know I can quit - that isn't the question. I could make more money (with less stability) consulting, or find a middle ground at a Series C+ company.
What I probably should have said in my OP is that quitting feels wrong. I've never quit a position after three months and this is honestly the first time everything is telling that quitting is the right decision. As dysfunctional as this team is, quitting would feel like letting them down, and it just isn't something I've done before.
But again, these comments have given me perspective and will make me give this more thought.
You're not at a startup where "fix all the things ASAP or we die" is the driving force. Settle in and work on making things better, even if it's just to keep you in play as you investigate other options.
A year of improving a team would give you a solid foundation for an internal transfer, for example.
The first piece is that mobility is high between teams at almost every FAANG company. At my first one, I moved 3 months later because the initial team wasn't a great fit for me maintaining a lot of slow moving legacy systems. I moved to a team working on much more greenfield projects with more attention on the products themselves, and I thrived for several years. See what your options are to talk to other teams and move to one that aligns better with what you want to work on.
The other related piece to this is that because mobility is so high, there do tend to be certain teams or areas with higher turnover and lower quality hires in some cases. No one wants to work on hard to maintain and neglected products, most good engineers that start there move on, and so it becomes a self-perpetuating cycle.
There are likely some extremely brilliant people to learn from at the company (even if not in your team), so try to seek out and find them in teams with openings. I agree it's easier to move after a year, but if the fit is really not right you can likely get an exception going to a team with an understanding manager (who you would enjoy working for anyways). Set up some non-formal meetings based on the internal job board and be open with all these experiences and concerns.
Finally, the internal toolset is a real challenge, but I've come to take a slightly less pessimistic view on it. First off, the internal tooling tends to be worse on an individual workflow level, but accepting it has largely been better for me than fighting it (in most but not all cases). It's slower than a modern toolset, but still usually productive once you embrace what it's good at. The flip side is there are usually good reasons it's evolved to where it is today. Some of these reasons have to do with the scale of how many teams are working together, and understanding that will help explain why it is what it is. The other reasons are just that some of these companies have now been around a long time, and shifting to something better would be quite painful organizationally, meaning it's not ideal but the alternative would also be painful for the organization at a whole. You're new to it, so are at the opposite end of that.
If you have a startup mindset you should go back to startups. You will be more productive, happy and grow faster.
If you wanted to work on something interesting, you should have stayed at a startup. You wanted to make bank, and this is the price.
Is it worth though? For whom are you fixing the issues? For the coworkers who will leave while you're still refactoring? For the charismatic boss? Your own personal pride? Also, is the work worth your overtime? If they staff "idiots", do they deserve your free time on the weekend?
I applaud you for being able to care so much in what you describe is a terrible team.
I am guessing this is either Amazon or Google. I would think that this is most likely Amazon ("horrendous turnover": 50% of people who join Amazon leave within the first 2 years). In LinkedIn you will routinely find people from Amazon showing their badges stating that they completed X+ number of years. Have you seen people from other places routinely doing this? That itself is a dead giveaway to the critical eye.
Btw, your IQ comparison is extremely derogatory. So please edit that out.
Save all of the money and run away once you've lucked into a Google offer.
In my experience, you'll only really get to solve problems at a startup. At a FAANG-sized many decisions are likely made "by committee" or by some higher up, and your project is always at risk of getting blocked for political reasons.
If you enjoyed working at startups in the past, I'd go work for a new one that you're finding exciting!
Don't kill yourself now working nights and weekends. But do take the time to evaluate what is important to you. You can probably get hired most places you'd care to work now, so...where is that? What makes a place ideal for you? What would you be willing to give up to make that happen?
I think cooling your heels there for a while is a given; that might be coasting, sure, but it also might be determining specific small areas within the company to pour yourself into to try and improve.
After you've been there a bit, see if things have improved, as you've gotten more context. If not, you're in a better position to move on; you've now got the FAANG on your resume, any recruiters you talk to will know not to lowball you, and you'll have spent time thinking about what actually makes you happy in a workplace and can look to seek it out.
But I will say, having worked in 5-6 companies now over a 12 year career, no place will have everything you want, and no place will stay the same. Figure out what is most important to you. It might be compensation and stability; it might be interesting problems, it might be something else. If it's either of those two, though, you may want to look outside of your main place of employ to figure out how to meet the other need; job for compensation, personal work for interesting problems, for instance. Or get permission for some moonlighting and take some contract work from some old contacts maybe.
Your co-workers may just be zoned out and collecting a paycheck - at some point the workload can become so impossible that you just don't care anymore. This is especially true if you don't care about a company's mission, product, or customers. Unfortunately the tech boom has led to high turnover at some places, and people just jumping to the next big salary instead of picking a good long term fit.
The tech industry is big enough that you can do what makes you happy - the big name places sometimes aren't a great fit. I've found a pretty good career working at mid-tier Fortune 500 companies. There a lot of good opportunities all across the US if you're willing to forgo SV salaries, know your stuff (and can learn new tech quickly), and focus on helping the business instead of the latest tech fad. (FYI, I make 175k in the mid-west with 40hr work weeks and a 10 min commute, 5 weeks PTO, great healthcare)
> I'm going to be working nights and weekends for at least a year
I find it highly amusing that you're complaining about coworkers being unintelligent then following it up with "I'm going to spend the majority of my free time giving free labour to a trillion dollar company for a year"
If you want to actually make it work, you need to meet them halfway and assume that they know something about working in an established organization that you don't. Tossing out their institutional knowledge will likely be a case of throwing the baby out with the bath water.
This just may not be for you. After doing things a particular way, doing them a completely different way tends to be a trial by fire and most people don't want that and won't tolerate it if they don't have some personal crisis forcing the decision.
If you have other viable options that are more comfortable for you, there's no shame in pursuing those instead. If you don't, you need to spend less time feeling superior and more time trying to figure out how things actually work (as opposed to assuming your way is best in all things).
Are you able to switch teams? Can you find or take ownership of a specific part of a project that’ll keep you sane and motivated? Are you able to fix the specific tooling on your team or for your project that you don’t like?
Is the tooling really backwards 10 years, or is it that you’re unfamiliar with it and just out of your comfort zone?
With that out of the way: Do you want to become a leader? Do you want to lead these people? Is it realistic to do so? If you are their better than this might be a good way to handle it.
If you are unable or unwilling to lead them, then you should probably transfer out asap. They'll pull you down, and you will notice it happen and you will resent them for it.
If you're at Amazon and you think things are going to get better, let me tell you, they aren't. Find a way out immediately unless you're okay basically moving forward with the same schizo management and dev policies.
Hope you find some work you enjoy!
This is one of the reasons I usually disqualify people with long stints at FAANG on their resume.
If you plan to get back into startups, you may not want to stick around for too long. Another option is to jump to another FAANG where maybe you’ll be lucky to find better people/culture.
I would definitely not want to work with you.
I think perhaps you maybe just weren't exposed to 'older' companies in the past and mostly worked in greenfield type situations?
>there's just too much to fix.
Welcome to any company that isn't a startup? Debt, tech, or otherwise (processes, etc) will exist if a company is old enough. That's just how it is, read up on Google enough and they've reworked their own systems numerous times when things didn't work anymore as they grew.
Smart companies, dumb companies, everyone accumulate debt as old systems don't do the thing right anymore. That's not wrong, that's just life. At those startups you worked at, everyone was laying the foundation for that and maybe just didn't know it ;)
Also I wouldn't assume that people are dumb because they don't want to fix it all... they maybe know, just also know it won't all get fixed / isn't worth it by pounding out weekends and nights all the time. I'd be wary of thinking 'these people are stupid / won't put in the work' when it might be just that they aren't going to kill themself fixing it all.
Lotta assumptions on my part here, just some food for thought.
In your shoes I would make a decision to either fix/improve the situation or leave immediately.
If you decide for the former then make sure you have support from your management and own that decision. Be the one who turned the subpar division around. If it is as bad as you say you can hardly screw it up any worse. That's a privileged position to start from - difficult to fail.
I doubt your colleagues are really below average IQ - but perhaps their skills could be better. So teach them. Be the leader and mentor they likely never had. Have patience and build a team.
Fix the high impact, low effort problems first. Get some fast successes - they inspire and breed appetite for more. Don't exhaust your resources. Chip away one small problem at a time. It adds up faster than you think.
Create a vision for where you want to be in one year. Communicate that goal at every opportunity. Believe in it and other people will believe as well. It doesn't matter if you reach it within an arbitrary deadline - it matters that it exists in the first place.
Whatever you do, don't coast.
Trying to turn a team around by working really hard seems like a good way to burn yourself out. Whether the team succeeds is likely beyond your control. Be helpful where you can, but let the manager worry about it.
It’s hard to tell much from a single comment, but referring to team members as “low IQ” seems like a warning sign that you might need to work on your people skills. Sure, you’re disappointed, but that’s not their fault so be careful not to use that as an excuse to take it out on them with the excuse of “raising standards” or some other justification like that. Been there, regretted being a jerk.
I don't think anyone is in the position to judge other IQ's especially co-workers. These people passed the same interview loop as you. Just puts them in the same "IQ" bracket as you. Maybe they also feel the same way as you and don't want to put their effort in trying to turn this team around and just want to coast and switch later on. You need to get off your high horse and try to understand the motivations of the team by talking to them individually and bringing stuff up in standups/meetings and suggest ways to improve. Work with your manager. Maybe you can be the one who can turn this team around without burning out yourself. In the end, its just a job and trick is to not take everything personally.
It is not weird to churn around early in your career to find the right fit. Try not to do it too much but one or two rapid hops on a CV is not strange.
There are literally hundreds if not thousands of teams at some of these companies. They are not all bad. Do your research. And put yourself on one you would enjoy.
From there, it's building relationships, documenting what gets accomplished, and trying to meet people where they are so that they can maybe get something done (and not break other things.)
That's from a managing perspective, but if you are determined to not coast, that may be what you'll be doing.
There's a lot to be said about your situation, but I've found that oftentimes the only way to actually figure out if a job is for you is to try it out. I have had jobs in the past which looked really good from the outside, and I even got people recommending the employer and the team, and then when I started, it became painfully obvious that the place was nowhere near as good as expected. The opposite is actually less common in my experience - if if feels wrong and if people are telling you the company is not great, it probably isn't.
There's a reason why people like working at large and reputable companies. For anyone reading your CV in the years to come, a few years spent at such a company would look impressive. You do get the benefits you mentioned, like stability and salary, so that's a net positive in your current situation. Spending a bit of time there, maybe 1-2 years would definitely not set you back too far anyway, in terms of tech, experience, etc. so it might not be as bas as you imagine it.
Then, on the opposite side, if you really hate it now, maybe you won't start liking it down the line and it could be better if you throw in the towel sooner rather than later. I've had jobs where I was unpleasantly surprised at the start, then went through periods of liking my job and then hating it and then back to liking it, etc. All in all, when I look back, I tend to remember the better things, but I can also fully remember how awful it felt at times. If the primary reason for getting into the job was that you'd work on hard problems with top talent, and there's no way to get that in the near future, then why stay there at all? The current job market would probably allow you to find something very quickly.
It's really about how you feel about the job, I think. It won't probably hurt to start looking around for better opportunities, without rushing it. It does not sound like an emergency. Plus, this way you'd give it some chance at least. It's tough to be at a job which you don't like and it's all about figuring your priorities and sticking to them.
I was once in a high-profile, ambitious open-source (but not FLOSS) project which had much the same NIH syndrome as you're experiencing, but didn't have the staff/budget to maintain their tooling properly and I hated it to the point where I got myself fired, because I didn't have the integrity to quit on my own.
If you can change something, try. If you notice that it's futile, quit.
I can tell you from experience that trying to suffer through something while having no agency is really really really bad for your mental health.
What makes you suspect this? Even if the hiring process is full of BS, that BS usually requires a higher IQ to learn and deal with like LeetCode, right?
• Engineers in large tech companies are neither better nor worse engineers than in startups on average. They just work on different things.
• Large tech companies are a lot more heterogeneous than it looks at first. I had a great experience with talented and respectful people at Apple, while a friend of mine was in another engineering division also at Apple, and… not so much. It’s so large, it can’t be the same throughout the company. It wouldn’t be surprising that your team is struggling to hire quality talent, but some others have an easier time, for all kinds of reasons.
• But each company does have some common cultural traits you’re likely to find throughout all its teams though. My current company takes a lot about the importance of work-life balance, while Apple told us at bootcamp on day 1 that we’d be working our asses off. In both cases, it turned out true.
So, one FAANG might be wrong for you, but another FAANG might be better. And one team in a FAANG might be wrong for you, but another team in the same FAANG might be better.
One reason I like larger companies is because once you’re in, they’re so large that it’s easy to switch to another role all the while having a lot of insider information about what you’re getting into, way more than if you were to switch companies. But yeah, a lot of the time they want to keep you on one team for a little bit first, so at least they’re getting some ROI on their efforts to find you.
You’ve said in a comment you have been at startups hiring and building teams. Those are growing teams. You are used to growing, building, and acting with accountability. Now you are on a team with turnover, that probably isn’t growing. Why? Is the team going to be shut down because of low value? Is it in a purely a maintenance function that will just be starved of resources? Is there bad leadership that can’t fix problems and has unrealistic expectations?
Likely whatever is wrong is out of your control. Don’t burn out trying to save something you might not even understand. Do a good job and try to learn “big org”. Look for a different team. Focus on extracurriculars. And find a new job at the year mark if it doesn’t get better (or earlier if you have too). Good luck.
No comment on your predicament, best of luck and look for anybody smart and hustling around you that you can latch on to.
I worked at some seemingly boring defense contractors on paper, but had a really cool team, and worked on a hard problem set... We all gelled well and everyone was smart.
But I also know if really dysfunctional teams at large companies that would otherwise sound exciting and interesting on paper...
What's that? There's only five of 'm, just give us a name. ;)
By all means raise these concerns and suggest improvements, but ultimately if a FAANG wants to waste its money and be stupid, let them be and enjoy part of that money. In a small startup where you have significant financial upside in it succeeding my advice would be different, but here just lay back and enjoy the paychecks.
Given your description of the team it seems like you should be able to outperform them without any trouble.
* Different companies do things differently and you should have some humility about the way things are done here
* There's definitely a lot of cruft that can accumulate at larger companies, but the question is how much is it stopping you from being productive and getting the work done
* There's definitely shit teams at FAANGs, and by definition you're more likely to land at one coming in because of the turnover
Teams at large companies are all different (small companies, too), and the way this reads, I don't think you'll be effective with any amount of toughing it out, and it will end up being more stressful than it's worth.
My advice is straightforward. First, stay in the position until an adequate amount of time has passed so it won't raise eyebrows on your resume. Second, begin looking for other work doing what you want to do, using this job as a stepping stone.
You took a chance, it didn't work out as expected. That's life. Move on to the next thing!
If people are getting pip'ed or fired it seems like it might be difficult to coast.
If you can do this and manage to turn the project around you will have achieved far more than knowing the latest toolsets.
I have been working with a FAANG recently, one that builds EVERYTHING in house. Almost comical. There are great engineers all over the place, but no cohesive strategy or overarching sense for product outside of a couple of niches. Not a great situation.
Also, "below-average IQ people" really? that seems unnecessary.
As for me I quit, because I could not focus on my role and instead focused on the environment.
But seriously don't hold on to something that makes no sense to you whatsoever. I'm pretty sure management won't turn the boat for you especially at the scale of your complaints so think about your exit strategy.
Here are my survival tips. Tl;Dr, calm down and try to be positive at work.
* Things are never as serious as they seem, and deadlines are rarely as solid as they seem. These companies have inertia and capital, and they understand that estimates are not promises.
* Check in with your teammates regularly, and avoid giant complicated code reviews. Be ready to change direction quickly, and don't worry too much about throwing away a few days of work if a better solution presents itself.
* Try to get a feel for how the in-house tools work. Even a basic understanding of how large companies handles things like deployments might be valuable in the future.
* Ignore the politics. Try to help your peers, and be nice to them even when they're annoying. They may or may not be "low-IQ", but as long as your teammates feel like you help them out, you should get good annual reviews without needing to work more than 40hrs/wk.
* If you want to transfer internally, be up-front about it with your manager. In-house transfer applications aren't always private.
You’re not married or anything close to that and you don’t have an hour commute anymore either
Maybe don’t work nights and weekends. The rest of your team lowers the bonus performance expectations, so just coast and collect yours
My experience is similar to yours, however. I have managed, led, and been a part of teams at small startups for the last 10 years of my career. I recently joined a name brand, large tech company (not FAANG, but maybe a half step down from there. They certainly think of themselves as a FAANG-type company).
I've had the same experience as you.
There's much more money. Our compensations are higher. The technology choices are more cutting edge and expensive.
But the toolset my team was using to actually develop, is worse than what I've used for the last decade.
The people I interviewed with ranged from extremely intelligent and skilled, to the sort of rude know-it-all engineering type you hear about related to faang interviews. The interview process was so difficult that I was on track to fail it, until an upper manager reached out and personally interviewed me to see what was going wrong, and corrected the process.
But my team, while great people I enjoy working with, are a very, very considerable step down in terms of skill, ability, and knowledge from the last team I managed. And those guys were making easily 50k+ / year less than my current team members.
I also thought I was joining to solve A+ hard problems, and I'm also having a bit of a hard time with it.
I started at the beginning of 2021, I'm taking a couple of approaches, mentally to this. Firstly, I'm not leaving until my stock options finish vesting. So that means I'm in this for the long haul.
Second, the fact that I'm so much more knowledgable than the rest of my team, I hope, should set me up for promotions down the line. I think part of what's going on here, is that this company is so_much_larger than the startups I've worked for in the past, means that ICs genuinely don't get to see most of the truly difficult problems, because true difficulty gets spread out over so many more people, and solved by people higher up the totem pole than a lowly IC. FWIW, this desire has made me really dislike the current Covid WFH arrangement. As great as WFH is, getting promoted is so much harder when you lack consistent facetime with the people around you.
Thirdly, I really, really, really blame the modern FAANG inspired Leetcode interview process. My teammates clearly have the ability to solve leetcode style questions. And in the blue moon opportunity that such a question comes up in code, it is usually solved pretty quickly. But actually important coding skills? I will be keeping this in mind as much as possible when I vet out companies when doing future interviews, and I very much hope this industry fad changes over time.
Fourth: the fact that I can develop so much quicker and cleaner than my coworkers, means that I can take advantage of the fact that this company has many more different types of technology than I would be exposed to at a start up. I will be spending that extra time bumping up my own skillset, so as to be a more desirable candidate once my options vest.
However, all of the above is specific to one assumption: I ultimately like this company, and enjoy the job. I am not working nights and weekends at a company I hate. So if that's the position you find yourself in, I would suggest leaving. The mere fact that something is a FAANG doesn't automatically mean its a good job. Weigh your income vs your options vs your happiness, and make a decision. The "FAANG" title holds very little weight in that decision, except as a good-looking line-item on your resume.
This is why you go to faang. Take the money.
"I work for FAANG[2]" or "I work for FAANG[0]".
would be so much more fun naming your employer !
Just as an FYI, this comment comes off as incredibly arrogant to anyone who’s going to read it.
The Big Head character from Silicon Valley is again proved to be (like all the characters) spot-on accurate. Mike Judge is sorely underappreciated.
My $0.02 advice: you seem smart, hard-working, and self-motivated. Become a consultant and be your own boss. Use the FAANG creds to demand a high rate. It's a market, and you can leverage your abilities as services you can offer. Work it to your advantage.
I love the boring lame talk because it gets me out of work.