Facebook uses interviews to evaluate candidates' understanding of algorithms, data structures, and problem-solving abilities. Candidates should spend time learning these concepts in-depth, practicing coding problems to implement their knowledge, and considering computational resources needed for solutions. Most importantly, candidates need to actively discuss their thinking process during interviews by explaining views, understanding questions fully, and asking clarifying questions. Thorough preparation is essential for software engineering roles at Facebook.
2. Limit of Liability/Disclaimer of Warranty: This presentation doesn’t provide detailed knowledge or concepts of any technical items. It’s
assumes that a candidate will refer to appropriate text books based perception. Moreover, this presentation explains the thought
process, reasoning with job Interviews and provides several types of examples, which helps a candidate prepare for Job
Interviews, especially in regards to technical companies.
The author makes no representations or warranties with respect to the accuracy or completeness of the contents of this work and
specifically disclaims all warranties, including without limitation warranties of fitness for a particular purpose. The fact that an organization
or web site is referred to in this work as a citation and/or a potential source of further information does not mean that the author endorses
the information the organization or web site may provide or the recommendations it may make. Furthermore, readers should be aware that
Internet web sites listed in this work may have changed or disappeared between when this work was written and when it is read.
Sumit Arora | sumit@thecareertools.com
3. REMEMBER:THE
PARAMETERS
TECHNICAL
INTERVIEW
DEPENDS
ON
VARIOUS
- From
employer
side:
job
title, responsibility, department, pr
oject type, technology type, skills
type, years of experience, mind set
of
interviewer/interviewers, immediat
e requirements, firm decision for
hire-nohire and many more.
- From candidate side : the way CV (resume) was presented, the
way the candidate carried the technical/non-technical
discussion, Job Title, Past Experience, thought process, technical
thoughts presentation/participation and many more )
5. FACEBOOK
Majorly
HIRE/INTERVIEW-1
SOFTWARE ENGINEER
Interested in creating great products that more than a billion people use? Building new
features and improving existing products like Photos, NewsFeed, Mobile and Inbox? Want to
solve large scale, highly complex technical problems? Facebook is seeking Software Engineers
to join one of our many teams within our engineering organization. These teams are working
on building the next-generation systems behind Facebook's products, creating web
applications that reach millions of people, and building high performance services. There are
opportunities in ads infrastructure and optimization, advertising auction, data, the Facebook
Platform, Infrastructure, Data Insights, Machine Learning, and product engineering to name a
few. This position is full-time and there are minimal travel requirements.
www.thecareertools.com
6. FACEBOOK
Majorly
HIRE/INTERVIEW-2
Software Engineer, Developer Tools
Facebook is seeking talented Software Developer with a passion for building test
automation frameworks and tools. Do you thrive on test-driven development? Are you not
just writing tests, but hacking on the framework itself? Are you responsible for testing but
your coding skills are on pare with any other engineer you work with? Do people come to
you when they want advice on how to write better tests? We build the frameworks that
enable our fellow engineers to move fast and have confidence in their code.
www.thecareertools.com
7. FACEBOOK Interview
Questions Divided In
Following EIGHT Areas ?
Asked by multiple interviewers
in multiple rounds [ HR
Interview, ProgrammingTest, Phone Interview-1,Phone
Interview-2,Face-To-Face
Interviews(~3-4), Hiring
Manager Interview[~1-2]/ ~4560 Mins, InterviewStreet]
www.thecareertools.com
1
2
…
8
7
8. 1
General
Areas Qs
-Please tell me about yourself?,
-What is your most efficient technical skills ?,
-Which technical area you are trying to improve?,
-What type of job or role you looking for ? ,
-How do you feel that such job fits to you ? ,
-Why did you opt for this job ? ,
-Why you are looking for a job ?,
-Why Should Facebook Hire You? and much more...
RELEVANT TO THE PRESENTED CV/RESUME
8
www.thecareertools.com
9. 2
PAST
EXPERIENCE
AREAS Qs
-Best Practices – Effective While At Work
-Career Aspirations: Expectations From Work,
-Career Movement: Past Work Experience,
-Coding: Largest Code Project,
-Programming: Largest Piece Of Code,
-Technical Skills: Encountered Technically Complex Problems,
-Work Interest: Learning From Work and much more...
RELEVANT TO THE PRESENTED CV/RESUME
www.thecareertools.com
9
10. 3
Algorithms Qs
-Sorting Approaches
-Searching Approaches
-Brute-Force Approach
-Greedy Approaches
-Task Scheduling Algorithm
-Huffman Codes
-Longest Common Subsequence
-Naïve String Matching
-Rabin-Karp Algorithm
-NP-Completeness Algorithms
-Red-Black Trees
-B-Trees,
-Graph Traversals
-Hash Tables and much more...
STANDARD CONCEPTS BUT TRICKY WAYS
www.thecareertools.com
10
11. 4
Coding Qs
-Compress String
-Partition The Array Of Balls
-Adding Two N-Bit Binary Integers
-Trie Data Structure To Store Words
-Algorithm To Do Wild Card String Matching
-Convert A BST Into A Linked List
-N-Ary Tree
-Graph’s Breadth First Traversal
-Shuffling A Deck Of Cards
and much more...
STANDARD CONCEPTS BUT TRICKY WAYS
11
www.thecareertools.com
12. 5
TECHNICAL
AREAS Qs
•
•
•
•
•
•
•
- Text Search Domain [ OR]
- Security Infrastructure Domain [
OR]
- Ranking and Relevance Domain [
EXAMPLE: OFFERED
OR]
SKILLS/TECHNICAL- Storage Domain [ OR]
DOMAIN BY A
- Natural Language Processing
PROFESSIONAL
Domain [ OR]
-SOMETHING ELSE
In-depth understanding of the TCP/IP stack
Proficient in C and C++
Technical Qs ARE RELEVANT TO THE PRESENTED CV/RESUME
Solid understanding of the Linux operating system
A passion for developing scalable and optimized software systems
High aptitude and technology-agnostic approach to engineering.
Experience with network devices (routers, switches, load balancers) and a good
understanding of network routing protocols
Experience developing control plane software for switches or routers
www.thecareertools.com
12
13. 6
TEST
AREAS Qs
-How to test a soda machine,
-Practical Test approaches,
-Test strategies,
-Test Tools,
-Note That Is Constructed Using Words,
-Kinds Of Testing Have You Done
-Forming the test cases for a given problem
-Overall thought process towards testing ?
-How do you understand the testable item to test ?
-How to define the test coverage ?
-Does it feasible to do the performance testing or load
testing or stress testing or xyz testing
STANDARD CONCEPTS BUT TRICKY WAYS
and much more...
RELEVANT TO THE PRESENTED CV/RESUME
This is for “Software Engineer, Developer Tools” positions, Its additional to General
Areas,Past Experience Areas, Skills Areas, Thought Process, Technical Areas,
www.thecareertools.com
13
14. 7
THOUGHT
PROCESS Qs
-How would you design a new browser?
-How will you design a new operating system?
-How would you design a railway track?
-How would you lead a team in Disneyland for entertainment activities ?
-If you are a trip organizer for a small group of people ?
-What software's a soccer player must use ?
STANDARD CONCEPTS BUT THOUGHTFUL ANSWERS
14
www.thecareertools.com
15. 8
PROFESSIONAL’S
DEFINITION
-What Is Your Skill Table? ,
-On Which Type Of Industry Centric Solutions Are You Involved Or Would Like To Be
Involved? ,
-Which Job Title Closely Defines The Type Of Professional You Are Ur Expect To Be?
and much more...
RELEVANT TO THE PRESENTED CV/RESUME
15
www.thecareertools.com
16. What should be a
professional’s
approach to deal
with such interviews?
16
www.thecareertools.com
17. IN SUMMARY
[step-1]: Prepare a package of the skill items related to general
areas, past experience areas, skills areas, thought process and
other parameters.
[step-2]: Frame your package to a closely matching job title.
[step-3]: Present your package(CV, e-mail, way of talking and many
more) based on the type of company, job title and execute the job
interview.
17
www.thecareertools.com
19. You need to follow a very organized
and disciplined approach to prepare
for the Software Engineering Job at
Facebook.
www.thecareertools.com
19
20. HERE IS THE
PLAN WHICH
WE FOUND
TO BE
REASONABLE
20
www.thecareertools.com
21. Actually Facebook
follow an approach
on which they
measure the
thought process of
a candidate.
21
www.thecareertools.com
22. Facebook uses Algorithms/Data
Structures/Open-ended questions as one of
the approach to evaluate the talent.(As
those are one of the base to develop
technologies)
[If you have applied for a software engineering job.]
22
www.thecareertools.com
23. (Step-1) You should have
practical understanding of the
Algorithms (e.g. When to use
BackTracking, When to Use
Divide and Conquer, Why
Double Hashing
required?, Where Brute Force
concept can be applied?)
(100 Hours).
YOU MUST-HAVE/NEED-TO SPENT 100 HOURS OR MORE/AT-SOME-POINT-OF-TIME TO
THOUGHTFULLY UNDERSTAND SUCH CONEPTS(e.g. 4 hours for 25 days or 8 hours 12 days)
23
www.thecareertools.com
24. (Step-2): You should have
practical understanding of Data
Structures e.g. (Practical use
cases related to :when to use
circular buffer , or when to use
adjacently list or the
combination of both or
something else
to solve the problem ).
(100 Hours)
YOU MUST-HAVE/NEED-TO SPENT 100 HOURS OR MORE/AT-SOME-POINT-OF-TIME TO
THOUGHTFULLY UNDERSTAND SUCH CONEPTS(e.g. 4 hours for 25 days or 8 hours 12 days)
www.thecareertools.com
24
25. (Step-3) : You must practice
several coding problems to
implement the things which
learn from Step-1 , and Step-2
(choose any coding language for
the choice of yours (C, C++ or
Java or Python or PHP or any
one else )).
(100 Hours)
YOU MUST-HAVE/NEED-TO SPENT 100 HOURS OR MORE/AT-SOME-POINT-OF-TIME TO
THOUGHTFULLY UNDERSTAND SUCH CONEPTS(e.g. 4 hours for 25 days or 8 hours 12 days)
www.thecareertools.com
25
26. (Step-4): Solving the problem
doesn't mean just to solve
it, but to understand the best
way to solve it .(How you
connect the given solution with
the computing/memory
resources e.g.
Memory/Processing Power)
(100 Hours)
YOU MUST-HAVE/NEED-TO SPENT 100 HOURS OR MORE/AT-SOME-POINT-OF-TIME TO
THOUGHTFULLY UNDERSTAND SUCH CONEPTS(e.g. 4 hours for 25 days or 8 hours 12 days)
26
www.thecareertools.com
27. MOST IMPORTANT ONE.
The main concept for the interview is to keep
the interview active and this requires some
action from your side.
27
www.thecareertools.com
32. MOST IMPORTANT ONE.
You need to understand
clearly the questions
given to you.
32
www.thecareertools.com
33. MOST IMPORTANT ONE.
You need to understand
the interviewer’s expression
and mindset to
understand those
questions.
33
www.thecareertools.com
34. MOST IMPORTANT ONE.
You might need to ask
appropriate questions
to understand the
question or any other
discussion item.
www.thecareertools.com
34
35. AND ALSO
Prepare : "Please tell me about your self"
, "Your skills related positive/negative further
interest" , Basics for the most needed
computer science concepts or anything as you
presented on your "CV/Resume".
(100 Hours)
YOU MUST-HAVE/NEED-TO SPENT 100 HOURS OR MORE/AT-SOME-POINT-OF-TIME TO
THOUGHTFULLY UNDERSTAND SUCH CONEPTS(e.g. 4 hours for 25 days or 8 hours 12 days)
35
www.thecareertools.com
36. ABOVE IS JUST A
SAMPLE PLAN, YOU
MAY CUSTOMIZE THE
WAY YOU WANT(E.G.
100 HOURS TO 10
HOURS OR
SOMETHING ELSE)
36
www.thecareertools.com
37. CLICK TO AMAZON, TO FIND THE
BEST BOOKS YOU MIGHT NEED.
37
www.thecareertools.com