Do we have any Apple alumni here to give feedback on how this process works, in practice?
It reads--and maybe just to me--as a work environment as miserable as it is decadent.
The amount of cross-pollination between good engineers doesn't seem that large, due to secrecy measures. The knowledge that your project could be killed off on a whim, and that you couldn't talk about it--this makes even some of the gaming sweatshops look downright friendly in comparison.
(EDIT: Don't just downvote, use your words. How is the environment of extreme secrecy and compartmentalization one in which you'd wish to work?)
Extreme compartmentalization prevents the main pain points of working in a large company, in my experience. The standard problems I see with development in large corporations are these:
2+ tiers of management make decision making slow. Large numbers of involved stakeholders encourage horrific design-by-committee. And middle management knowing what other middle managers are working on encourages petty infighting over who does what or who owns the superior product.
Extreme compartmentalization eliminates all 3 issues in one fell swoop.
Extreme compartmentalization basically makes each product like working in a startup again, but with the financial backing of a large corporation and a substantially lower chance of losing your job if your product gets killed. It seems like a win-win to me.
The secrecy aspect doesn't seem too bad to me, either: I could still pow-wow about technical issues pertaining to my product to those on my team, and I could still talk about my non-Apple projects off the job. My drive for self-promotion and e-fame isn't as strong as many coders I know, though - I don't get the urge to blog about every technical hurdle I jump. Maybe that's why I think this environment would be awesome while others don't.
One reason you don't read many ex-Apple employees talking about the process is that it's complicated, and simple soundbite answers are hard to come up with.
The culture of secrecy thing is greatly overplayed by the media precisely because of the visceral reaction that you display. In reality, if someone needs to know something, they can know it. If they need to reach out to someone with a specific skill set, the resource can be disclosed. The need-to-know policy is accepted and respected inside the organization because it works, but the key point is that it does work.
The amount of cross-pollination between engineering teams is actually very high. There are certainly areas where access to specific projects is constrained, but in general the culture is very open. Sharing of code and team resources rather than duplicate development is the norm, as is tight cross-functional integration between teams. At any given time you may not know precisely what your peers are working on, but this is different from not knowing who they are, or being able to talk to them.
I have a hard time seeing Apple-the-engineering-environment as either decadent or miserable. Apart from being a bit tight for office space and having rather too much carbon fibre in the parking garages, the company is incredibly focussed on doing the job and doing it well, which doesn't sound much like decadence.
Likewise, it's hard to see what's miserable about working within Apple. The company is always doing something interesting, and it's very pragmatic about it. Projects don't get killed "on a whim", they get killed because they're a bad idea, or they don't work, or they get shelved for a year, or three, or more until the rest of the technology catches up. If you are obsessed with shipping "your thing" that might be depressing, but if you want to ship something good, knowing that you aren't going to be chained to a turkey for five years just because some suit would lose face otherwise can be very refreshing.
As an engineer, working for Apple is actually pretty amazing. The company has very little of the management BS that is prevalent in other large tech companies. Most engineering decisions (how things should work) are made by engineers; many new features are the direct result of an engineer saying "what if we did this?", or "if we stack this and this and this together we could do that"; most of the engineering management team are ex-engineers and thus well-calibrated; the toolbox and scope for attacking problems in new ways are both enormous; "that would be hard" is not usually an excuse for not doing something; "that would be stupid" is usually an excuse for not doing something. Engineers, even new hires, have a very high level of personal autonomy and corresponding responsibility; your role is largely what you make of it.
On a routine basis, the stuff you work on turns up in real products that people use and love. If you actually enjoy making things, that's all kinds of awesome.
tl;dr: If you're considering working for Apple and the fear of being locked into a box is putting you off - that's not how it is.
This inspired me to respond because I had sort of the opposite experience.
Your work turns up in real products, but you really have no idea when - you might show up one morning and find that the stuff you were working on has been announced or released. You don't really know except for "reading the tea leaves" and obviously when they put out something like the press event invite from a couple of days ago. I bet no one in the Mac OS group knew that builds of Mountain Lion were being shown to journalists - they just came into work on a regular day and realized it was everywhere.
If you need to know something, sure, you can know it. But it's no fun not getting to know all the stuff you DON'T need to know. Maybe it just wasn't a fit for me - before Apple I was someone who would obsessively ask questions. All the time. Whenever I met someone new (personally or at work), I would ask their ear off because I love to understand in fairly specific detail what problems different types of people solve, how they approach their work, and what they like or don't like about it. Safe to say Apple beat this out of me. I like to understand how what I'm working fits into the bigger picture, and at Apple you basically have to be a VP to get that kind of understanding.
I also came in as an Apple fan first. I loved Apple and its products deeply, so once I arrived I was very interested to find out not only what was going on in my immediate group, but in all parts of the organization. Finally, I thought, the curtain has been lifted and I get to absorb and understand the tools and processes that power this unstoppable force.
No such luck -- and I think it's bad for them. I think it deincentivizes those employees who have been loyal followers of Apple for a long time and are really familiar with the ethos of the company over decades from making sure it stays on the right track and true to itself. Anecdotally, only about one in three current Apple employees really deeply understood or loved Apple before joining. I'm told that during the IT training in the first week, when asked "who here has used a Mac before?", only about half are raising their hands nowadays.
I would think curiosity is a good thing and something you want to encourage in your employees. Instead, Apple's system seems to encourage people who are just clocking in and out for the paycheck and don't care to know or ask how they fit into the bigger picture, or what the bigger picture even is.
tl;dr: The intense compartmentalization and secrecy at Apple are most painful for the people who love the company the most.
I'm graduating in a couple months, and just accepted an offer from Apple. I was extremely excited at first, but then I kept getting a bit more worried every time I read what people say about their secrecy. This perspective was great.
The one thing I still worry about: what is it about Apple that made you unable to post this under your real account? This seems like a very fair, honest, and non-offensive description.
I don't have a 'real account' to post from, or any desire to associate any comments I might make about working at Apple with anything else I might choose to say.
In general, the company prefers to set the message itself, rather than trust to the vagaries of personal eloquence and interpretation. For myself, I'm not sharing anything here that you wouldn't expect to hear in an interview if you asked the sort of questions that are being raised here.
Congratulations on your offer and acceptance. Honestly, don't put too much stock in anything you read about working at Apple - your experience is going to be unique, and the worst thing that can possibly happen is that you'll decide it's not for you and move on with an excellent first slot on your resumé.
To *_95129 above; I have a slightly hard time accepting that you really had no idea when (or if) your project was going to ship. If there's one thing that every software team knows, it's what train(s) they're shipping in.
To be honest, if you're the sort of person that expects people to tell you things you don't need to know, you're likely to be the sort of person that wants to pass on all those things to other people that don't need to know. That may work elsewhere, but it's not a good attitude fit for Apple.
As for the bigger picture; obviously there isn't a simple answer there. Many pieces of various big pictures are completely out in the open. Others are kept under closer wraps until they're ready for the usual reasons. But it's really not the simple, bleak story that you're telling.
It reads--and maybe just to me--as a work environment as miserable as it is decadent.
The amount of cross-pollination between good engineers doesn't seem that large, due to secrecy measures. The knowledge that your project could be killed off on a whim, and that you couldn't talk about it--this makes even some of the gaming sweatshops look downright friendly in comparison.
(EDIT: Don't just downvote, use your words. How is the environment of extreme secrecy and compartmentalization one in which you'd wish to work?)