Eli5: Why do companies like Snapchat, Uber, Google, etc. need thousands of engineers when they’re product is already made?

277 views

I understand a good portion of them are there to work on new developments, but why does Snapchat need 5,000 software engineers for example? What do they do on a day-to-day basis? Why does Google need 27,000 software engineers when they’re website works fine as is and most of their products and apps have already been made?

In: 1

11 Answers

Anonymous 0 Comments

The product works fine because those engineers are seeking and solving problems and exploits all day long.

Anonymous 0 Comments

Once a company is established. The thing they focus on is acquiring new customers. Fuck the current products and customers. They just want more

Anonymous 0 Comments

Additional development, the same reason that any automaker keeps a design team employed after building and selling their first cars. If all you do is sell one thing, you’ll start losing out to competitors who sell something similar to yours, but slightly better. Software can always be streamlined or optimized. Bugfixing is also an endless process. And new capabilities can always be developed.

Anonymous 0 Comments

The products are never done. They are always working on the next update and next hot new feature, if they don’t someone else who does will happily take their customers.

Not to mention not every engineer is creating something to sell, many are just keeping the lights on and responding to problems.

Anonymous 0 Comments

Supporting old products can be a lot of work. There are bugs to fix, things to make more efficient, vulnerabilities to fix, etc. But a lot do these developers are working on new stuff. These might be new features for existing products or entirely new products altogether.

Anonymous 0 Comments

monitor user behavior to identify hackers and bots, find better ways to keep them out without inconveniencing legitimate users. That is pretty much a constant arms race.

Keep an eye on servers to make sure they do not get overloaded. Fix whatever caused the overload. New features create new ways for server to get overloaded.

Find better ways to show ads to users. Compensate for continued improvement of ad blockers.

Respond to customer service tickets are turned out to be technical glitches. Both resolving the issue for user who submitted a ticket, and preventing same thing from happening again, which requires figuring out how and why it happened in the first place.

Anonymous 0 Comments

Let’s talk about Google Search as it is the easiest example.

The website is only the tip of the iceberg, behind the scenes there’s is an insanely complicated system that is never truly finished – old issues get solved, new features get added, and that causes new problems that need to be fixed. All of that requires a lot of work.

That system does not only cover search in English. Google supports multiple languages, and that too requires works.

And on some markets there’s competition that tries to do search better than google does, which pushes google to improve, which requires work.

On every market there are people trying to figure out google’s algorithm and take advantage of it, which causes endless arms race. And that also requires work.

And that’s just search. But Google is not just search, they have a lot of different projects that need to be worked on, from things we’ve been using for years to experiments that might never be released.

Anonymous 0 Comments

Okay, Uber is an outlier here, but…as for the rest: they “need” thousands of engineers, especially software engineers for a number of reasons. Among those reasons are 1) development of new products and 2) protection of current products. In the case of #1, it’s not enough that they have the most groovy search engine ever devised. They want to own, control or manipulate everything you do online so that it all goes through them at some point. So, they develop new software, new hardware, and new strategies. Remember Circles? Remember a time before Google Hangouts? Yeah, without engineers, we’d have never had the failure of the first or the arguable success of the second. In the second case, engineers work to protect current services because, for all the thousands of engineers engaged in protection, there are (at least in Google’s case) a literal *billion* people who could potentially break that service on accident, and several thousand that are, at any given time, actively *trying* to do so. Engineers on both sides are constantly tried to find hacks, weaknesses, and exploits. On the “white hat” side, they work to counter those and on the “black hat” side, they work to exploit them. So, it’s a constant war of of hacker one-upsmanship.

Anonymous 0 Comments

Think of them like mechanics for a car. The car is already built but you still need people who can take it apart and put it back together.

Anonymous 0 Comments

Maintaining existing software is often a tougher job than writing something from scratch. You require engineers to fix bugs and implement new features.