Total 6 rounds (all happend in a single day):
1st Round (1 hour):
- Deep dive into C and C++ basics. Pointers, bit manipulation, string manipulation, 2D and 3D dynamic arrays, Questions on arrays, strings (1 hour)
- Basics of Networking (OSI layer)
2nd round (1.5 - 2 Hours)
- All variations of linkedlist (cloning, finding loop, finding the intersection point, deleting the middle node, etc). Total 6 questions asked on Linked list
- Write full class structure of binary tree and write insert operation.
- Deep dive into OS concepts:
i. Memory management.
ii. Difference between process and threads.
iii. Segmentation
iv. Paging
v. Memeory layout in programs
- Questions on networking:
i. ARP protocol.
ii. How packets travel from source to destination
iii. TCP and UDP protocols.
- Questions on linux OS: inode structure, Daemons.
3rd Round: (~1 hour)
- Implement circular queue (push and pop operations)
- Deep dive into OS concepts:
i. Critical sections.
ii. Mutex.
iii. semaphores.
iv. Race conditions.
4th Round (SDM round 1.5 hours)
- All types of behavioural questions.
i. Why you want to leave the company.
ii. tell a time when you had a conflict with a team member.
etc
- Deep and detail discussion on Projects. (The discussion was so detailed that i had to explain our whole code base)
5th Round (Senior Manager 1 hour)
Same as SDM round
He explained me what Aruba does, what is expected from me.
6th Round (HR round)
- Basic behavioural questions.
- Expected Salary.
- If comfortable with relocation
- Company culture
Read about compensation here:
https://leetcode.com/discuss/compensation/1874112/Aruba-Networks-an-HPE-company-or-System-software-engineer-2