I applied for the position online and was contacted by the recruiter a couple of days later. He sent me an assessment, which I completed, and he then forwarded my application to the Hiring Manager. They scheduled a four-hour, back-to-back interview, including two technical interviews, a behavioral interview, and a case (technical) interview.
The first technical interview was about designing an application that involved a smart meter that sends data every minute. The tenant could view their OWN usage, and the manager could only view usage on a building basis.
The second technical interview was a coding challenge: "Find the least amount of change for the sum." I had a hard time solving this problem, to be honest. I prefer to solve it iteratively, but the interviewer insisted on solving it recursively. At the end, I couldn't solve it. So, I asked if he could provide some pseudocode on how he would have solved it. He refused, saying he wasn't allowed to. After I did some Googling, I found the answer. Apparently, this is a very common problem, and yet he wouldn't allow me to see the answer. Whenever an interviewer asks me to solve a problem, I always ask them to solve it afterward. Eighty percent of the time, they can't or can't walk me through their logic. This is the exact reason why I'm always against whiteboard interviews. You do not ask questions that you can't solve in the same amount of time under pressure.
So, I asked him if he could solve the problem iteratively rather than recursively, and why recursively when you can solve it iteratively, especially since the input array can be large. He failed to give a proper answer, as he was probably just memorizing the answer instead of understanding it.
Note to interviewers: If you ask whiteboard questions, make sure you can solve them in the same amount of time and pressure. Don't pull questions out of thin air, or I'll embarrass you. The interviewer clearly had no skills in solving the problem, as he couldn't even explain his solution.
The last two interviews were behavioral and a case study. Pretty common questions.
Overall, the experience was bad. You are interviewed by people you'll never see again if you get an offer there. What made it worse is that the guy who asked technical questions was probably pulling questions from LeetCode or HackerRank, looking at the solution, and thought, "Yeah, the solution is easy enough" without attempting it himself. The solution can be simple, but getting to that solution isn't easy.
The technical interviewers were shocked when I interviewed them back; I guess they're not used to being asked questions during an interview. Remember, an interview is two-way. I don't like working with people who think they're superior because they know the answer beforehand.
My interviewers were all Indian. My experience interviewing with Indian interviewers is that some of them can make you sound like an idiot if you can't find the answer within minutes. However, when I interviewed them back, they failed to show me that they could do better.
Design a smart meter system.
Given an array of integers and an integer sum, find the minimum number of coins for the given sum.
The following metrics were computed from 8 interview experiences for the Capital One Software Engineer role in Mexico.
Capital One's interview process for their Software Engineer roles in Mexico is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Capital One's Software Engineer interview process in Mexico.