I applied online. The process took 2 weeks. I interviewed at Saildrone in Sept 2024
Interview
Applied online, Screen with the recruiter was very nice, then take home exercise. The exercise is a system design question - need to spend at least 8 hours to implement (which they are fully aware of) and tell about it ahead of time. So... spent at least 8 hours, submitted my design and got a very general response from the recruiter that they are not going to proceed. I naturally asked for the feedback which they were not able to provide.
I spent the full working day (!!!) to implement a task not to be given a 10 - 15 minutes back??? What the ...? This is honestly disregard and disrespect. Most of the tasks are 2 - 3 hours. When people would not provide any insight into those rejections - well, it's my time, it hurts, but it's manageable. Here I spent 8 (!) hours - this is significant! Not mentioning that a full system's design is a very subjective task to assess. The same task can be implemented many ways. The fact that NO feedback was provided is absolutely unacceptable.
Interview questions [1]
Question 1
# Architecture Challenge
Flightaware24 provides a free iOS and Android application tracking all of the airplane flights in the world.
For this assignment, let's reverse engineer two features in particular on the main view.
* The first is showing a live view of all flights within the bounds of the home screen.
* For the second feature, once selecting a flight, a timeseries history of the route (location, altitude, and airspeed) can be shown, along with some metadata about the flight (Airline, Flight Number, Departing Airport, Arriving Airport, etc.). Further windows can also show a graph of the timeseries data.



Please design/reverse engineer how the data pipeline flow works for these two features. As an input, assume a stream of live data is available for every flight airborne around the world and is providing a sample per flight once every 5 seconds. All of the data needed is in those streams. As the output, an HTTP API that the UI polls/pulls from is sufficient. External customers/clients must be able to access the data without much lag (return in 10's or 100's of milliseconds).
The output of this exercise is a design document. No specific code is required. Use any methods to convey your design, including any diagrams and/or pseudocode. Most importantly, please enumerate the reasoning behind specific design, data model, and data storage/query engine choices. How do you store the data to best match ingest and access patterns?
An important part of the engineering process at Saildrone is a fleshed out design doc that gets reviewed by the team before starting a large project. This assignment helps us understand your data architecture skills and how you would work/communicate in this environment.
# Submission
Please submit a pull request to Github with your completed code submission and design document to the private repository set up for you.