The first round was a screening round. It was a 45-minute round where one question on Data Structures was asked. The interviewer was friendly, and I asked a few clarification questions. The "truncate log message" program was asked.
You are given a structure:
c++ struct LogMessage { string source; string message; };
source is the filename, and message is the log message. You have a list of log messages from various sources (files). You are also given a max_log_messages limit, which is the maximum number of log messages you have to return on a fair basis.
Example:
Suppose you have the following log messages:
{ "f1": ["msg1", "msg2", "msg3", "msg4"], "f2": ["msgA", "msgB", "msgC", "msgD"], "f3": ["msgX"] }
If the max_log_messages limit is given as 5, then you should return:
f1f2f3The following metrics were computed from 450 interview experiences for the Google Software Engineer role in India.
Google's interview process for their Software Engineer roles in India is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Google's Software Engineer interview process in India.