Taro Logo

Software Engineer Interview Experience - Auburndale, Florida

April 1, 2014
Positive ExperienceGot Offer

Process

I chose direct onsite interviews because I interviewed in the past and did well that time. The timeline from sending my resume to the interview day was two weeks, and from interview day to the offer over the phone was another two weeks.

The syllabus for the interviews is very clear and simple:

  1. Dynamic Programming
  2. Super recursion (permutation, combination, 2^n, m^n, n!, etc. type of programs, often related to NP-hard problems)
  3. Probability-related programs
  4. Graphs: BFS/DFS are usually sufficient
  5. All basic data structures, from Arrays/Lists to circular queues, BSTs, Hash tables, B-Trees, and Red-Black trees, along with all basic algorithms like sorting, binary search, and finding the median.
  6. Problem-solving ability at a level similar to TopCoder Division 1, 250-point problems. If you can consistently solve these, you are almost sure to get in with a two-week brush-up.
  7. Review all old interview questions on Glassdoor to get a feel for the topics. If you can solve 95% of them at home (including coding them up quickly and testing them in a debugger + editor setup), you are in good shape.
  8. Practice coding: write often and write a lot. If you can think of a solution, you should be able to code it easily and without much thought.
  9. Knowledge of distributed systems and practical experience is very beneficial for design interviews.
  10. Good understanding of basic discrete math, computer architecture, and general mathematics.
  11. Coursera courses and assignments provide a lot of the necessary knowledge.
  12. Note that all the above, except for the first two points, are also useful in "real-life" programming.

Interview 1: A graph-related question and a super recursion problem.

Interview 2: A design discussion involving a distributed system with parallel writes and reads occurring at different sites.

Interview 3: Array and tree-related questions.

Interview 4: Designing a simple class to perform a specific task. This wasn't easy, but it wasn't overly difficult either. It requires a strong understanding of basic data structures to consider various designs and their trade-offs.

Interview 5: Dynamic programming, and a computer architecture and low-level performance enhancement question that requires knowledge of trees, binary search, etc.

At the end, I wasn't tired and rather enjoyed the discussions. I believe the key was long-term preparation and the time spent on TopCoder for several years (on and off, as I enjoy solving the problems).

Conclusion: "It's not the best who win the race; it's the best prepared who win it."

Was this helpful?

Interview Statistics

The following metrics were computed from 1 interview experience for the Google Software Engineer role in Auburndale, Florida.

Success Rate

100%
Pass Rate

Google's interview process for their Software Engineer roles in Auburndale, Florida is incredibly easy as the vast majority of engineers get an offer after going through it.

Experience Rating

Positive100%
Neutral0%
Negative0%

Candidates reported having very good feelings for Google's Software Engineer interview process in Auburndale, Florida.

Google Work Experiences