Hackernoon logoSoftware Engineer interview at Facebook :  Tips and Tricks by@niksib

Software Engineer interview at Facebook :  Tips and Tricks

Author profile picture

@niksibNikolay

Web developer

Hello there, my name is Nikolay, I am a web developer.
In this article, I want to share my experience of visiting “Interviewing at Facebook: Crush your coding interview” meetup.
In Facebook interview usually divided into 4–5 parts.

Interview parts

  1. Coding interview(Online)
  2. Coding interview
  3. Design interview
  4. Behavior interview

Goals of coding interview

  • How you think and tackle hard problems
  • How you consider engineering trade-offs(memory vs time)
  • How you communicate in English about technical problems
  • Limits of what you know
  • Don’t feel bad if you don’t get all the answers right
Data Structures and algorithms
  • Implement, not memorize
  • Discuss complexity(space and time trade-offs)
  • Common library functions are fair game
Specific questing about concepts are rare
  • Unless you claim to be an expert or need the concept

Format of a coding interview

Intro
  • Learn about your interviewer and share your past experiences
Coding
  • Majority of the time spent completing coding questions
  • Don't worry if the interviewer stops you in the middle of a question to move on!
  • Questions might have to follow up components based on your implementation
  • Be prepared to test your code, discuss how it works and analyze its performance
  • Phone screens use an online collaborative editor(but we don't run any code!)

Steps to a successful interview

  1. Repeat the question back to your interviewer to ensure you fully understand what’s being asked.
  2. Ask questions about edge cases.
  3. Take your time to think about a solution before coding
  4. Start coding while explaining your entire thought process. It's encouraged to talk out loud. Don't worry if you run into trouble! Feel free to ask your interviewer for a hint.
  5. Run through your solution with test cases. Continue talking out loud.
  6. Iterate - how can you do better with runtime/memory.

A few examples of coding tasks

  1. Given an array in which every number is between 1 and N, determine if there are any duplicates(Task level - Easy).
  2. Given a tree, determine if it is a binary search tree(Task level - Medium).

Example of coding interview

Final Tips

  1. Practice on a whiteboard
  2. Leave whitespace between questions
  3. Time yourself
  4. For phone screens, go somewhere quiet with a good internet connection
  5. Use headphones to free your hands for coding


    Follow me on Twitter - https://twitter.com/sybrikN
    Have a nice day :)

  6. (Photo by Charles 🇵🇭 on Unsplash)




Tags

The Noonification banner

Subscribe to get your daily round-up of top tech stories!