In the last post (Google – 2015), I mentioned that the recruiter for this position was willing to recommend me for a QA position. So, I agreed, and he passed me over to a different recruiter, one who ran recruiting for the test organization.
The new recruiter sent me an email with all sorts of useful information like “Be enthusiastic and show interest/passion for testing” and “Write very clean and structured code” and “Check for edge cases” and “Share your thought process with the interviewer!”. “Try to identify any bugs in your code and fix them along the way.” “Share your thought process with the interviewer!”, etc. After you get a few of these for developers, this one for testing seemed especially condecending. They still said “Please, refresh on your Computer Science fundamentals”…
We set a time for me to talk to the phone screener. I was on vacation at my mother-in-law’s house in rural Kentucky. The first part of the screen was straightforward. They asked me how to test an alarm clock. I talked and talked and talked and the interviewer finally stopped me, and we moved onto the programming part of the interview.
I don’t remember the problem that he gave me, but the internet connection out in rural Kentucky was not good enough to deal with Google Docs. That was a terrible connection, and I knew it, and there was nothing else I could do in that town. I could have driven to Elizabethtown or Bowling Green and gone to Barnes and Noble or Kroger and used that WiFi, but that would have been weird…
After the interview fell apart, the recruiter sent me an email to reschedule. That was very nice, actually. We rescheduled it for the next week, when I was back home with reasonable internet.
At the next interview, the new interviewer said, “Well, let’s see which question to ask you.” He paused for quite a while, and then said, “You have answered a lot of these questions before”. After another couple of minutes, he said, “OK, Let’s try this one.”
And the interview question was ridiculously difficult. Or at least I thought so. And I still do.
Write a program which, given an input string, will output a string that consists of the original string and the string that, when concatenated with the original, will form the minimum size palindrome possible.
So, if the string is “a”, the result is “aa”, “ab” produces “aba”, etc.
I did not finish the question, not even close. For one thing, I misunderstood the question initially, and spent 15 or 20 minutes producing wrong answers. And then I ran out of time.
After the interview, I spent 2-3 hours and came up with a solution that is proportional to the length of the string. And then I Googled other answers, and found none that actually worked.
And this is for a Test position?
I did not get an offer.