HACKER Q&A
📣 edmcnulty101

New job at BigCo. Everything has friction


Coming from smaller companies and startups just got a job at #BigCo in the Bay.

The one thing I'm noticing is that it's miserable to work here because EVERYTHING has friction and takes days to get done and has to go through numerous teams and approvals just for the simplest stuff like a new VM or an SSL cert from their own in house CA.

I get great satisfaction at work out of accomplishing things and this is just rediculous to the point of making me dislike working.

To get anything done is emotionally exhausting.

Anyone else dealt with this?

Anyone have any type of jobs where friction is minimal?


  👤 ravenstine Accepted Answer ✓
Yes. It even happens at medium sized companies.

One answer is to accept the way things are at BigCo and to just coast along in your role, which is not necessarily a bad thing.

Another answer is to work at an early-stage startup or a small non-tech company where you can move fast. The tradeoff there is lack of job security and lesser pay.

Don't ever expect to move fast at BigCo. It's a BigCo for a reason. By moving fast, you could upset the cash cow, hence the friction placed in front of you. But this can work in your favor. Excellence will not be expected of you at BigCo, and if anyone complains about why nothing is getting done, you just repeat exactly why. As long as the company is making money and you haven't made any enemies, the chances of you getting fired are slim to none.

IMO, you have to look at the big picture. If you ignore the friction factor, is life at BigCo so bad? Are your hours reasonable? Do you like your coworkers? Good pay? Learning to let go your frustration with how you think the company should be run may be the most favorable choice. Remember, all jobs suck, more or less. A year after you change companies, you will find things to hate about that one as well.


👤 ageitgey
This is not just normal, but this is "The Deal" that you are accepting when you join a large company.

It's normal that a single developer is maybe 20% as efficient at a big company compared to at a small company. What you used to accomplish in one day will now take you a week (after team processes, code reviews, deployment requests, etc, etc).

But the trade-off is the big companies have figured out how to keep thousands of people productive. They might individually be less productive, but as a whole they accomplish more than a small company can accomplish. Some do it better than others, but no big company works like a small company.

That's just how it is. It's easier to solve problems with small groups of people than large groups of people. If the problem takes a large group of people, it will be a lot less efficient.

I would even say that working at a big company as essentially a different skillset than working at a start-up or small company. In a big company, your main job is to get other people to do things and you are successful based on how well you can do that. In a small company, your job is to do things yourself.

If you really hate the big company world, you should consider moving back to a small company. It's never going to not be like that.


👤 irrational
I work for a very large corporation (Fortune 100 that everyone has heard of). I was hired by a business unit back in the days before the company even had an IT department (back then everything technical was outsourced to another company). So for decades we did whatever we wanted. Eventually the company created an IT department and about 10 years later they got wind of us and insisted we get moved into IT. Complete hell. Our productivity took an insane nosedive. As you said, it is slow as molasses to get anything done and everything requires so many (SO MANY!) meetings. At first this was very stressful, but eventually I just gave up. Whereas before I could get in a good 30 hours of productive work done a week (meetings are rarely productive), now I am lucky to get 5 hours of productive work done. Instead I spend the majority of my time in meetings or waiting for people to get back to me. 2 things help. First I work on personal projects in all the downtime. Second I started as an online instructor at a university teaching web development to students. So I spend time helping the students. And the company is perfectly happy with my work, since nobody else can get anything done either. It’s insane, but I learned to just let it go. If the company doesn’t care about how much productivity they are losing, why should I care?

👤 magicink81
Your position at a job dealing with friction is much more common than the opposite case. If you're interested in learning and growing, here are some opportunities you may find in your new role:

1) Cultivate an attitude of optimism and gratitude despite the challenges, perhaps through a study of Stoicism and a cultivation of patience via a study of Buddhism. Gain more pain tolerance. Learn to not care so much about the outcomes, and care more about your own presence and the excellence of your contribution. Learn to care more about other people, rather than just getting the job done. Learn to have more fun, while also "digging the digital ditch". Being calm and steady despite feeling uncomfortable is an invaluable life skill essential to growth and doing big things.

2) Learn to politic. Recommended reading (and there is a lot) would be How to Win Friends and Influence People, as well as Robert Greene's The 48 Laws of Power. Navigating people and political systems is also an invaluable life skill and essential to growth and going big things.

3) Develop your life outside of work more fully. Consider getting more involved in helping your family, your friends, and your community. Volunteer opportunities abound. Perhaps they need a speedy hacker like you to help them with some part of their tech?

4) Study the challenges of BigCo for startup opportunities. Lots of startups are created by people who ran into a big challenge at a big co, then broke out on their own to solve the problem, then were able to grow by selling back to their previous employers to solve the problems with tech.


👤 donohoe
Oh god, yeah. I was happy to stop working at such a place. Leave.

At one such company, no names, they had a rather large consumer facing website. I was told it had no analytics other than a homegrown solution (which was terrible). Then it turned out that had Google Analytics (Enterprise) but everyone had forgotten about it. They denied it at first, but I showed them screenshots of the Network tab in Chrome where it was pretty obvious. Suddenly I had access. So far this is 3 weeks or emails.

With access I realized the implementation was botched. All view states were being handled by a hash in the URL so all Page Views in GA were reported in one URL.

I requested a minor code tweak to account for this. I was told by the dev team it would take 6-8 weeks to implement such a change. I was assured this was rather complex and they'd need to free up people too to work on it so that could take longer.

I told them the code change was already written and I'd included it in the initial request. I referenced the template file within their system where they change would live and included tests. They still dragged their feet. It got completed in my last week. Copy/pasted exactly as I'd written it.

It was utter madness.


👤 moomin
One trick I’ve used is quite simply having five things on at once. You keep notes of where each project is, and work to get each one blocked. When they get unblocked, you switch to that thing until it’s blocked again.

There will be people who insist that you should “focus on the most important thing” but if it’s blocked what’s the point?

The other thing to do is make a lot of friends in related departments. It’s amazing how much faster things will go when someone does you a favour. Expect to be doing favours in return.


👤 mattlondon
Enjoy the 35-40 hour work week and stock options that are actually worth something I guess?

For what it is worth, I am at a BigCo and while yes it is true you cannot just hammer out 4000 lines of unreviewed code and push to production without someone else being involved, you also benefit because people aren't just changing stuff willy-nilly. E.g. your project you've been working on wont suddenly stop working in production out of the blue because Clive decided to totally change the database table schemas at 4am on Wednesday morning and nobody told you about it etc etc


👤 xenadu02
Interesting that this is so complicated in a big Bay Area tech company.

At a fruit-themed Bay Area company I can register a domain name behind a load balancer, issue a new cert, kickoff a VM to host it internally all in the same day without any approvals... so long as it is below a certain scale suitable for testing, skunkworks projects, etc. Approvals and meetings only become necessary if I want to deploy a production service, a large-scale service, or both.

Requests for a new repo or Confluence space are fulfilled same day and give me complete admin control over it. I can kickoff custom OS builds and generation of installation images via a self-service portal. I can create new email-enabled LDAP groups via self-service. I decide if the group itself is self-add or not, etc. Anyone else in the company can do the same. Many other things are as simple as direct manager approval.

You don't have to put up with bureaucratic nonsense, it just happens to be common in corporate America where management doesn't trust the peons to make decisions. Or perhaps where everything is driven by division P&L so no one wants to be responsible for spending money outside their fiefdom?

I prefer an environment where individuals have responsibility and yet where we accept mistakes will be made. As long as you learn from a mistake and don't continuously repeat it there is no need for a new process in response to it.


👤 pfortuny
That is exactly what Big means in this context: something indistinguishable from bureaucracy. I am sorry for you but if you want to be able to work “freely” and “get things done”, a big corporation is the worst place to work in.

I am not happy to bring bad tidings.

Edit: no business gets “Big” without a good paper trail and this implies that no action is performed unless some previous paper work has been carried out.


👤 jerDev
I am too authentic to work at FAANG. My salary as staff eng. is roughly equivalent but I can argue, throw a fit, change direciton, say my opinion etc etc every day. I push through friction, I ignore managers, I do things my way. I ask for forgiveness not permission because I have a bias for action not confirmation.

Software engineering interviews do not value authenticity, typically. They want you to say what they want to hear. I purposely go in the opposite direction. I am always myself, say how I feel, and challenge the interviewer.

My girlfriend ( soon to be wife ) has no issues getting any job she wants in software engineering. She will recite exactly the words they want to hear, and they love her. I will say exactly what I want to say in an interview and they will love or hate me. I have no intention of changing.

My best advice? Leave for a smaller company that lets you do whatever you want to do and perform at an exceptional level. You get the same satisfaction, same pay, and you may only be 1 step down from VP. You can grab VP's, C's for a comment, you can do whatever you want ( as long as you perform ).

That's the way. For me at least.


👤 jrockway
I think the key here is to make sure you minimize these costs. For example, if you decide to make a microservice every time you want some independently-useful feature, you'll have to set up CI, get a domain name, get an internal cert, get permission to route packets at production priority, have a privacy review, get a launch review, etc. If that's the org, then you never want to be making a microservice. Shove everything into your monolith (and hey, maybe let other teams do that too and share some of the operational burden). Be adaptable; find the processes that are time consuming and make sure that you only go through them once. Make sure that if you impose process, it has value.

The other side of the coin is that all these processes exist for a reason. If an outage costs you a billion dollars, it's financially great if you're filling out paperwork and having meetings instead of checking in features that break production.

The key is to be adaptable. Observe what is a necessary waste of time, and get it done and out of the way. Observe what is an unnecessary use of time, and work around it. And, accept that you can't always win. Sometimes it's socially imperative to do something that's objectively a waste of time (status meetings), so you have to do it.

(Why do they make it so hard to get work done at big companies? No idea. I could never go back. Not being productive at work isn't worth the extra money they pay you. Kind of sad when you think about it.)


👤 karmakaze
> accomplishing things

[I also ended up at a BigCo along with others from a small startup that pivoted multiple times after making v1 products that could have been successful.]

What I learned is to reframe expectations. At the startup, I could develop software and features rapidly with no impediments than my own lack of knowledge in an area. At the BigCo, the product is large, changes are slow, and processes are safe. The payoff though is that when you do ship that feature, it's being used by thousands-to-millions more users than it would have been at the startup.

At the same time, all the one-off things I used to do at the startup should have been streamlined at the BigCo so that I can think primarily about the problem I'm trying to solve and not the peripheral routine elements of every service that gets shipped. If this is not the case, perhaps the BigCo's processes are not very well streamlined.

I've found some ways to adapt, but some things still take much longer than they should, like PR reviews (but I'm also guilty of being a slow reviewer).

> emotionally exhausting

This is because you have an expectation that a certain thing should only take a certain amount of time and effort.

The best general advice is to work on multiple things concurrently, so that when one thing has delays you can switch to another one that's ready for work.

You have to decide whether you want to actively improve these inefficient processes, accept them, adapt, or move on. Anything else will be suffering. If you move to another BigCo the annoyances will be different more to your liking, or not.


👤 kshahkshah
Yes, many of us have dealt with this as you can see from the existing comments.

One thing you are mentioning is the friction around the dev experience however and there is perhaps an action you can take, if you're willing this early in your tenure there, to put your neck out on the line.

My very firm belief is that a bad dev experience results in a high cost of experimentation which means people don't try new things out and innovation stops. The only way things get done is through massively coordinated efforts. If you can associate a cost of the gate keeping with productivity and then directly back to the money it costs the company, or money that could be saved, or feature velocity to be gained, you can make a case for improving the experience. Making the case and seeing this all through will take you 6-9 months.


👤 sanitycheck
Ah, fond memories. At the worst place, it was 5 weeks before I could log into a computer. Then daily "scrum" conference calls with 40 people on 3 continents, which took about 90 minutes each. Detailed written proposals (Word docs, multiple pages) required for every code change, even small fixes.

Minimal friction is the opposite scenario - be a contractor, take whole jobs, do it all yourself. I prefer it, but there's no coasting.


👤 honkler
Can there be a better display of first world (actually SF bay) problems than this post by OP?

All Over the world, workers yearn for breathing time - A few minutes away from the the production line. They wish their tool breaks and the management takes a long while to provide a replacement.

What’s your issue, op? You seem very excited to generate shareholder profit.


👤 CitrusFruits
I see a lot of comments saying to stick it out, etc. But for me, I worked at a fairly Big Co for a year and a half and it really really affected my mental health negatively. The pace the company moved at compared to how much needed to be done created substantial existential dread within myself. I did everything I could to have a good attitude about it, worked the politics of it all, enjoyed side projects and hobbies, etc. But at the end of the day, I think I'm just not built for such a slow moving company so I moved on and have been a lot happier for it.

That being said, to each their own and I know a lot of my coworkers were really happy there.


👤 csours
This is why they pay you. If they are not paying you enough, well ... you'll come to some conclusion.

The risk to a small company is that the product will not make money, impressions don't convert, and the runway runs out.

The risk to established companies is every other risk - software license risk, security risks, etc, etc, etc.

Big Co also runs some or all IT as a cost center - people don't get to make the product better, it's difficult to staff appropriately for the work load.

Big Co also treats people as cogs to churn out some "work" - management at the top cannot understand or help with every project, so they have tools to understand what hours are spent on which project. Then they expect those tools to tell them something useful, so they hound the middle managers based on the work recorded in the tools. "You manage what you measure"

Friction is minimal when your job is very repeatable, or when you don't actually try to do anything.


👤 gautamdivgi
Yes. I've dealt with all of it. Don't be emotionally invested in your work and enjoy the comp and work life balance.

👤 dec0dedab0de
I have worked in tech for two very large companies, both fortune 100, and well over 50k employees. I also worked for a small company that I could best describe as a late stage startup that was coming to terms with being a lifestyle business.

The trick to escaping bureaucracy is the same for both. Making friends with people, and talking to them directly when you need to massage the processes. It's just that it is much easier to be friends with 50 people than 5000. Working from home can be an issue, make sure to video chat when you can and goto as many official and unofficial events as you can.

If you have a good manager, and your manager has a good manager, they should have contacts around the company that can help with the red tape. Never abuse it, and when you're in a situation where your urge is to be a roadblock to another team, go out of your way to help them instead. It always comes back in a good way.

Office politics sucks, but it's the only way to stay sane in these environments.

Sometimes you have to remember that the friction is because they just don't know any better, or because they do no better, but they're too busy or too tired to create a better system. They are all dealing with the same nonsense, and it is soul crushing.

In my current job, I had managed to skirt a lot of the corporate nonsense for a long time, but we merged with a company that had a very by-the-book culture, and my manager had to resign for health reasons. Things have been downhill for the past few years, and if I could get a job making the same at a company that didn't do all that, I would probably take it.

..but that brings me to another point, I loved that small company, like family. Then One day a bunch of my friends were fired for personal/political reasons. I left a year or so later, and a year after that they sold the company, and a year after that the new company closed the office and just kept the data center. The point is that bigger companies are more stable, if you have a mortgage or kids it's really no choice.


👤 Qworg
To sound a slightly different note:

Yes - there's lots of friction. Bureaucracy is inevitable, given the cost of turning the ship/the risk level if something bad sneaks through.

That said, there is a ton of potential leverage at BigCo - the scale is extraordinary.

It is a trade - you get a far bigger lever, but it takes way longer to pull.


👤 kitd
What you call friction is usually a symptom of process. BigCos use process to protect themselves from stress and failure. When things go wrong at BigCo, it often hits the news and can affect the livelihoods of a large number of people and cost millions. Process is designed to stop that happening.

In contrast, few people notice if SmallCo's website is down for a while or a bill isn't paid.

Having worked at both Big and SmallCo, the stress/salary rate is usually much lower in BigCo thanks to that process, so, assuming you want to carry on working there, embrace the process and understand that (most of) it is your friend.


👤 naet
I'll trade you responsibilities.

I work at a small agency and often do work for non-technical clients, or get hired to work on a completely unmaintained legacy system. I end up owning nearly everything myself, and it's a massive pain in the ass.

You might be frustrated with the process of getting a new VM, but you also don't have to own and maintain all the VMs by yourself. I bet you won't have to personally manage the billing of this VM directly, or monitor for any changes in usage or pricing, etc, but somebody in your organization will.

I often have to own and manage the SSL certs on dozens of unrelated properties... and own and address all the front end issues in every framework... and all the ci/cd issues for every legacy codebase... and anything else I want I gotta do. I also have to properly research all providers and price tiers and budget it all for my clients and then sell them on any service I consider worth it.


👤 ctvo
> Anyone else dealt with this? > Anyone have any type of jobs where friction is minimal?

Tactically:

Get better at navigating it. Is there a person hitting a button somewhere? Get to know that team well. Make it easy for them to approve your requests by being exemplary. Automate the process on your end. I've written scripts to fill out forms and open sourced them internally at large companies.

Strategically:

Understand why it's so filled with friction at a systemic level. Legacy organizational structure? Lack of engineering resources on the platform teams? Try to suggest sensible, iterative fixes. This only works at some companies, others are so tribal that another team approaching them with a low effort / high return suggestion is seen as aggression.

It's much more rewarding to attempt to solve these problems and be an owner than to go into ugh whatever mode and passively take it. It's also better for your career in the long term.


👤 wedn3sday
Part of the difficulty you're dealing with is just learning how a new system works. There are reasons for this friction, you really dont want your inhouse CA to mess up and issue an invalid cert, you want to make sure that each of your several thousand VMs are running the correct up-to-date OS and are on the correct hardware. Once you've learned how to negotiate the new environment a lot of this "friction" will be less painful.

👤 aleksiy123
So far I have found the key to being efficient in this type of environment is to have many things on the go at once.

You are used to things having few dependencies so you can focus on one task and take it to completion. Now there are many dependencies and so you have lots of downtime. You can use this downtime to set other things in to motion.


👤 loandigger
Keep this in mind:

In a large organization, NO SINGLE PERSON makes a decision. It's THE PROCESS that makes the decision. And THE PROCESS takes time. One of the greatest skills you can learn at a large organization is identifying, bypassing and avoiding THE PROCESS. It can be done, you just need to figure out how.


👤 llaolleh
The startups and small companies are playing offense - they are trying to get their foot in the door and hunting.

BigCos are playing defense - they want to maintain the status quo and not kill the golden goose. They've built a castle to protect it. It's only natural that they will add friction everywhere for the fear of killing the damn bird.

Relax and coast for a bit, and jump to a small company. But like others have said, you will work more hours, and they can be insanely high cognitive load for other reasons.


👤 riskneutral
> Anyone else dealt with this?

I imagine that the majority of white collar workers are employed by large corporations, and so the majority have to deal with this.

Given the number of startup layoffs happening, I imagine a lot of people will be having their first experience with large corporate bureaucracy.

> To get anything done is emotionally exhausting.

Onboarding as a new hire is usually the most frustrating period, because you need to request a lot of things and can't get any work done in the meantime. Eventually you have enough access that you can at least do work while waiting on other requests.

One thing that helps is knowing how to use the corporate tracking system to know which individual specifically the request is stuck on, and then relentlessly following up with that individual via email until they approve your request.

You should also track your tasks and identify the ones that are stalled because you're waiting on a request, and then regularly show the list to your manager (along with your follow up efforts). That way you have a solid reason for not getting those tasks completed.


👤 acomjean
I've been at big companies and really small startups. I've tended to alternate between them.

My Big Company experience was they broke us up into smallish teams (6-20 people), which made us work more like a small company in many respects. There was a lot of process, but it was actually a good discipline to have. (Its always startling when I started in academia the "code repo" was CVS and not hardly used..)

My big company code was more thoroughly reviewed and frankly better.. I learned a lot from those reviews and being given the time to design before coding. Having to do it all at a small company you learn a lot too. Big companies actually measured productivity, and had a processes.. Much less input into what we were going to do.

Though it wasn't all great: I was put on the "Morale Committee" because morale was low. This didn't help my Morale, but we did get the company to do some ice-cream socials.


👤 sdoering
Warning: personal rant first, maybe helpful point of view at the end:

rantish story

I work at a BIG Co (think 700k+ global employees) and we work for other Big(ish) Co as more or less data & code wrangling consultants.

How did I end here? I worked for a small(ish) agency with around 500 people. We moved fast, we build cool stuff, we already to worked for the Big Companies and Banks in our market (Germany). We were at a point were quite a few more formal processes would have been necessary to put into place to fulfill compliance regulations of different markets (think banking or automotive - these require a lot of stuff in terms of compliance from their vendors).

But we got lucky (?) and bought because BIG Co was not able to build their own agency - so they bought a lot of agencies to build a new one.

In the "good ol' days" I knew whom to ask to get anything done. There was an official process and the ones in the know knew how to navigate the short cut. Ask the right person, receive special treatment and be on your way flying fast.

OK - it made the process longer for the lowlies who didn't know the right people. And that is exactly the problem. There already was a two class society of workers. Because we already were too big for "no process" and too small for BIG Co process (and that drags us down nowadays). But the people following the process unbeknown to them got blocked by us knowing the shortcut.

So yeah - it feels shitty and slow and probably as if someone wants to gauge ones eyeballs out with a hot branding iron.

maybe helpful POV

But think of it like this:

Try to transport a 20 foot container on a high power speed boat. The speed boat will be way faster, more agile, more flexible. But if a somewhat bigger wave appears it will crash. And it will also not be able to deliver that much impact (containers) as the big ship once it arrives in the harbor.


👤 jacobyoder
Lots of advice of "just grin and bear it", and "get along"... etc.

IMO, it depends on the friction. If this is just your own expectations not being met... you can adjust those.

If, however, you have other people on your team or people you answer to expecting things to be faster, but other parts of the system are working against you... that seems to be a recipe for constant pain/friction, unless/until others leave/change (which you generally have no control over).

Things that should take 2 hrs taking 2 weeks are annoying/frustrating on their own. If you have other people setting deadlines for you which don't align with the processes you're tied to - that's a whole other level of pain, and it might be worth trying to find someplace a bit less internally conflicted.


👤 bigtech
There's a way to work in such an environment and not go crazy, but it will take time to get used to it. Think of it system with big asynchronous methods. You need to arrange your work to put in the slow running requests early, then focus on other things while waiting.

👤 porcoda
I’ve faced this at multiple jobs at orgs of different size. My solution was to always have more than one thing available to work on so when one task bogs down in the mud due to organizational processes, I can go work on something else until the blocked task makes progress.

If you don’t have alternative things to do while things block, you might see about getting other things to do. Or, adapt your work style to minimize the number of times you run into these obstacles. The people I see get most frustrated are those that don’t adapt to the system and get frustrated when it doesn’t work the way they want it to. Adapting may be annoying and may break some comfortable habits, but in the long run I find it to be the route of least angst.


👤 2OEH8eoCRo0
Days? It once took me 4 months to have a package manager installed that was blocking a project. Defense software engineering is a whole other level of misery.

I left defense and I'm now in a BigCo. and loving life because things only take days at most. Appreciate what you have?


👤 no_wizard
Big Companies don't often have the same speed in terms of cross departmental (and sometimes cross team) efforts. Anything that basically splits between your immediate team and everything else has process involved, for many many reasons, one of the biggest being work tracking (Jira Tickets and the like) so that everyone else's time is accounted for to handle that task.

Once you realize its all about work tracking, basically, it becomes either more of a hurdle or easier to understand and manage, but thats basically what you're up against here.


👤 smeagull
I've done this, except it was big government.

Pick your battles. Not only is it exhausting to make everything a fight, but people will appreciate it more, and be on your side more, if you pick only the important things to stand your ground on.

Make friends. There will be people who feel the same way, finding them is usually good to get things done quickly. It can be important also to break down the team barriers. Requiring a different team to accomplish something is a big part of friction, and knowing individuals in those teams that get stuff done can help. The way to get them on side is to make their jobs easier, and again picking your battles and compromising are good ways to do this.

Get buy in on big changes. So this is different from making friends. You need to develop people that agree that a change needs to happen, and on a way of making that change. I'd start small, with convincing Individual Contributors first, particularly if there are very well respected ones. Then seeking out management and building the case that the changes will improve their situation. This can be a slow process. Managers will appreciate it if it can seem like their project, and once it does, you'll have their backing because they don't want it to fail.

All that said, there are certainly places where this sort of friction is minimal, usually remote devops driven start-ups or consultancies.

I'd use buzz words also, to help make your case. The whole DevOps shift comes with some principles that you can wield to make the case that infra changes should belong in the team, and CI/CD and similar require that VMs (well, pods really) be spun up easily, and from an API.


👤 valbaca
> I get great satisfaction at work out of accomplishing things and this is just rediculous to the point of making me dislike working.

Welcome to BigCo. That's all there is.


👤 drachun
Sorry to piggyback on the question, but I just got an offer from one of those big companies.

The starting date is fast approaching, but offer is contingent on the background check which hasn't come in. The third party company hired, generated their background report over two weeks ago, but the hiring company hasn't communicated their approval. The check had some warnings, because I worked for small companies that have been resold since, and nobody answered them when they called.

The recruiter who works directly for the company has said they will get back to me soon, but nothing happened yet. As we got into closer than two week from the scheduled start date, I asked to push the hiring date.

However do I just keep pushing the date until background is done?

I can't see myself quitting current job until the background is signed off. Or should I?

Should I just like somehow do two jobs (I don't think I mentally can)? Until the background is done?

I've been at my current company for several years, and I can't risk having no job (quit, then new job finds something they don't like), so what do I do?

I'm fine waiting for months and pushing the date, but will they still want me?


👤 javajosh
When latency increases, concurrency increases. This means extra pressure on you to create personal systems that help you deal with more concurrent processes, and systems that help you follow up on long-lived processes. Your a process who's been living in a synchronous, snappy world, and now you live in an asynchronous, slow world. Your throughput can be high, but you need different tools.

👤 throwbigdata
All these people telling you to coast are right for 80% of the population.

If you have great ability, do t squander it. Get another job where you can be more effective. Find your passion and your fortune will likely follow.

I eschewed advice like the others give, and I didn’t have to work after 35. Yes I got lucky but I also worked hard and failed and got back up and found a place to succeed.

Big companies are mostly for drones.


👤 aadilmaan
As an organization scales and grows, the layers through which decision making is required inevitable increase. Now, that doesn't mean you have to accept this. You have found yourself in an opportune place where you can have impact and reduce some of the overhead. BUT, be warned, you can never fully eliminate overhead. That is the cost of growth and BigCo status.

👤 rdoherty
This sounds suspiciously similar to where I used to work, and was one of the reasons I left. Every project required working with 3-5 other teams for either help or 'alignment' (aka approval). Getting a new service live required many tickets, meetings, manual edits to configuration by other teams, etc.

I think large companies with low friction are the exception, not the rule. It takes MASSIVE amounts of work to build the infrastructure that thousands of engineers need (or be willing to spend millions of dollars for SaaS). I can think of only a few large tech companies with low friction (Google, Netflix, Meta), and they spend a lot on tooling.

There's a few ways to deal with it. What I noticed was that the 'effective' engineers would avoid the standard process and be 'noisy'. They were comfortable asking directly via chat or in person for what they wanted instead of filing tickets or having meetings. They used their relationships (which they did work to build) to skip the line and save time.

You also need some kind of perspective change at large companies. You've moved from rowing your own boat to a battleship. Process is there for protection from rogue employees wreaking havoc on the system, not to make you move fast. Think of it from a manager or platform team's perspective. How do you manage over 1,000 SSL certs (and renew them)? Prevent VM proliferation that needs to be accounted for and secured? Certainly it can all be automated, but at a BigCo's scale, that is a 4-5 person job, and that team is competing with other 'revenue generating' teams for headcount.

I would also recommend to give it some time. You will adjust and learn over time how to work more effectively. I noticed after a few years that I could grease the wheels a bit because I had spent time cultivating relationships with various teams.

Good luck!


👤 pphysch
At SmallCo, scales are small enough that most of the information systems exist in wetware. The boss knows each employee personally and where they fit, more or less. You or the VM guy knows that the VM resources will not be abused. Relatively little is defined in software-backed protocol.

At BigCo, there is a lot more protocol, because there has to be. The boss is physically incapable of knowing every employee personally. You are physically incapable of knowing every possible point where VMs might get used or abused. There needs to be a protocol to authorize these requests and keep a record of it.

This is just the way it is, and you should understand and accept it if you want to keep working in these environments.

If there are BigCo's that seem to work better, it's because they spend more resources on improving their protocols and processes, not that they magically bypassed the inherent complexity of running an organization of 10,000 people.


👤 analog31
I've worked for LittleCo, and now I work for BigCo, a F100. I outgrew the LittleCo. There was literally nobody I could talk to about my work, and doing stuff at a higher level was probably threatening to a business with no succession planning.

Sometimes I amuse myself by imagining things from a management perspective, which I'm supposed to represent. I'm a physicist, not a software dev, so I don't know VM or SSL, in their particulars. But still, if the company has a process for making those things, in a way that's manageable and secure for the business, then it's a step towards automating them. From that perspective, the tasks that you did at LittleCo are seen as things that could, if not should, be automated. Or delegated.

One comment in this thread mentions BigCo turning people into drones, but viewed from a couple levels above you, doing work that could be automated or delegated, is drone work. Each "side" has its own view of what drones are and do.

It may take some effort, or even just patience, to get over the annoyance of "friction" that doesn't seem to bother the higher ups, and focus on the things that they care about, or you care about, or both. After nearly 25 years at BigCo, the friction actually has a negligible impact on my work. I avoid taking an emotional stake in stuff that isn't valued when viewed from above. What I take away is the learning that's of more widespread or lasting value.

Or you might like LittleCo better. In Man and Superman by George Bernard Shaw, two people are in heaven and hell, respectively, and neither one can stand it, so they agree to trade places. A couple things I've liked about BigCo: 1) It's unlikely that I will ever be the smartest person. There are world experts in my skill areas, whom I can talk to. 2) They've managed to stay in business, whereas not being able to stay in business was why the company had to sell out to BigCo in the first place.


👤 Tyr42
I mean, I have a similar experience, where I can be demotivated because I took a summer to deploy a website which has one button on it, and a service to write a bit when the button is pushed.

I felt like I could have built out the project in a weekend with php, and I don't even know much php.

But then, in the "productionalization step" there was a lot of leverage from being at bigCo. I could get it internationalized super easily. I got security, encryption keys, done. I got a hostname with a few clicks. I got redundant deployments, and separate release / dev environments. I have metrics and monitoring. My DB is backed up and region sharded and all kinds of stuff I don't care about. Users can delete their accounts and my db can get purged.

So building the "demo" version felt a lot slower, but transitioning it to the production version was a lot faster than me working on my own.


👤 ge96
Felt the same at an org (~$30B) I worked at (non-faang). Ended up leaving after two years, did a startup (greenfield/build whatever for mvp, fun/learned a lot/sweat-equity) that didn't succeed, broke, got back into regular job.

For me it was the SDLC part... as in a seemingly small feature would take 2 weeks to get done because you needed to: create a TDD read me that described what you were going to do, how, unit tests involved, side effects, etc... then write the code, unit tests, PR, write more integration testing, PR... get it into a package to be released. But later on I realized that is standard/how to maintain large applications.

Also the other thing that is not as fun is your job is very small/specific I found at the first place I was at. I didn't touch the build pipeline, didn't work with containers, I just wrote front end code basically.


👤 jeffwask
This is why I have decided to stay focused on smaller growth phase companies where I feel like my impact is wider and I can drive change and see results.

I think it's important for everyone to experience different types of companies different roles, and find a space where you feel happy and successful.

The spot may change over time or it may not.


👤 mustardgreen
I worked at a BigCo after a bunch of small ones, and got totally stressed about the friction as well. Took me a couple years away from the experience to realize that slow processes can be a great thing in their own right because it gives you a lot of time to think about your own interests in and outside of coding.

👤 _3u10
Yes, bring the hacker ethos to the system. You’re not fighting code you’re fighting the system.

Need that SSL cert? Request it a month before you need it.

Need that column in the table? Request it long before you need it. Didn’t end up needing it? Sell it to another team, sure it might not be named what they want but they can use it today.


👤 foobarian
Perhaps not all BigCos are the same? Mine is by no means a startup but stuff like internal SSL certs and similar are mostly self-service and instantaneous. On the other hand if you wanted to delete an unused parameter on a revenue-impacting code path you'd be in for a fun couple of quarters.

👤 matt_s
I left BigCo that was not in the bay or tech and am at small_co (<500 people). I think its just a matter of the size of company and make-up of engineering org.

If work is broken out to specialized teams (SSL certs, scans, security stuff - team A, VM's and storage - team B, networking/firewalls - team C, etc.) there will be friction, doesn't matter if its some cool company or some boring Fortune 500 company making farm equip.

You should be able to figure out the scale of friction with interview questions like "say a new project spins up to build a web+mobile app/CRUD/SQL and needs servers - walk me through how many teams+time it takes to get servers up and running where a dev can deploy code"


👤 mattbaker
It sounds like it’s pretty early, I’d give it time if you think you can hang on.

I do think it’s worth recognizing that any big company used to be a tiny company, and the road to “big” was probably long and complex.

The growth process from small to mid-sized, and mid-sized to large, comes with a lot of challenges that you may have never witnessed if you’ve been at smaller places. Some of the high-velocity/low-friction approaches to things you might miss (for good reason) become a nightmare at scale. Some of that friction might actually be healthy.

In that regard it’s a lot like jumping into a codebase that’s been around for many years. If it’s your first time some of the code is going to look just awful, but you don’t know why yet.

- maybe pressures at the time meant that code was the right call back then, but it’s not now

- maybe that code is the right call and you don’t fully understand the problem yet because you’re brand new

- or maybe the code really is just bad!

Either way, you can’t really know until you spend some time with it and gain context about the problem domain and the system’s history.

That said, your perspective as a new hire from a place that moved faster is really valuable. I hope you take some notes about these experiences and let them collect for a few months as you gain more context. A good manager and leadership chain should be interested in what you have to say! The more time you spend there the more you’ll be able to flag the areas that seem the best suited for improvement. That kind of stuff can turn into promotion-level accomplishments really fast if you have the right support.

FWIW I had no patience for big companies early in my career and I’m happy I left for smaller ventures, it just wasn’t what I was looking for whether or not the “friction” was justified. These days the pace and process of larger (but not massive) companies suits me better, and I can see some sound reasoning behind some of the things we do that would look like bureaucracy to someone coming from a startup.

Worst case scenario you’ll find out the BigCo life just isn’t for you, at least for now. It’s sweet you’re getting paid to find out :D


👤 voidfunc
Part of the beauty of BigCo is you are being paid to deal with the inefficiency. You have two options sit back, rest and vest or try and streamline things (often a political rather than technical endeavor).

Both can be lucrative journeys.


👤 dirtybirdnj
> The one thing I'm noticing is that it's miserable to work here because EVERYTHING has friction and takes days to get done

I worked at a large media corporation with an office in times square NYC and it was the most unprofessional and demoralizing experience. The level of CYA behavior was mind blowing, it was like interacting with an alien race wearing people suits.

There are people that get off on this kind of environment and thrive in it. They don't care how corrosive it is to the people forced to tolerate it for survival.

It never gets better, get out now before they start inventing KPIs to shame you into submission


👤 gadders
Unfortunately, a lot of big orgs build up process as organisational "scar tissue" after someone has eff-ed something up. It is also used as a way to compensate for hiring cheaper/lower quality people.

I work at environment with a lot of peocess. There are a few approaches you can take:

1. Try and get some consensus of support from your peers and/or managers for improvements to make the processes less onerous

2. Do all you can to foster good relationships with the people in the various processes. You would be surprised how much things can be expedited if you're on good terms with the gatekeepers.


👤 rootsudo
Sit back, and enjoy being paid to do nothing. #Friction is accepted at #bigco so while you can enjoy speed, they probably don't.

The company is paying you to work to their schedule, and unless you're working on "efficiency" or workflow improvement - just take it as it is and keep on top of it with your calendar.

Yeah, it's silly to file a ticket for a self signed cert, but it also puts the onus and responsibility on that team ,not you. Yes you'll miss out on small wins like that, but really - it's a cert in the end, and once you raise it up - let the team deal with it.


👤 lhorie
The big difference between large companies and small companies is that large companies prize specialization. The way to thrive at a big company isn't to be the person that sets up the entire stack for the company, it's by finding value in deep obscure corners of very specific niches and smoothly rolling out that value to orders of magnitude more people than you would had impacted with a package of full stack decisions in a smaller company.

👤 slipwalker
> Anyone else dealt with this?

welcome to corporate world, AKA the meat grinder.... it's all about: "just because you( your work, actually ) are necessary, doesn't mean you ( your work ) are important". Just collect the checks ( i hope they are fat ) and "go through the motions". By the time you grow really sick of everything, let's hope you have saved/invested enough money to be really close to (early) retirement.


👤 coding123
Friction is usually caused by reactive policies. Pain causes reaction. Pain like a customer complaint, or accidental data deletion. It usually causes red tape or people that got chewed out from allowing certain changes. It's good and it's bad. It's obviously good because there will be fewer customer complaints. But it's bad because the product does not evolve fast anymore - which may cause fewer customers long term.

👤 mikesabbagh
I see it as a game. The startup environment is level 1 of the game. you learn about VMs and how to start them. At BigCo, this is level 5 or 10. Nothing is easy, to start a VM you have to make sure your system is compliant, the ip is restricted from some countries, the linux version is LTS and bla bla bla

To keep your sanity, make sure to have a personal side project where you can do things fast


👤 ardit33
Accept the fact that it takes a lot longer to do anything at a big co. Also, accept the fact that whatever you do, is not crucial to the company as you are just another engineer out of thousands. Hence, why the rush?

If you feel creatively constrained, try to do a fun project so you can learn new things. But don't through away a good job just because it takes long to do anything.


👤 yawnxyz
Is this about the same for BigTechCos as much as BigRegularCos?

I've done work for big insurance companies, "tech companies" like Verizon, or big soda companies, and they're as high friction as you'd expect. Somehow I imagined BigTechCos to use better tools and be nimbler on decision-making, letting employees make their own decisions without as much oversight.


👤 Simon_O_Rourke
Not only does everything have friction, most of it is by design to keep other less talented people in jobs.

If it's truly unpleasant, then try to be that guy who can "make a few calls" and get stuff pushed through a small bit quicker. Pander to the egos you'll encounter, hop to their beat until you get things done because fighting it will just end up taking longer.


👤 borroka
I work for a big US corporation. Every job or project is slow to get approved and staffed, and often of little importance. They pay me well and as far as I understand, the company does not fire people and is unlikely to lay people/departments off without at least a few months' notice.

The first 18 months were tough. I came from one of the best tech companies in the world, one of those included in the famous acronym and starts with A and is based in Seattle, and I got quickly frustrated in my new job with the slowness, the incompetence, the politics. And people didn't listen to any of my ideas, how rude!

They would tell me, "yes, good idea," "of course we'll do it," only to realize that no one thought it was a good idea, if they even listened to what I was saying, and no one was working to get anything done.

Then I understood the situation and calmed down. This is the way things work here, I told myself, and nothing I do is going to change anything in such a large company.

Now, some, maybe many among the HN crowd would tell me to move to another job, to find a place in which my ideas, assuming they make sense, are respected, properly valued, where promotions don't happen mysteriously but they reflect the value that the individual is bringing and will bring to the organization.

But why?

Why should I give up on a life that allows me to work little, take plenty of official and unofficial vacations, explore avenues of creativity like writing, painting, and cooking, build up my body by working out at the gym and tan properly by laying in the sun?

Why would I want to work again for a demanding machine in which I am a cog like 95 percent of my stressed, overworked and largely unhappy colleagues?

Why would I want to spend the time I can now devote to reading fiction in the summer sun, listening to great classical music while cooking, preparing instead for interviews that would put me in front of people who, at my advanced age, want to find a reason not to hire me because I am not as smart as they think, wildly overestimating their quality, that they are?

A reasonable question is: well, when this idyllic situation will change, because nothing convenient is forever, what are you gonna do? I guess, if I need, I will start working "seriously" again. But not today, today I am reading a collection of short stories written by one of my favorite Japanese authors.


👤 icedchai
I ran into that at a previous job. I'd need permission just to get a docker hub repo created or set up an S3 bucket. Too many layers of approvals. I came from a smaller company background where I had full authority to do anything I needed. I couldn't stand a lot of process and overhead, so I quit and went back to a smaller company.

👤 zwischenzug
I wrote a post on this topic: https://www.google.com/amp/s/blog.container-solutions.com/wh...

Based on moving from a technology company of 700 to a bank of 120000


👤 datalopers
You're not being paid to accomplish work, you're being paid to not work for a potential competitor.

👤 sto_hristo
That is what you get with already established projects and teams. And it's only the beginning; legacy code will follow, along with horrible styles and ancient practices, and it will be much worse.

That is why I love startups. I gotta find me a nice startup in need of a sr. full stack engineer with backend emphasis.


👤 yakak
Yes. I did things like create custom scripts to work more effectively with many different drafts in the revision control we were using. This allowed me to have more than a dozen projects going at a time so there was always something I could switch to that wasn't held up by the friction.

👤 joaogui1
It has friction because you're not working in a vacuum, pun intended. The more people you're working with, the more friction/overhead there is. The trick is trying to automate as much of it as possible, and to batch what's impossible to automate

👤 pechay
Explore the limits of your responsibility and find out where you can make your life easier. Find allies in other parts of the business; politics are a fact of life in any big business. Carefully choose which hills are worth fighting for.

👤 starwind
I've always done well at big companies because I'm good at going around and talking to people trying to smooth the friction. Consider looking at the friction like some detective work and the opportunity to get some exercise

👤 itronitron
It's easier to ask forgiveness than beg for permission. And if you look at the rules and systems closely enough you can find an assortment of gaps through which you can operate without having to ask for either.

👤 pulketo
Not dealing, but living with this, here in Mexico is a common practice even in small companies, everyone seems to be trying to "not doing". I'll read all the comments about this.

👤 sys_64738
You are a cog in the machine whereas you are often the whole machine at small shops. Working for big companies allows you to become anonymous. There's usually no hiding place at small places.

👤 mbrodersen
This is standard practice for all #BigCo. That’s why I will never apply for a job at any #BigCo. I love creating things and solving problems. #BigCo routinely makes that almost impossible.

👤 knowe
I do not have a job at technology corporations yet but i think it just takes time to you to learn the work and get set emotional to not let things around you dictate how you feel.

👤 sethammons
I rode a company from 30 people to 7000. Loved it. By the end however, I had to seek other opportunities with a much smaller company because of what you are talking about.


👤 spaniard89277
Not gonna lie, I work for a big ISP and I've given up on improving anything. At least I guess you're handsomely paid, which I can't say.

👤 tonfreed
I also work at a large company, I learned to have about 3 things in flight at all times because there will inevitably be a blocker on everything.

👤 brundolf
Main reason I've always stuck to small companies. Some people are fine with that BigCo environment, but some of us just need something else

👤 kosma
Welcome to the real world. We don't have cookies, they were cut as a part of a cost saving package signed by the corporate.

👤 msarrel
It's not your job to fix it. Keep your head down, get your work done to the best of your ability, be successful.

👤 sorokod
Friction is just something that comes along with the size of the org. It has matching lubricant - politics.

👤 BurningFrog
This is why I work at ~20 people startups.

Occasionally, these jobs end suddenly, but I gladly accept that risk.


👤 antisthenes
Enjoy the idle time while you have it. It's better to have it rather than not.

👤 oceanswave
What happens when you try to go fast through friction? You only generate heat.

👤 polygotdomain
I had worked at smaller shops, then took what I thought was going to be a next big step at a company who's mascot is a reptile. Friction EVERYWHERE. The TLDR was that I left after 5 months and that company was the most unhappy I've been in my career.

When I started, I had a single monitor machine that didn't have Visual Studio installed. I was told I'd have to wait till the next budget cycle for a second monitor. I didn't get Visual Studio installed for 3 WEEKS and no one seemed to care. I'm not sure why they thought it was fine for a six figure developer to basically be sitting idle for 3 weeks, but that attitude was basically the norm.

When I actually got coding, everything was road blocks. Policies and procedures everywhere. No one had time to explain anything. Everything had to be submitted through a ticketing system. It was just bad. Daily standups where I just made up BS because they'd barely given me anything to work on, and no one seemed to care.

The thing was that when I looked forward at my team lead, my manager, etc., who in theory would've been my next steps at the company I'd have to jump through ridiculous hoops just to get into those positions, and they all fundamentally had very little power. They were still at the bottom tier middle managers, and the BS policies, procedures, and technology decisions all got handed down from managers above them.

I couldn't deal with the environment, but from my coworkers who were there, I got the sense from them that they just accepted things. Progress was slow, jump through the hoops you're told to jump through, but by in large, it was steady well paying work that they could just check out at the end of the day. No harm in that, but it just felt like my career would just stagnate there, and I'd find it very hard to get out once I got comfortable with it. I planned on sticking around till 6 months, then looking. I wound up starting to reply back to recruiters earlier and was out in 5. Best decision I made was leaving.


👤 rs999gti
> Anyone else dealt with this?

Yes, I too have worked at German owned companies


👤 kwertyoowiyop
Read “Orbiting the Giant Hairball” and see if it resonates.

👤 rjh29
I've never worked for a bigco. I work for a 100 person company and enjoy being able to self-start a project, create VMs and other resources and deploy it myself! Not sure if I could get used to that.

👤 ryandrake
There was another thread[1] a few months ago with a very similar question. I'm not going to cut and paste my reply[2] here, but it applies to this question too I think. TLDR: There are very good reasons everything has friction and requires approval--they're not doing it just to be ridiculous.

1: https://news.ycombinator.com/item?id=29639486

2: https://news.ycombinator.com/item?id=29644628


👤 idoh
tl;dr - work at smaller companies in less regulated industries

I'm a PM for security at a CI/CD company, and adding "friction" comes up as a feature request in 50%+ of calls with customers and prospects. As companies grow to a certain size, as a practical matter you can't trust employees to not do bad things. Also, in order to win more business you have to comply with more regulations. Access controls, separation of responsibilities, etc.

Restated, one person's friction is another person's compliance.


👤 is-is-odd
How big is the co?