Technical Interviewing with FlightAware: A Guide for Technical Positions

Technical Interviewing with FlightAware: A Guide for Technical Positions

FlightAware has a rigorous technical recruiting process which includes two technical interviews/screenings to determine your technical skill level. The purpose of this guide is to help give a more detailed overview of the process to help prepare you for these technical screenings.

What We Are Looking For

We are not looking to trip you up or give you trick questions nor test you on memorized algorithms. We are looking for you to:

  • Think about and analyze the problem before diving right in
  • Check in with the engineer as you work to explain your thought process clearly and talk through your solutions (as a way of testing your solution)
  • Ask questions to clarify any possible assumptions
  • Be receptive to feedback, hints, or suggestions from the engineer
  • Write clean code that is easy to understand
  • Choose a solution that has reasonable time and memory complexity
  • Prioritize simple solutions over complex solutions (if you are jumping through lots of hoops, something has gone wrong)
  • Code in a language that you feel most proficient in as you will perform better overall (don’t code in a language you think we want you to use)

Our Process:

First Technical Interview: Online & Phone/Zoom

The first technical interview at FlightAware typically takes about 60 minutes. After confirming a date and time for your interview, HR will send you a confirmation email along with a calendar invite (containing a Zoom link for audio) connecting you with the FlightAware software engineer who will conduct your interview. The engineer will send you a separate email (usually the day of your interview) containing a link to the Google document you will use for your interview.

This interview will consist of technical questions covering a range of computer science topics such as data structures and algorithms. In the Google document, the engineer will present you with a coding scenario to which you will write a solution. The engineer may also ask general domain knowledge questions.

During this interview, the engineer will be looking at your thought process for solving the presented scenario; they will not be expecting perfect syntax or capitalization. (When you are in the shared Google document, you can adjust the autocorrect settings by going to Tools > Preferences and unchecking the boxes that automatically capitalize words and correct spelling.) We ask that you do not use any non-standard libraries; if you are not sure, feel free to ask the engineer.

Second Technical Interview: Online & Zoom, or in-person, as permitted

If you are successful on the first technical interview, you will be invited to complete a second technical interview. The second technical interview at FlightAware typically takes about 90 minutes. After confirming a date and time for your interview, HR will send you a confirmation email along with a calendar invite (containing a Zoom link for audio and screen sharing) connecting you with the FlightAware software engineer that will conduct your interview.

The engineer will send you a separate email (usually the day of your interview) containing a link to the online integrated development environment you will use during the interview. You will not need to download anything ahead of time.

During this interview, there will be several questions asked with provided inputs, and you will be expected to write code that will produce the correct output. You will have access to a compiler or interpreter (if needed) to run your code. Currently the online environment is set up to support the following languages: Python, PHP, C#/.net, Java, JavaScript (node.js), C/C++, Go, and Tcl. If there is another language that is not on this list that you would feel most comfortable using, please let us know, and we will work to accommodate if possible.

General Tips For Your Upcoming Technical Interview

  • Spending some time preparing yourself will most likely yield better results. There are many resources online that you can review and use to practice.
  • Double-check the technology you’ll be using: prior to the interview, test your sound on your laptop/computer/headphones/phone.
  • Make sure that you have completed any available updates for Zoom.
  • If you are screen sharing during your interview, make sure you have any pop-up notifications turned off (along with noises).
  • Make sure your phone or laptop is charged, or better yet, plugged in.
  • Ensure that your internet connection is functional.
  • You will most likely perform at your best in a quiet area with the least amount of background noise.
  • Be a few minutes early and available at the scheduled time of the interview; if necessary, request to reschedule in advance (make sure to include HR on your email).
  • Remember to adjust for different time zones if needed.
  • This is a technical interview – treat it with the same seriousness as in-person interviews.