I applied for a JavaScript Engineer position via a generic eBay "we're hiring!" ad on Monster.com.
I received an email and a call quickly from an "outside recruiter" who raved about how eBay would do anything to recruit me. But, I've been around long enough to know that this was just her job and a sales pitch. eBay hiring operates like an assembly line:
So, there are four people whose sole job is to organize one portion of the interview process (at least for the group I ended up interviewing with).
I had a 45-minute phone interview with a guy who asked technical questions but didn't have me write code. Twenty minutes later, I had another 45-minute phone interview with a girl who asked me technical questions and had me write code snippets in Google Docs. I did okay (not great) on the first interview and seemed to say "I don't know" a lot during the second. I figured that I'd blown it and wouldn't hear back, so I moved on.
A few days later, I received a peculiar call from the internal recruiter. They were eager to do an in-person interview but wanted to confirm my continued interest in the position and that it wasn't too easy.
At the in-person interview, I walked past a large room. It had long desks with keyboards and LCD screens spaced about four feet apart. Each "station" was separated by a divider mounted on the desk. They explained that they were moving away from cubicles to this style, which made it look like a call center or like study desks at a library with less privacy. But, no, it's not a call center; software developers work there.
Since the engineers had no privacy, I could see across the entire room and observe that about 90% of the people were Indian, Pakistani, or from a similar background. Here and there, I saw a white or Asian face, but the vast majority were Indian. During lunch, I saw a large group eating around the communal break room table, and every single person was Indian.
I had six interviews over five hours, each lasting 45 minutes.
The first interviewer was likeable; we discussed XSL (from my resume), and he asked me to reverse a linked list.
The second interviewer was odd, had a thick accent, and would pause for long periods even after finishing his questions. He asked me to describe (but not code) the maximum sum subsequence algorithm, how I would handle the categories tab for eBay, and how I would design a stock ticker.
The third interviewer had me describe an algorithm to find the total number of matching pairs in an array.
The fourth interviewer had a thick accent and asked me to write code to implement a queue.
The fifth interviewer was the manager. We had lunch at the eBay cafeteria, returned to the room, talked about my background, and then he asked me to work through the "ABCDE x 4 = EDCBA" problem.
The sixth interviewer asked me about closures.
When the last interviewer walked me out, I asked how many interviews he conducts. He said he does about three interviews a week, and if I understood correctly, pretty much every week of his entire career at eBay. He's just a regular software developer, so hiring isn't his main job. It shows that they conduct a lot of interviews, and it's essentially an assembly line.
I felt that I did okay (but not great) during the interviews, but I strongly felt that I stood out because I wasn't Indian. Everything about my interview experience felt like I was in India, not only the people but the culture, the way of doing business, the preferences, the interests—everything. Don't they realize that the ideal candidate would be Indian? Why not yield to the obvious and focus exclusively on Indian candidates?
It seemed like a bad fit, so I moved on. A few days later, I received a voicemail, and when I called back, they said they wanted to make an offer. Uh, okay. They stated my relevant experience wasn't extensive enough, so they'd like to bring me in at a lower grade. But, as the recruiter said, who cares as long as they can meet my salary demands, right? Uh, I suppose. We discussed my current salary and salary goals, then the recruiter said she'd get me my offer by the end of the day or by the next morning.
No offer came, and I moved on.
A few weeks later (after the holidays), a different eBay recruiter called me out of the blue and said that the same group wanted to offer me the job. He gave a pretty hard sell about all the intangible benefits of the job, like the cafeteria, job security, and the eBay brand, so I figured they were setting me up for a lowball offer. And I was right. They made me an offer, and I told them the next morning, "Thank you for your offer, but I've decided to decline." I did discuss the offer with my family, but they were like, "No way, no how."
How would you write the code to reverse a linked list?
What is the time complexity (big O notation) of reversing a linked list?
How would you write the code to find the subsequence with the maximum sum of n integers?
How would you build a stock ticker service?
Find all pairs in an array that add up to a certain number.
The following metrics were computed from 37 interview experiences for the eBay Software Engineer role in San Jose, California.
eBay's interview process for their Software Engineer roles in San Jose, California is extremely selective, failing the vast majority of engineers.
Candidates reported having mixed feelings for eBay's Software Engineer interview process in San Jose, California.