Insights and My Experience From My Interview at Facebook

Image for post

When I decided to start my job search, I couldn’t convince myself that I had a real shot at landing a job at Facebook.

Five months later, I received my offer letter.

This is a journey of expectations and the unexpected. Here I’ll share with you all my experience and the insights I gained on the way.

I was working as a software engineer at Samsung Electronics for two years and had been planning to change jobs. I went on a full-fledged job hunt in the month of July, starting preparations along with applying to popular tech giants — except for Facebook. I guess I wanted to be confident enough by performing well in other companies’ interviews first before taking my chances with Facebook.


A Shot in the Dark

While commuting to work or while taking a break from interview preparation, I started networking on LinkedIn. Soon it became an obsession. I searched for recruiters of companies I wanted to apply to and sent them an email (if mentioned under Contact Info on LinkedIn) or message. I wasn’t expecting any solid outcome, but this process of reaching out to recruiters gave me some sort of a thrill and optimism that helped me get through the preparation phase, which, believe me, requires profound effort.

Image for post

**Tip: **LinkedIn is a great platform to land recruiter calls, but it does require persistence. Do not hesitate to reach out to strangers. I heard back from recruiters of companies like Amazon, Microsoft, Snapchat, Bloomberg, and Apple simply by sending a message.

Luckily, an email I sent in August landed me a recruiter call from Facebook.

**Tip: **Getting the first recruiter call is the most time-consuming part of a job hunt. Start applying for open positions despite feeling unprepared. You can ask your recruiter for months-long preparation time before scheduling your first interview.


Ray of Hope

Expecting the best and prepared for the worst, I attended the call. The recruiter was from Facebook’s AR/VR division.

**Info: **Facebook is divided into divisions which recruit individually, namely Facebook Engineering, Facebook AR/VR, and Facebook AI.

She asked me questions regarding my current role and work experience. For most of my career, I have been a C/C++ developer with zero experience in XR. To my dread, I didn’t fit the role my recruiter had in mind. I was told that I would be only considered if I performed really well in the telephonic round because my skill set didn’t exactly align with the team.

Insight: At that point, Facebook Engineering had a hiring constraint where they were only considering candidates with over seven years of experience. Probably August is the end of the recruitment cycle for Facebook, when the headcount for the year is already met and vacancies are fewer. I felt it would have been easier to apply after the month of October, at the fresh start of the recruitment cycle.


Gotta Nail It

I scheduled my technical screen two weeks later. The interview format is to solve two questions within 45 minutes. The questions were basic and easy to code (array and string problem). One topic I want to touch on right now is the test run.

Test Run: Your code is not compiled and executed in the interview. Hence, for verification, the interviewer asks to take test input and show how it would run through your code.

**Tip: ** A test run is a good way to debug your code during an interview. Be sure to include test runs in your interview preparation.

For the interviewer’s second question, I thought of two solutions and explained both to the interviewer. He then asked me to compare the solutions and analyse the advantages of one over the other. Five minutes are reserved at the end to ask questions of the interviewer. I don’t think these five minutes contribute to the candidate’s performance evaluation, so there’s nothing to worry about.

**Tip: ** Leetcode is known to be a really good website to prepare for interviews, and I back this. One lesser-known gem on Leetcode is Leetcode Discuss. People share their interview experiences (and questions) on this page, and believe me, questions do repeat.


Onsite Interview

Image for post

Facebook AR/VR division office. There are two more Facebook offices in London.

Facebook’s interview process is pretty quick. I heard back from the recruiter within two days and flew to London for my onsite round. A total of four interviews were scheduled

Coding interviews (x 2)

Two questions are asked which need to be solved within 45–50 minutes. Areas covered were binary trees, string, stack, and list. Discuss the solution first with the interviewer and then write your code on the whiteboard.

**Tip: **There are always edge cases that need to be tackled in the code, and it’s not easy to take care of them while coding under pressure. One technique that has helped me get through this is the test run. Immediately after coding the solution, I tell the interviewer that I am going to test-run my solution on a generic example and debug myself first. The obvious mistakes in code are brought out by the first test run itself — better to find them yourself than to have them pointed out by the interviewer. Running through these test runs provides the time to think about edge cases which can then be incorporated into the code.

System design interview

This is an interesting round new for entry-level software engineers. The aim is to design a system from scratch. The problem statement usually looks like this:

  1. Design an existing product like WhatsApp, Facebook, Google search, etc.
  2. Design a particular feature of one of these applications; say, implement a timeline in a Facebook app.
  3. Design a completely hypothetical scenario; say, create a system to store logs of three servers situated far apart.

This interview definitely requires a special kind of preparation, and the most famous aid is Grokking the System Design Interview.

The good part is there are no correct answers. You should be able to justify your design choices and know the tradeoffs you have made.

Behavioral interview

This is the easiest of all, but do not take it lightly because any red flags raised in this interview can cost you your selection. The questions revolve around non-technical experiences like leadership skills, team spirit, how you tackle disagreement, etc. This set of questions is almost fixed, hence answers can be prepared.

**Tip: **A day before the interview, go through the list of popular behavioral questions and think about anecdotes from your professional life that support your answer to the question. Use this interview to relax in between the series of technical interviews. The confidence boost from this round helps in raising morale.


The First Disappointment

I received interview feedback after a week. I thought I had done really well, but the outcome wasn’t as I expected. I had received a strong positive in two of the interviews, positive in one of the coding rounds, and negative for system design. These are the insights I gained from the experience and the feedback.

  • The system design round is the decider. It’s really important to present your ideas in a structured way and not miss out design details like database schema, protocol definition, etc. (refer to these points from Grokking the System Design Interview). Take the initiative and drive the discussion in a logical manner, from collecting requirements to high-level design to discussing pros and cons.
  • Facebook expects candidates to excel at algorithm. They look for small mistakes and even optimizations, say, traversing the array twice instead of once. Try to give your best and do not feel complacent at any point. Do test runs, discuss edge cases, try to optimize, and be quick to write on the whiteboard. Not much of an expectation, is it? On the positive side, I felt all the questions had a beautifully simple solution which was neither hard to come up nor to code.

#interview #programming #engineering #women-in-tech #facebook

What is GEEK

Buddha Community

Insights and My Experience From My Interview at Facebook

Wipro Elite National Talent Hunt Interview Experience 2020

Round 1 : Online Test

As you all know that Wipro conducted the National Talent Hunt exam all over the world.

The questions were mainly asked on Aptitude, Logical and verbal ability, Essay Writing.

In the technical section there were two codes open to all major languages like java, C, C++, python etc.

The coding questions were too easy and I solved both the questions and passed all the test cases

After giving the mail I received the interview Invite for further round.

Round 2: Technical Interview

The interview started by saying that, “Make yourself comfortable, by telling about yourself”.

The interviewer only asked questions based on my resume. The following were the questions asked to me.

What is Infosys Certified Software Programmer?

What was the pattern of that exam?

What was your project during the internship with persistent systems?

How many team members were there in your project?

How was the behavior of the team members?

What is your contribution during the internship period?

In how much time did you learned Ruby on Rails?

What is your final year project and why you choose the same?

What SDLC you will be using for developing the project and Why?

I hope you are relocatable, as we have offices all across India?

And Finally, He said “ I am done with the interview, Do you have any questions?

I asked Him, what is Wipro doing in the field of AI, ML?

He told the same.

At the end, He said, “Any more questions”

I replied No Sir

He then said “You are selected, you can move ahead for you HR interview”

Round 3: HR Interview

Following were the questions asked in the HR Interview

Tell me about Yourself?

What were the questions asked in Technical interview?

Which language you used to solve coding questions in Wipro NLTH exam?

Are you ready to work from anywhere in India?

What was the topic of the essay in the Wipro NLTH exam?

Note: If you know the topic then only answer the question, else say I don’t remember the topic of essay. Because if you try to fluke the topic, the interviewer may catch you and ask more questions on the same. This happened with many students on that day. Students fluked the essay topic, further, the interview asked them to describe what you have written in the essay in short.

And Finally, He said “ I am done with the interview, Do you have any questions?”

I asked him regarding the Wipro Turbo Challenge.

He replied that Wipro is working on it, you will receive the updates regarding the same through mail.

After someday, I received the Letter Of Intent for the post of Project Engineer.

#interview experiences #marketing #wipro #wipro-interview-experience #interview

Alice Cook

Alice Cook

1614750304

How can I create a Poll on Facebook?

How do I start or create or post a Poll on Facebook? Know the ways to add options or make a poll on Facebook Page or Messenger.

make a poll on Facebook
add options to Facebook Poll

#how can i create a poll on facebook #create a poll on facebook #how to make a poll on facebook #how to do a poll on facebook #poll on facebook #create poll on facebook

Top 130 Android Interview Questions - Crack Technical Interview Now!

Android Interview Questions and Answers from Beginner to Advanced level

DataFlair is committed to provide you all the resources to make you an android professional. We started with android tutorials along with practicals, then we published Real-time android projects along with source code. Now, we come up with frequently asked android interview questions, which will help you in showing expertise in your next interview.

android interview questions

Android Interview Questions – Get ready for your next interview

Android – one of the hottest technologies, which is having a bright future. Get ready to crack your next interview with the following android interview questions. These interview questions start with basic and cover deep concepts along with advanced topics.

Android Interview Questions for Freshers

1. What is Android?

Android is an open-source mobile operating system that is based on the modified versions of Linux kernel. Though it was mainly designed for smartphones, now it is being used for Tablets, Televisions, Smartwatches, and other Android wearables.

2. Who is the inventor of Android Technology?

The inventors of Android Technology are- Andry Rubin, Nick Sears, and Rich Miner.

3. What is the latest version of Android?

The latest version of Android is Android 10.0, known as Android Q. The upcoming major Android release is Android 11, which is the 18th version of Android. [Note: Keep checking the versions, it is as of June 2020.]

4. How many Android versions can you recall right now?

Till now, there are 17 versions of Android, which have their names in alphabetical order. The 18th version of Android is also going to come later this year. The versions of Android are here:

  • Android 1.0 – Its release is 23 September 2008.
  • Android 1.1 – Its release date is 9 February 2009.
  • Android 1.5 – Its name is Cupcake, Released on 27 April 2009.
  • Android 1.6 – Its name is Donut, Released on 15 September 2009.
  • Android 2.0 – Its name is Eclair, Released on 26 October 2009
  • Android 2.2 – Its name is Froyo, Released on 20 May 2010.
  • Android 2.3 – Its name is Gingerbread, Released on 06 December 2010.
  • Android 3.0 – Its name is Honeycomb, Released on 22 February 2011.
  • Android 4.0 – Its name is Ice Cream Sandwich, Released on 18 October 2011.
  • Android 4.1 – Its name is Jelly Bean, Released on 9 July 2012.
  • Android 4.4 – Its name is KitKat, Released on 31 October 2013.
  • Android 5.0 – Its name is Lollipop, Released on 12 November 2014.
  • Android 6.0 – Its name is Marshmallow, Released on 5 October 2015.
  • Android 7.0 – Its name is Nougat, Released on 22 August 2016.
  • Android 8.0 – Its name is Oreo, Released on 21 August 2017.
  • Android 9.0 – Its name is Pie, Released on 6 August 2018.
  • Android 10.0 – Its name is Android Q, Released on 3 September 2019.
  • Android 11.0 – As of now, it is Android 11.

5. Explain the Android Architecture with its components.

This is a popular android developer interview question

Android Architecture consists of 5 components that are-

a. Linux Kernel: It is the foundation of the Android Architecture that resides at the lowest level. It provides the level of abstraction for hardware devices and upper layer components. Linux Kernel also provides various important hardware drivers that act as software interfaces for hardwares like camera, bluetooth, etc.

b. Native Libraries: These are the libraries for Android that are written in C/C++. These libraries are useful to build many core services like ART and HAL. It provides support for core features.

c. Android Runtime: It is an Android Runtime Environment. Android Operating System uses it during the execution of the app. It performs the translation of the application bytecode into the native instructions. The runtime environment of the device then executes these native instructions.

d. Application Framework: Application Framework provides many java classes and interfaces for app development. And it also provides various high-level services. This complete Application framework makes use of Java.

e. Applications: This is the topmost layer of Android Architecture. It provides applications for the end-user, so they can use the android device and compute the tasks.

6. What are the services that the Application framework provides?

The Android application framework has the following key services-

a. Activity Manager: It uses testing and debugging methods.

b. Content provider: It provides the data from application to other layers.

c. Resource Manager: This provides users access to resources.

d. Notification Manager: This gives notification to the users regarding actions taking place in the background.

e. View System: It is the base class for widgets, and it is also responsible for event handling.

7. What are the important features of Linux Kernel?

The important features of the Linux Kernel are as follows:

a. Power Management: Linux Kernel does power management to enhance and improve the battery life of the device.

b. Memory Management: It is useful for the maximum utilization of the available memory of the device.

c. Device Management: It includes managing all the hardware device drivers. It maximizes the utilization of the available resources.

d. Security: It ensures that no application has any such permission that it affects any other application in order to maintain security.

e. Multi-tasking: Multi-tasking provides the users the ease of doing multiple tasks at the same time.

8. What are the building blocks of an Android Application?

This is a popular android interview question for freshers.

The main components of any Android application are- Activity, Services, Content Provider, and Broadcast Receiver. You can understand them as follows:

a. Activity- It is a class that acts as the entry point representing a single screen to the user. It is like a window to show the user interface.

b. Services- Services are the longest-running component that runs in the background.

c. Content Provider- The content provider is an essential component that allows apps to share data between themselves.

d. Broadcast receivers- Broadcast receiver is another most crucial application component. It helps the apps to receive and respond to broadcast messages from the system or some other application.

9. What are the important components of Android Application?

The Components of Android application are listed below:

  1. Widgets
  2. Intents
  3. Views
  4. Notification
  5. Fragments
  6. Layout XML files
  7. Resources

10. What are the widgets?

Widgets are the variations of Broadcast receivers. They are an important part of home screen customization. They often display some data and also allow users to perform actions on them. Mostly they display the app icon on the screen.

11. Can you name some types of widgets?

Mentioned below are the types of widgets-

a. Informative Widgets: These widgets show some important information. Like, the clock widget or a weather widget.

b. Collective Widgets: They are the collection of some types of elements. For example, a music widget that lets us change, skip, or forward the song.

c. Control Widgets: These widgets help us control the actions within the application through it. Like an email widget that helps check the recent mails.

d. Hybrid Widgets: Hybrid widgets are those that consist of at least two or more types of widgets.

12. What are Intents?

Intents are an important part of Android Applications. They enable communication between components of the same application as well as separate applications. The Intent signals the Android system about a certain event that has occurred.

13. Explain the types of intents briefly?

Intent is of three types that are-

a. Implicit Intents: Implicit intents are those in which there is no description of the component name but only the action.

b. Explicit Intents: In explicit intents, the target component is present by declaring the name of the component.

c. Pending Intents: These are those intents that act as a shield over the Intent objects. It covers the intent objects and grants permission to the external app components to access them.

14. What is a View?

A view is an important building block that helps in designing the user interface of the application. It can be a rectangular box or a circular shape, for example, Text View, Edit Text, Buttons, etc. Views occupy a certain area of the screen, and it is also responsible for event handling. A view is the superclass of all the graphical user interface components.

15. What do you understand by View Group?

It is the subclass of the ViewClass. It gives an invisible container to hold layouts or views. You can understand view groups as special views that are capable of holding other views, that are Child View.

16. What do you understand about Shared Preferences?

It is a simple mechanism for data storage in Android. In this, there is no need to create files, and using APIs, it stores the data in XML files. It stores the data in the pair of key-values. SharedPreferences class lets the user save the values and retrieve them when required. Using SharedPreferences we can save primitive data like- boolean, float, integer, string and long.

17. What is a Notification?

A notification is just like a message that shows up outside the Application UI to provide reminders to the users. They remind the user about a message received, or some other timely information from the app.

18. Give names of Notification types.

There are three types of notifications namely-

a. Toast Notification- This notification is the one that fades away sometime after it pops up.

b. Status Notification- This notification stays till the user takes some action on it.

c. Dialog Notification- This notification is the result of an Active Activity.

19. What are fragments?

A fragment is a part of the complete user interface. These are present in Activity, and an activity can have one or more fragments at the same time. We can reuse a fragment in multiple activities as well.

20. What are the types of fragments?

There are three types of fragments that are: Single Fragment, List Fragment, Fragment Transactions.

  1. Single Transactions can only show a single view for the user.
  2. List Fragments have a special list view feature that provides a list from which the user can select one.
  3. Fragment Transactions are helpful for the transition between one fragment to the other.

Frequently asked Android Interview Questions and Answers

21. What are Layout XML files?

Layout XML files contain the structure for the user interface of the application. The XML file also contains various different layouts and views, and they also specify various GUI components that are there in Activity or fragments.

22. What are Resources in Android Application?

The resources in Android Apps defines images, texts, strings, colors, etc. Everything in resources directory is referenced in the source code of the app so that we can use them.

23. Can you develop Android Apps with languages other than Java? If so, name some.

Yes, there are many languages that we can work with, for the development of Android Applications. To name some, I would say Java, Python, C, C++, Kotlin, C#, Corona/LUA.

24. What are the states of the Activity Lifecycle?

Activity lifecycle has the following four stages-

a. Running State: As soon as the activity starts, it is the first state.

b. Paused State: When some other activity starts without closing the previous one, the running activity turns into the Paused state.

c. Resume State: When the activity opens again after being in pause state, it comes into the Resume State.

d. Stopped State: When the user closes the application or stops using it, the activity goes to the Stopped state.

25. What are some methods of Activity?

The methods of Activity are as follows:

  • onCreate()
  • onStart()
  • onPause()
  • onRestart()
  • onResume()
  • onStop()
  • onDestroy()

26. How can you launch an activity in Android?

We launch an activity using Intents. For this we need to use intent as follows:

  1. ntent intent_name= new Intent(this, Activity_name.class);
  2. startActivity(intent_name);

27. What is the service lifecycle?

There are two states of a service that are-

a. Started State: This is when the service starts its execution. A Services come in start state only through the startService() method.

b. Bounded State: A service is in the bounded state when it calls the method bindService().

28. What are some methods of Services?

The methods of service are as follows-

  • onStartCommand()
  • onBind()
  • onCreate()
  • onUnbind()
  • onDestroy()
  • onRebind()

29. What are the types of Broadcast?

Broadcasts are of two types that are-

a. Ordered Broadcast: Ordered broadcasts are Synchronous and work in a proper order. It decides the order by using the priority assigned to the broadcasts.

b. Normal Broadcast: These are asynchronous and unordered. They are more efficient as they run unorderly and all at once. But, they lack full utilization of the results.

30. What are useful impotent folders in Android?

The impotent folders in an Android application are-

  1. build.xml- It is responsible for the build of Android applications.
  2. bin/ – The bin folder works as a staging area to wrap the files packages into the APK.
  3. src/ – The src is a folder where all the source files of the project are present.
  4. res/ – The res is the resource folder that stores values of the resources that are used in the application. These resources can be colors, styles, strings, dimensions, etc.
  5. assets/ – It provides a facility to include files like text, XML, fonts, music, and video in the Android application.

31. What are the important files for Android Application when working on Android Studio?

This is an important android studio interview question

There are following three files that we need to work on for an application to work-

a. The AndroidManifest.xml file: It has all the information about the application.

b. The MainActivity.java file: It is the app file that actually gets converted to the dalvik executable and runs the application. It is written in java.

c. The Activity_main.xml file: It is the layout file that is available in the res/layout directory. It is another mostly used file while developing the application.

32. Which database do you use for Android Application development?

The database that we use for Android Applications is SQLite. It is because SQLite is lightweight and specially developed for Android Apps. SQLite works the same way as SQL using the same commands.

33. Tell us some features of Android OS.

The best features of Android include-

  1. Multi-tasking
  2. Support for a great range of languages
  3. Support for split-screen
  4. High connectivity with 5G support
  5. Motion Control

34. Why did you learn Android development?

Learning Android Studio is a good idea because of the following-

  1. It has a low application development cost.
  2. It is an open-source platform.
  3. It has multi-platform support as well as Multi-carrier support.
  4. It is open for customizations.
  5. Android is a largely used operating system throughout the world.

35. What are the different ways of storage supported in Android?

The various storage ways supported in Android are as follows:

  1. Shared Preference
  2. Internal Storage
  3. External Storage
  4. SQLite Databases
  5. Network Connection

36. What are layouts?

Layout is nothing but arrangements of elements on the device screen. These elements can be images, tests, videos, anything. They basically define the structure of the Android user interface to make it user friendly.

37. How many layout types are there?

The type of layouts used in Android Apps are as follows:

  1. Linear Layout
  2. Relative Layout
  3. Constraint Layout
  4. Table Layout
  5. Frame Layout
  6. Absolute Layout
  7. Scrollview layout

38. What is an APK?

An APK stands for Android Package that is a file format of Android Applications. Android OS uses this package for the distribution and installation of the Android Application.

39. What is an Android Manifest file?

The manifest file describes all the essential information about the project application for build tools, Android operating system, and google play. This file is a must for every Android project that we develop, and it is present in the root of the project source set.

#android tutorials #android basic interview questions #android basic questions #android developer interview questions #android interview question and answer #android interview questions #android interview questions for experienced #android interview questions for fresher

Insights and My Experience From My Interview at Facebook

Image for post

When I decided to start my job search, I couldn’t convince myself that I had a real shot at landing a job at Facebook.

Five months later, I received my offer letter.

This is a journey of expectations and the unexpected. Here I’ll share with you all my experience and the insights I gained on the way.

I was working as a software engineer at Samsung Electronics for two years and had been planning to change jobs. I went on a full-fledged job hunt in the month of July, starting preparations along with applying to popular tech giants — except for Facebook. I guess I wanted to be confident enough by performing well in other companies’ interviews first before taking my chances with Facebook.


A Shot in the Dark

While commuting to work or while taking a break from interview preparation, I started networking on LinkedIn. Soon it became an obsession. I searched for recruiters of companies I wanted to apply to and sent them an email (if mentioned under Contact Info on LinkedIn) or message. I wasn’t expecting any solid outcome, but this process of reaching out to recruiters gave me some sort of a thrill and optimism that helped me get through the preparation phase, which, believe me, requires profound effort.

Image for post

**Tip: **LinkedIn is a great platform to land recruiter calls, but it does require persistence. Do not hesitate to reach out to strangers. I heard back from recruiters of companies like Amazon, Microsoft, Snapchat, Bloomberg, and Apple simply by sending a message.

Luckily, an email I sent in August landed me a recruiter call from Facebook.

**Tip: **Getting the first recruiter call is the most time-consuming part of a job hunt. Start applying for open positions despite feeling unprepared. You can ask your recruiter for months-long preparation time before scheduling your first interview.


Ray of Hope

Expecting the best and prepared for the worst, I attended the call. The recruiter was from Facebook’s AR/VR division.

**Info: **Facebook is divided into divisions which recruit individually, namely Facebook Engineering, Facebook AR/VR, and Facebook AI.

She asked me questions regarding my current role and work experience. For most of my career, I have been a C/C++ developer with zero experience in XR. To my dread, I didn’t fit the role my recruiter had in mind. I was told that I would be only considered if I performed really well in the telephonic round because my skill set didn’t exactly align with the team.

Insight: At that point, Facebook Engineering had a hiring constraint where they were only considering candidates with over seven years of experience. Probably August is the end of the recruitment cycle for Facebook, when the headcount for the year is already met and vacancies are fewer. I felt it would have been easier to apply after the month of October, at the fresh start of the recruitment cycle.


Gotta Nail It

I scheduled my technical screen two weeks later. The interview format is to solve two questions within 45 minutes. The questions were basic and easy to code (array and string problem). One topic I want to touch on right now is the test run.

Test Run: Your code is not compiled and executed in the interview. Hence, for verification, the interviewer asks to take test input and show how it would run through your code.

**Tip: ** A test run is a good way to debug your code during an interview. Be sure to include test runs in your interview preparation.

For the interviewer’s second question, I thought of two solutions and explained both to the interviewer. He then asked me to compare the solutions and analyse the advantages of one over the other. Five minutes are reserved at the end to ask questions of the interviewer. I don’t think these five minutes contribute to the candidate’s performance evaluation, so there’s nothing to worry about.

**Tip: ** Leetcode is known to be a really good website to prepare for interviews, and I back this. One lesser-known gem on Leetcode is Leetcode Discuss. People share their interview experiences (and questions) on this page, and believe me, questions do repeat.


Onsite Interview

Image for post

Facebook AR/VR division office. There are two more Facebook offices in London.

Facebook’s interview process is pretty quick. I heard back from the recruiter within two days and flew to London for my onsite round. A total of four interviews were scheduled

Coding interviews (x 2)

Two questions are asked which need to be solved within 45–50 minutes. Areas covered were binary trees, string, stack, and list. Discuss the solution first with the interviewer and then write your code on the whiteboard.

**Tip: **There are always edge cases that need to be tackled in the code, and it’s not easy to take care of them while coding under pressure. One technique that has helped me get through this is the test run. Immediately after coding the solution, I tell the interviewer that I am going to test-run my solution on a generic example and debug myself first. The obvious mistakes in code are brought out by the first test run itself — better to find them yourself than to have them pointed out by the interviewer. Running through these test runs provides the time to think about edge cases which can then be incorporated into the code.

System design interview

This is an interesting round new for entry-level software engineers. The aim is to design a system from scratch. The problem statement usually looks like this:

  1. Design an existing product like WhatsApp, Facebook, Google search, etc.
  2. Design a particular feature of one of these applications; say, implement a timeline in a Facebook app.
  3. Design a completely hypothetical scenario; say, create a system to store logs of three servers situated far apart.

This interview definitely requires a special kind of preparation, and the most famous aid is Grokking the System Design Interview.

The good part is there are no correct answers. You should be able to justify your design choices and know the tradeoffs you have made.

Behavioral interview

This is the easiest of all, but do not take it lightly because any red flags raised in this interview can cost you your selection. The questions revolve around non-technical experiences like leadership skills, team spirit, how you tackle disagreement, etc. This set of questions is almost fixed, hence answers can be prepared.

**Tip: **A day before the interview, go through the list of popular behavioral questions and think about anecdotes from your professional life that support your answer to the question. Use this interview to relax in between the series of technical interviews. The confidence boost from this round helps in raising morale.


The First Disappointment

I received interview feedback after a week. I thought I had done really well, but the outcome wasn’t as I expected. I had received a strong positive in two of the interviews, positive in one of the coding rounds, and negative for system design. These are the insights I gained from the experience and the feedback.

  • The system design round is the decider. It’s really important to present your ideas in a structured way and not miss out design details like database schema, protocol definition, etc. (refer to these points from Grokking the System Design Interview). Take the initiative and drive the discussion in a logical manner, from collecting requirements to high-level design to discussing pros and cons.
  • Facebook expects candidates to excel at algorithm. They look for small mistakes and even optimizations, say, traversing the array twice instead of once. Try to give your best and do not feel complacent at any point. Do test runs, discuss edge cases, try to optimize, and be quick to write on the whiteboard. Not much of an expectation, is it? On the positive side, I felt all the questions had a beautifully simple solution which was neither hard to come up nor to code.

#interview #programming #engineering #women-in-tech #facebook

Sheldon  Grant

Sheldon Grant

1620930180

Ace Your Technical Interviews with These GitHub Repositories

Leverage these repositories to ace your next technical and coding interviews

Getting past the technical and coding interview is not always an easy task for most people.

Lucky for you, there are some amazing resources to help you go through easily and grab that position.

In this article, we will go through some of the best GitHub repositories to help you smash the coding interview.

These collections of repositories are essential in highlighting the different arears to focus on and different topics and questions to expect.

Front-end Developer Interview Questions

This repository is everything that entails frontend development.

Covered content includes:

  • General Questions
  • HTML Questions
  • CSS Questions
  • JS Questions
  • Accessibility Questions (external link)
  • Testing Questions
  • Performance Questions
  • Network Questions
  • Coding Questions

#coding-interviews #technical-interview-tips #programming-interviews #interview-preparation #interview