I have a lot of friends and former colleagues who are at Apple and you're wrong about the 'go home to your family.' At least the friends I have (mostly nerds admittedly) are routinely in the 60-70 hours mark (have only one exception and he's worked at Apple since the 1980s). But they seem to like it.
> It is not one of “Let’s conquer the world and become bazillionairres while we’re at it” — the Google culture — which is more prone to eventually jumping ship and creating a startup.
This feels more like Google propaganda. My impression is that google folks seem to work a lot less (long hours its true, but less) than the Apple folks. Unlike Apple I only know nerds at google -- no marketing or business folks, so it could be different.
But of my google friends there are two groups: the übernerds who get to work on whatever they like (basically research) and they seem to have a lot of fun. A bunch of them are former colleagues from PARC and MIT, so they are doing the same kind of work we did years ago -- probably Microsoft research is the same.
The rest are doing product work of some sort of another and none of them seem particularly happy. A lot of them are on the market (I have hired a couple). It feels like Google has reached the microsoft phase: they have two real cash cows and are struggling to find more. Product managers have a lot of sway. They aren't really organized like an effective business.
Apple went through that mode and was within a few weeks of dying. Luckily they debugged themselves. My Apple friends, even those deep in the bowels of tools or drivers, amazingly are still super excited by the Apple products (I guess they would have given up by now if not).
I think the primary difference may come down to a culture of secrecy. Openness breeds cross fertilization, couple that with very few restrictions on Googlers in working on side projects, open source，and collaborating outside Google and it it's easy to see why so many Googlers are lured away by the allure of startups.
As for Googlers being unhappy with their projects, there's two answers. One, google culture permits challenging your management and product vision even as far as calling out VPs, so people here are constantly voicing their criticisms instead of falling in line. That can breed dissatisfaction especially if your criticisms are later proven right.
The other is that Googlers switch products often when they get bored. It's easy for people to get unhappy when you switch from development to maintenance. I think this is very healthy，enduring people working on a product are enthusiastic. If your jet collecting a paycheck while dreaming of more interesting stuff better to go do interesting stuff.
The level of secrecy and compartmentalization in Apple sounds like hell to me.
Google is definitely more open in the way you describe, both in terms of collaborating internally and externally. "Googlers switch products often" matches my experience. The transfer process is easy, and hiring managers are welcoming.
The downside is that your team is constantly in flux, making it harder to build relationships or friendships. It is not healthy for a team to be constantly changing; it's better to have stable teams, where contributors can develop deep expertise and collaborative relationships.
At Apple, you have greater chances for meaningful ownership. Software teams are generally smaller, so your responsibilities are broader. Product direction is top down, so what you work on is more likely to actually ship.
Google's "bottom up" culture makes it easier to start up a project. But it also results in duplication, and a sense that the company isn't really committed to your product. My work at Apple mostly shipped, but my work at Google was mostly scrapped. It's frustrating to work on projects that are cancelled, through no fault of your own.
I wonder why we saw things differently? I stayed away from the big central codebase (you know the one), instead working in Android and Chrome. Maybe the bottom-up culture is more vibrant on the periphery?
AFAIK 20% time is dead, and has been for > the last 2 years. People only use it to try out new teams before transferring.
But I never did get access to the "other" codebase, so you know more than I in that respect. :)
I'm going to guess you're fairly junior in the profession?
The more time you spend writing code, the more you realize that most of your projects will never, ever ship. That's just how the gig goes.
And it's okay. As an engineer, you should be looking forward more to the journey and how much you'll learn working on that project than anything else. Once in a while, you'll ship and you'll feel pride knowing that millions of people are using your code, but that's the exception, not the rule.
Enjoy the journey.
Anyways, the way I see it, if I'm OK with my project being cancelled, I am working on the wrong project. We should not be comfortable with delivering results "once in a while."
Apple doesn't prevent you working on side projects, open source etc. It's just that you are working so many hours under tight deadlines that you want to spend time with friends/family during a spare time.
And Apple absolutely allows challenging management and product vision. In fact I was involved far more in product design that I expected to be. Every team is different but it is a relatively flat structure.
Just a correction, Apple does indeed forbid employees from working on side projects, including selling software on the AppStore and most contributions to open source projects. This is made very clear during the employee's initial (and yearly) Business Conduct training. To me it's one of the major drawbacks of an otherwise great place to work.
Most people fall into #2. Further, I found that many if not most of the engineers there are foreigners on work visas. Many are not that motivated or very good, and they are most concerned with playing politics and entrenching themselves so that they can stay on their work visas. This has helped to create a culture surrounded with politics and bureaucracy, even more so than other large companies I had worked for beforehand.
The Google name still has a lot of prestige attached to it, especially outside of the Valley. But word is getting out in the Valley about what a mess the company really is, and it's only getting worse.
I would go with a smaller company. You'll learn a lot more.
Can you elaborate on what you mean to say here? Is it that PMs have a lot of influence compared to engineers?
With the right top level executive strategy, Product Management can be leveraged for the greater good and keep the company's products fresh and exciting. However, when left to their own devices, they often shift focus towards their own self-interests to the detriment of their company's overall success.
Microsoft is often the most cited example, largely because of how the culture changed after Bill Gates stepped down from the CEO role.
Despite Apple's propaganda otherwise, I get the feeling from some of the things my friends say that the engineers have more sway over product development than Google's do.
foobarqux I hope this answer's your question too.
Not really, Bill Gates rescued them.
> Not really, Bill Gates rescued them.
Microsoft unquestionably kept them from dying at that point by giving them $150M. And probably it was a call from Jobs to Gates so I suppose you can say "Gates" instead of "Microsoft".
But my point was that foolish management got Apple to that point and they replaced that with a smarter management approach (and replaced a bunch of people).
Microsoft's cash lifeline wouldn't have helped them if they hadn't debugged themselves. Instead it would have simply have delayed death.
Apple had $1.2B cash at the time. It was symbolic, not substantial, for either party.