Thursday, February 15, 2024

# How To Prepare For Google Interview Software Engineer

## Once You’ve Got The Job

How to prepare for the Google Software Engineering Interview

Congratulations!

Keep learning.

You’re never really done.

`**********************************************************************************************************************************************************************************************************Everything below this point is optional. These are my recommendations, not Google's.By studying these, you'll get greater exposure to more CS concepts, and will be better prepared forany software engineering job. You'll be a much more well-rounded software engineer.**********************************************************************************************************************************************************************************************************`

## Google Interview Experience For Software Engineer 2020

• Last Updated :30 Jun, 2021

Round-1 :

• Given an array and a matrix. You have to find if the array is present in the matrix. You can start from any point and go in 4 directions. Return the starting and ending pairs of indices if the array exists otherwise return false.

Round-2 :

Hey geek! It’s time to become a success story instead of reading them. Check out our most renowned DSA Self Paced Course, now at a student-friendly price and become industry ready. And if you are looking for a more complete interview preparation resource, check out Complete Interview Preparation Course that will prepare you for the SDE role of your dreams!

Feeling prepared enough for your interview? Test your skills with our Test Series that will help you prepare for top companies like Amazon, Microsoft, TCS, Wipro, Google and many more!

• Given a matrix of 0s and 1s, find the shortest path from start to end. You can move in 4 directions and can travel only through 0s.

Round-3 :

• Create a treasure hunt and find the treasure which is present in one of the n rooms. You have r keys . Start point Room 1.

Round-4 :

• There are n jobs, you have to schedule the jobs on a machine. Given the job start time and duration. Schedule the jobs is best optimal way.
• In continuation of the above question, there are k machines. Schedule the jobs in the most optimal way.

Round-5 :

• Tell me something about yourself.
• What differentiates yourself from others.
• Little discussions over my extra activities written in resume.

Most candidates fail to do this. But before investing tens of hours preparing for an interview at Google, you should take some time to make sure it’s actually the right company for you.

Google is prestigious and it’s therefore tempting to assume that you should apply, without considering things more carefully. But, it’s important to remember that the prestige of a job won’t make you happy in your day-to-day work. It’s the type of work and the people you work with that will.

If you know engineers who work at Google or used to work there it’s a good idea to talk to them to understand what the culture is like. In addition, we would recommend reading the following resources:

Don’t Miss: How To Crack Google Software Engineer Interview

## Microsoft Software Engineer Salary

According to Comparably, a Microsoft Software Engineer earns \$136,877 annually.

This includes a base salary of \$121,962 and a \$14,915 bonus. The annual salary can range from \$74,000 to \$188,000. The offer you receive will be based on many factors, such as your skillset, experience, and the value you bring to the organization. Your final package will depend on how you perform during the interview and how well you negotiate.

## Take Ownership Of Your Education

Big Tech interviews are both fairly standard and widely documented. There is a wealth of resources to prepare for the coding interview and a growing pile of systems design resources.

It’s easy to get lost in so much information: which is why you should make a plan on how you will get “interview-ready”.

Create a study plan with topics you want to cover for the interview types you’re expecting to have. Learn the theory, then practice this with practice and exercises where you create something from scratch: implementing a data structure, drawing up a diagram.

There is no shortage of people complaining about the difficult interview process Big Tech has. However, I know of no other industry where you can get a high-paying job with no college degree, no connections: purely through interviews that are fairly standard among the highest paying employers like Netflix, Airbnb, Uber, Facebook, Pinterest, and others.

Tech interviews being “standard” across the Big Tech makes preparing for these a high-leverage activity: study once, interview many times. Once you prepare, just make sure your software engineering resume grabs the attention of the recruiters.

Good luck – and if you are looking for more advice for senior and above interviews, I have some.

Recommended Reading: How To Interview For A Promotion

## How To Prepare For Your Engineering Interview

Contents

At various points throughout every engineers career, he or she must participate in a conversation with a hiring manager or a group of managers regarding employment status.

Whether you seek employment with a new firm or a new position with your current employer, this conversation, and the entire interview process, is your opportunity to advance your career.

Much like your resume should create a positive first impression of you as an engineering professional, the interview process should reinforce your overall value to a potential employer, and enable them to envision you as a productive member of their team.

The pressure to interview well can cause anxiety, but when you know the process and apply the key guidelines for successful employment conversations, you can approach the task as a learned skill.

## Preparing For The Google Interview

In order to improve your chances of acing the Google interview, and to prevent you from having to spend another 6-months waiting to reapply, you should definitely stack the odds in your favor and prepare.

But how do you prepare effectively? There is no shortage of websites like HackerRank, LeetCode, ProjectEuler, TopCoder, etc. that serve as technical interviewing problem farms.

Sure, you could spend your time grinding through every single problem on LeetCode, but is the massive time investment really worth it? Is there a more efficient way you could be preparing?

Everyone has a finite amount of time and energy, and therefore using both resources as effectively as possible is an important factor in optimizing for both. Deliberate, consistent, and targeted practice is integral to successfully navigate the Google interview.

Recommended Reading: How To Write A Thank You Letter For An Interview

## General Software Engineering Interview Questions

On the technical side of things, being aware of the principles of software development like operating systems, object-oriented programming, functional programming, test-driven development, continuous integration, design patterns and version control is essential. Depending on the nature of the role you go for, networks, databases or systems basics might also be required.

Read the job description thoroughly, and prepare yourself to be able to give the definitions and speak about the main benefits. You might not have practical experience, but its good to be able to talk about why they are important and discuss some industry trends.

My very first mentor told me that I should apply for a role based on where I want to be, rather than where I currently am

You dont have to cross out every requirement of the job spec. My very first mentor told me that I should apply for a role based on where I want to be, rather than where I currently am. If you have some free time, trying to build some small side projects to improve your familiarity with a new technology is a great idea as well.

## Common Technical Interview Mistakes To Avoid

Mock Google interview (for Software Engineer job) – coding & algorithms tips

Knowing what not to do can be just as important as knowing what to do, so lets quickly cover a few common technical interview mistakes.

1. Not preparing enough

Seriously, theres no such thing as too much coding interview preparation. The good news is, most candidates dont put in that time. So it doesnt take much to really pull ahead of the pack, says Parker . Its such a bummer as an interviewer to watch a candidate really come up short and just think to yourself, I can tell youre smartif you had just reviewed some of this stuff Im sure youd be able to get this.

2. Jumping into the code without taking a moment to think it through

You might be eager to start solving the problem, but take a few minutes to question your assumptions and make a game plan first! Starting too quickly gets a lot of people into trouble when they could have taken a moment to prevent confusion down the road, says Refael . Some of the most common mistakes candidates make are avoidable. Pause for a moment to think through the problem-solving process.

3. Being too arrogant or opinionated

4. Not making conversation/chit-chat

Read Also: What Is One Way Video Interview

## Microsoft Software Engineer Interview Process And Timeline

A Microsoft Software Engineer Interview Process takes 4-8 weeks to complete. Microsoft receives a huge volume of applications and wants to make sure that you are interviewed for and placed in the right division based on your skills.

The Microsoft Software Engineer interview steps are:

1. Getting the Interview

2. Round I â Phone Screen

2.1. Recruiter Screening

3. Round II â Onsite Interviews

4. Results

Interviewers normally will also ask about the factors that attracted you to the company and to the software engineering role. Its crucial to do some research about the company in advance and prepare answers to questions, such as:

• What interests you about their industry?
• What made you interested in the company?
• What do you expect to achieve by working there?
• How does your background fit with what they do?
• What makes you think you would be a good fit for their culture?

Knowing already about the software products they build can take you a long way. This involves both understanding the product space and being somewhat familiar with the technology stack. I usually leverage interview preparations as an opportunity to learn something new and understand if I would be interested in contributing to it. Then I am able to ask more relevant questions during the interview. Moreover, I find it much easier to be successful in an area that Im interested in.

Dont worry about not knowing all the technologies they use. Being open about what you dont know looks good to most interviewers. Showing an interest to learn their domain before being offered the job looks even better.

Recommended Reading: What Are The Common Questions In A Job Interview

## Interview Tips For Engineers

The first few minutes of any in-person social interaction greatly influences a persons impression of you, so it is important to present yourself well from the first moment of interaction, to impress and inspire a hiring professional with your total offering of conduct, capabilities, experience and work history.

Thoroughly review your resume and know everything that it includes. Dont get caught by surprise by an interviewers question about something that you forgot was there. Make sure that youre prepared to discuss each bullet point regarding your education, accomplishments, and experience.

Prepare an updated list of professional references, including past managers and supervisors, and have it ready for your interview. Make sure you have secured permission from each reference.

Try to learn in advance the names of people with whom you will be interviewing. Research their background via Google or professional sites like LinkedIn to seek common professional connections such as education, work history, or colleagues. Knowing their professional background and interests will help you prepare your own questions and anticipate potential lines of questioning.

Plan Key Talking Points

## How I Got Here

I started programming in middle school, but when it came time for college I pursued a degree in Economics. My rationale was that there would be too many programmers looking for jobs by the time I graduated. Boy, I was wrong.

Later, I joined the Army to become a programmer, but the recruiter talked me into a military intelligence position, and I spent the next two years studying the Korean language. I served in South Korea for 2 years afterward.

Before I left the Army, I attempted to get back into programming and was surprised at the difficulty. I had learned BASIC in middle school and kept programming it through high school. But I restarted my programming studies with C++, and the leap was too large. I just couldnt grasp it.

I did enjoy making websites, however, but I used software with a Word-like interface that I used to publish my websites. I didnt know how to make websites from scratch.

After the Army, I decided to stay in Korea for a year and teach English. I used my nights and weekends to study web programming, using Perl, HTML, CSS , JavaScript, and SQL.

After a year of intense study, I landed a job in the Seattle area, and Ive been here ever since.

Ive been a web developer now for 15 years. Ive started 3 companies, 2 of which are still running and generating revenue. Ive worked at large and small companies, helped startups launch and grow, and recruited and managed teams. Ive been a product manager, a CEO, a designer, and a marketer.

You May Like: Who Was Interviewed On Npr This Morning

## Dont Forget The Behavioral Aspects

For a Microsoft Software Engineering Manager Role, you may be asked questions such as describing past experiences of leading a project, collaborating with cross-functional teams, handling difficult associates, and more such behavioral questions.

When answering open-ended questions, use the STAR or CAR method to structure your responses. We have covered these methods in detail in the article.

## Dont Study As Much As I Did

Yes, I took 8 months. But I could have abbreviated the process. Like any startup with a big goal, you make mistakes and do things that waste time. There are many things I wish I go back and do differently.

I studied topics I didnt need to, some because I thought I would need them for the interview, and some because I wanted to have the knowledge on hand for when I started working. I didnt want to be a burden on the team Im assigned to. It turns out I simply over-prepared.

I spent 3 weeks reading a 1,000-page book on C++. I dont remember 1,000 pages worth, but I know a good bit about C++ now. As it turns out, Im using Python for the interview, not C++. I had assumed I needed C++, C, or Java, but I was wrong. Its good to ask, not assume.

I read way more books than I needed to. There are only 3 or 4 books I should have read.

I have a code catalog of dozens of algorithms that I review, most of which I wouldnt expect in an interview. You dont need to do that.

I watched many hours of YouTube videos but could have watched far less, and spread out topics over time.

I should have stopped reading books and watching videos earlier and started on coding problems sooner. I would have been able to spend more time applying the topics I learned.

My sense of fear led me to study far more topics than I needed to.

Read Also: How To Practice For Coding Interviews

## Mindset Is Important When Preparing For Your Software Engineer Interview

Of course, your technical skills are very important for the software engineering interviews. But dont underestimate the importance of your soft skills. People will work with you every day so they should feel like you are a pleasant person to work with. There is a big part of the job that is not about you writing code, but collaborating with other principles and teams.

Collecting and understanding requirements, being able to articulate the problem in technical and non-technical ways, informing stakeholders about progress and problems are only some of them. If you believe you have some strong asset in your personality try to showcase this throughout the process.

How to: Prepare for a Google Engineering Interview

Google receives more than two million resumes but hires only around 4000 employees every year so its not easy to get noticed by recruiters for interview calls. Take the referrals through some connections working in these companies or you can take the help of LinkedIn and online coding platforms to increase your chances for interview calls. Below are some points that will help you in getting the call for interviews

• Try to make a single-page resume and include only relevant things. Make it short, precise because none of the recruiters has more than 15 seconds to scan a CV. Write down only those things you are comfortable with, do not fake anything because the interviewer can spot that easily during the interview. If you are mentioning your project then mention the complexity of your project as well. Check the link Resume Building Resources and Tips for the guidelines to prepare your CV.
• You can participate in or which is a coding competition hosted by Google. If you reach Round 2 in Google Code Jam, you might be contacted by Google.
• Keep your Linkedin, Github and other profiles updated, hiring managers uses these tools like LinkedIn, alumni databases, and professional associations to find out suitable candidate.
• Recommended Reading: What Are The Best Interview Questions To Ask A Candidate

## What Exactly Is Google Looking For

At the end of each interview your interviewer will grade your performance using a standardised feedback form that summarizes the attributes Google looks for in a candidate. That form is constantly evolving, but we have listed the main components we know of at the time of writing this article below.

In the first section of the form the interviewer fills in the questions they asked you. These questions are then shared with your future interviewers so you don’t get asked the same questions twice.

#### B) Attribute scoring

Each interviewer will assess you on the four main attributes Google looks for when hiring:

• General cognitive ability. This is often referred to as “GCA” by Googlers.The company wants to hire smart TPMs who can learn and adapt to new situations. Here your interviewer will try to understand how you solve hard problems and how you learn.
• Role-related knowledge and experience. This is often referred to as “RRK” or “RRKE” internally.The company wants to make sure that you have the right experience, domain expertise and competencies for the position you’re applying for. For instance if you’re applying for a “Technical Program Manager – Google Cloud” position then you’ll be expected to have in depth knowledge about cloud computing.
• In this middle section, Google’s interviewers typically repeat the questions they asked you, document your answers in detail, and give you a score for each attribute .