Software Engineer interview at Facebook : Tips and Tricks
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.
- Coding interview(Online)
- Coding interview
- Design interview
- 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
- Learn about your interviewer and share your past experiences
- 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
- Repeat the question back to your interviewer to ensure you fully understand what’s being asked.
- Ask questions about edge cases.
- Take your time to think about a solution before coding
- 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.
- Run through your solution with test cases. Continue talking out loud.
- Iterate - how can you do better with runtime/memory.
A few examples of coding tasks
- Given an array in which every number is between 1 and N, determine if there are any duplicates(Task level - Easy).
- Given a tree, determine if it is a binary search tree(Task level - Medium).
Example of coding interview
- Practice on a whiteboard
- Leave whitespace between questions
- Time yourself
- For phone screens, go somewhere quiet with a good internet connection
- Use headphones to free your hands for coding
Follow me on Twitter - https://twitter.com/sybrikN
Have a nice day :)
Subscribe to get your daily round-up of top tech stories!