Summary
I recently interviewed with SentinelOne for their SSE role. After a 4-round process, I was not selected. The interview covered technical questions, system design, and behavioral topics.
Full Experience
I recently gave SSE interview for SentinelOne. There were total of 4 Rounds. YOE: 5.
1. Screening (1 Hr) - Selected
- Discussion about my current and past experience.
- 2 string related problems. One was about removing consecutive duplicates and print the remaining string and other was related to KMP Algorithm
2. Technical Round 1 (1 Hr) - Selected
- Interviewer asked me questions related to equals and hashcode method. What is the behavior of both the methods in custom and default implementation.
- How it is used in HashMap. How set works internally in Java.
- 1 DSA problem related to counting of most occuring element. Suggested three appraoches.
3. Technical Round 2 (1.5 Hr) - Selected
- 1 graph based DSA problem whose base was to basically find whether two nodes are connected or not. Explained and coded both DFS & DSU approaches
- Follow to the same problem, he asked to find the path with minimum node traversal
- 2nd problem was HLD to design Uber ride booking system
4. Manegerial Round (1 Hr) - Not Selected
- Asked 1 HLD problem to design URL Shortener
- Discussion around my past experience, what major things I developed in last 3 months etc.
Got a mail after 10 mins of interview that I was not shortlisted. Its okay for me. Nothing to worry.
Compensation they were offering:
Base: 32 LPA (After so much negotiation because my current base was low)
Bonus: 12%
RSU: 50k $ for 4 years
Interview Questions (7)
One problem was about removing consecutive duplicates and print the remaining string.
Other was related to KMP Algorithm.
1 DSA problem related to counting of most occuring element. Suggested three approaches.
1 graph based DSA problem whose base was to basically find whether two nodes are connected or not. Explained and coded both DFS & DSU approaches.
Follow to the same problem, he asked to find the path with minimum node traversal.
2nd problem was HLD to design Uber ride booking system.
Asked 1 HLD problem to design URL Shortener.
Summary
I had a fast-paced interview process with SentinelOne for a Senior Software Engineer role in Bangalore, consisting of a screening round, two technical rounds, and a culture fit round, which ultimately resulted in a hire.
Full Experience
Recruited reached out on LinkedIn, their process was very fast.
Screening Round Given a string and a pattern, find whether the pattern exists in the string and it should not exist in the same relative order as the pattern
s = abcde, p = abc -> false
s = bacde, p = abc -> true
Easy sliding window solution. Then asked about general software engineering principles
Round 1 General software engineering questions around performance tuning, design, deployment. Then asked me to implement a program that would merge two large files and run the code
Round 2 Again this was a general discussion. This interviewer asked two coding quesitons but the catch was optimisations Question 1: implement reverse string and optimise it Question 2: Find prime numbers and optimise it
Round 3 General culture fit round.
Verdict Hire
Interview Questions (4)
Given a string and a pattern, find whether the pattern exists in the string and it should not exist in the same relative order as the pattern
s = abcde, p = abc -> false
s = bacde, p = abc -> true
Implement a program that would merge two large files and run the code.
Implement reverse string and optimise it.
Find prime numbers and optimise it.
Summary
I applied through the career site and received a positive offer for a Senior Software Engineer position at SentinelOne after three interview rounds focused on C++, multi-threading, OS concepts, and system design.
Full Experience
Applied through career site and got call from recruiter within a week.
SentinelOne's interview is not DSA heavy but you can expect LC medium questions at max and lot of design questions
Round 1 (1 hr)
- Current project discussion, questions on the work I have done in C++ and C
- C++ Multi-threaded question to print numbers in sequence using multiple threads, wrote the code, test ran it and explained it.
- Cross question on the code written I was given edge cases to handle
- Advanced questions on C++-11 memory model
- C questions on memory allocation, how malloc, calloc and realloc work
- Code to create 2D matrix in C
- Discussion on C and C++ memory management
Round feedback was positive
Round 2 and 3 were conducted face to face in office.
Round 2 (1.5 hrs)
- Very similar to round 1
- But focus was more on OS concepts
- I was asked to explain my current product architecture
- How communication happens, how threads are managed in a pool
- I was asked to design multi-threaded queue both, lock and lock free, was asked to use CAS (Compare and swap)
- Asked process memory layout, got stuck and confused here between the layout in windows and linux process
- Was asked LC medium question at the end I dont remember the exact question, used max and min heap for it
- Lot of questions and discussions about OS concepts I dont remember the exact questions.
Round 3 (Manager Round)
- Typical manager round
- Was asked about project
- Difficult tasks handled
Overall the interview experience was good and interviewers were very friendly Got positive feedback for all the rounds and was given the offer within 3 days
Interview Questions (3)
C++ Multi-threaded question to print numbers in sequence using multiple threads. I wrote the code, test ran it and explained it, and handled cross questions on edge cases.
Code to create 2D matrix in C.
I was asked to design a multi-threaded queue, both lock-based and lock-free, and was asked to use CAS (Compare and swap).