HR phone screen: Some questions about my immigration status. They pointed out that the job had to be onsite in San Diego, though the interviews could take place in Cupertino.
The second round was with the hiring manager. We discussed my current work and projects, then my previous QA experience: benchmarking and regression, reducing the false-failure rate, optimizing HPC resource usage, and reducing the time each benchmark run took.
For false failures, because the cases were regression tests, I couldn't guarantee identical results every time. I created a matrix that could match all the correct results, which solved it.
For HPC resource usage, I optimized the scripts and defined levels of resource usage, such as level 2 during the day and level 4 at night, allowing different HPC resources to be claimed. I then explained the timing of the optimization.
For reducing benchmark runtime, I used scripts to generate XLSX charts and plots.
After that round, I heard nothing for two weeks. HR then said they were reorganizing, which explained the long silence. Now they were inviting me onsite.
The onsite required a portfolio: a PowerPoint presentation introducing my previous projects.
I went to the Cupertino headquarters, got a coffee, and started presenting with eight people watching. I talked for half an hour and answered questions, most of which overlapped with round two.
In my previous QA experience, regression results were failure, pass, and false failure, which could really be counted as two categories. Had I ever classified a result more finely? For example, was a failure a major crash or just a failure around the edges? And although my benchmarks didn't have pass/fail results, who reviewed the performance measures? Was there a rating, and how did we determine whether a benchmark was okay?
I answered that we didn't rate individual results; instead, we classified each test case. Because each test case had a clear testing purpose, we didn't need a detailed classification of the results.
For the benchmarks, my previous QA work had been a one-year internship, and I needed my manager's help, such as deciding how much deviation from the baseline counted as a major issue or a known issue. Overall, I don't think I answered this very well, because I had previously only had pass/fail options.
From that, I could tell that their team must have test cases, or be researching test cases, where results could be graded automatically and more quickly. That would save someone from manually deciding which person or team should handle an issue next.
After the panel, I interviewed with two team members, one working on benchmarks and one on regression. They asked a palindrome question. The basic problem was simple, but what the interviewer wanted was how I would rate what percentage of a string was a palindrome. I stumbled over this answer. Rating things wasn't an area I was very comfortable with.
Then I interviewed with two managers, because after the reorganization they had two managers running one team. They mainly asked about my current firmware-development work and some testing procedures.
The next day, two people from San Diego asked algorithm questions. I couldn't get the algorithm problem written. Rejected...
Overall, my earlier interviews matched the team fairly well, but I failed the last algorithm round. That really was something I hadn't prepared well enough for.
Discussion
Loading comments…