You work on things that ship to billions of people.
You can work on very challenging and interesting technical problems.
Individual contributors tend to be pretty strong, knowledgeable, and willing to share better ways of working.
There exists a vast vacuum of politics, driven by the decision-making of already rich directors and executives who haven't directly engineered or engaged with users in well over a decade.
Decisions get made by "experts" or "experienced practitioners" that are divorced from the realities experienced by users.
There are often impossible deadlines, which leads to software shipping that is implemented well below the quality Apple and its customers expect. Shipping is prioritized over quality, and you can get a six-figure bonus merely for crossing the finish line, quality be damned.
Apple really needs different leadership in Software Engineering. Craig is well past his prime. Directors and above should have way less input on the end product, being that they're supposed to inform strategy and quality, not direct product decisions. The number of projects created or blown up by a director requesting something in April to be released in June is absurd, and ICTs bear the brunt of it, with very little in terms of compensation to account for it.
Overall smooth. Had 3 interviews: one behavioral and 2 technical. Heavy system design and debugging. Interviewers were nice, standard interview format with an introduction and then mostly technical questions. Some OOP concepts needed as well.
It was a pretty standard big tech interview process. At a high level, it had the following steps: * Recruiter call * Hiring Manager screen * Technical phone screen * Onsite
One interview, supposed to be with the hiring manager, was followed by a group of three interviews. These interviews were primarily focused on computer architecture and verification concepts. There was also some coding related to these computer archi
Overall smooth. Had 3 interviews: one behavioral and 2 technical. Heavy system design and debugging. Interviewers were nice, standard interview format with an introduction and then mostly technical questions. Some OOP concepts needed as well.
It was a pretty standard big tech interview process. At a high level, it had the following steps: * Recruiter call * Hiring Manager screen * Technical phone screen * Onsite
One interview, supposed to be with the hiring manager, was followed by a group of three interviews. These interviews were primarily focused on computer architecture and verification concepts. There was also some coding related to these computer archi