You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Personal Experience - Software Development Engineer - II (Data and ML Platform):
First Round (Computer Science Fundamentals and DSA):
Let's assume there are N number of lines in 2D coordinate system and their start and end points - (X1s,X1e),(X2s,X2e),......(XNs,XNe) where s = start and e = end, we need to draw a line perpendicular to X-axis (Parallel to Y-axis) such that the line intersects maximum number of given lines and also find the points of intersection if possible (If multiple intersection points possible that maximizes number of intersections - return any of them).
Find the second largest element in an array?
When does the shuffling happen in spark?
what's your inference on the scenario where the application is running and memory consumption is too high and CPU utilization is constant?
what are coalesce and repartition in Spark?
How does the parallelism happen in Python? Methods to deal with and questions on relevant libraries?
Second Round (DSA):
Code up a linkedlist with all necessary operations from scratch!
Questions on developed linkedlist code, execution and manipulations to the code for some questions.
Find the middle element of the linkedlist.
Detect a cycle in the linkedlist if present.
Doubly linkedlists and cyclic linkedlists - Questions only (No need to implement).
Questions on Internals of Spark and performance related questions.
LLD (Low Level Design Round):
Given a scenario of ATC (Air Traffic Controller) and flights, Questions on interactions between flight pilot and ATC if ATC needs to replaced with a automated system (Answer expected interms of API lingo) - payload, messages exchange, queues, parameters - etc.
Design a low level ATC system that manages the flight traffic, departures and arrivals within 50 kms of radius.