Apple Emdedded SWE interview

apple logo
apple
embedded software engineermunich1 yearsRejected
July 27, 20230 reads

Summary

I interviewed for an Embedded Software Engineer role at Apple Munich, completing a hiring manager round and a technical coding round. Although I successfully passed the first stage, I was ultimately rejected after the second, less communicative technical interview.

Full Experience

I recently went through the interview process for an Embedded Software Engineer position at Apple Munich. Having over 1 year of experience, I applied through their careers portal and received an invitation for a hiring manager round approximately two weeks later.

Hiring Manager Round (Virtual)

This was a very pleasant and engaging 45-minute virtual interview. The manager started by explaining his team's role, the process, and the next steps. The interview was divided into technical and non-technical questions. We began with the technical segment:
  • Semaphore vs. Mutex?
  • Difference layers of 4G and 5G, how do they differ? What's new in 5G?
  • Carrier aggregation concept and which layer does it affect?
  • Explain all layers in detail.
  • What is the main role of the RLC layer?
  • Other general communication engineering questions.
There was no live coding in this round.

For the non-technical questions, I was asked:

  • When can you start?
  • Explain a bad situation with your team members and how you resolved it.
  • Explain a mistake you made at work and how you fixed it.
And so on. The manager was very nice and communicative, ensuring I was comfortable throughout the entire interview. I was selected to proceed after this round.

Second Interview (The challenging part, 1 hour)

For a role in Munich, this interview was conducted by someone from the US. The interviewer seemed less friendly and immediately started with in-depth questions about semaphore vs. mutex and other OS concepts, without any introduction.

He then moved to a Coderpad session:

  • Implement a linked list, insert at head, and then reverse it. I honestly didn't expect such a question for an embedded role at Apple, but I tried my best, although I didn't fully meet his expectations.
  • The second question was more straightforward and expected: bit manipulation, specifically setting and getting bits.
During this Coderpad round, the interviewer was often preoccupied with other tasks and did not communicate much, which I felt could have been handled better by both sides.

Two weeks later, I received the rejection mail.

Interview Questions (8)

Q1
Semaphore vs. Mutex
Other

Explain the differences between a Semaphore and a Mutex.

Q2
4G vs. 5G Layers and Features
Other

Discuss the differences in communication layers between 4G and 5G, how they differ, and what new features 5G introduces.

Q3
Carrier Aggregation Concept
Other

Explain the concept of carrier aggregation and identify which communication layer it affects.

Q4
RLC Layer Role
Other

Describe the main role of the Radio Link Control (RLC) layer in communication systems.

Q5
Team Conflict Resolution
Behavioral

Describe a difficult situation you experienced with team members and how you successfully resolved it.

Q6
Handling Work Mistakes
Behavioral

Share an experience where you made a mistake at work and explain the steps you took to fix it.

Q7
Implement and Reverse Singly Linked List
Data Structures & AlgorithmsMedium

Implement a singly linked list, including an operation to insert a node at the head, and then reverse the entire linked list.

Q8
Bit Manipulation: Set and Get Bits
Data Structures & AlgorithmsEasy

Implement basic bit manipulation functions to set a specific bit to 1 and get the value of a specific bit (0 or 1) within an integer.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!