xAI Software Engineer Interview Experience
xAI
In the second coding round, he shared a bunch of code for some LLM thing and kept saying, "go through the code, go through the code" whenever I asked for inputs or outputs. I didn’t write a single line, and honestly I was glad when the next round got canceled.
Interview process
I applied online and the process started with a 30-minute engineer screen instead of a recruiter screen. After that, they scheduled what I was told were the final rounds: two coding interviews on one day and a design round the next day. The first coding round was a standard LRU cache interview and felt fair, but the second one was rough because the interviewer gave me a big LLM-related codebase, refused to clarify inputs or outputs, and just kept telling me to read the code. That same evening, they canceled my last design round and then ghosted me when I asked for an explanation. Overall it felt very inconsistent: one interviewer was reasonable, the next was not, and the process ended without any real closure.
Interview rounds · 4
- 1
Phone screen
BehavioralProject DiscussionI started with a 30-minute screen with an engineer, not a recruiter. It felt more like a light background check than a real interview. He asked about my software engineering experience, whether I leaned backend or frontend, and a couple behavioral things. The whole thing was easy and pretty informal.
Q1. Tell me about your software engineering background and whether you are more backend or frontend.
How they answeredI told him I am about 80% backend and 20% frontend, and I walked through my general software engineering background from that angle. The questions were more job-description based than language-specific, so it was mostly about the kind of work I had done rather than quizzing me on a stack.
- Q2. What is the achievement or project you are most proud of?
Q3. Are you interested in working at xAI?
How they answeredI just said yes. Honestly I was surprised by that question because I expected 'why are you interested in joining xAI?' instead. Asking whether I was interested felt odd since I was already in the interview process.
- 2
Technical round
CodingData Structures & AlgorithmsTechnicalThe first coding round was a normal data structures interview with an engineer based in London. Compared to the later round, this one felt standard and fair. I got an LRU cache problem, explained my approach first, and then coded. I had some minor bugs at the end, but the interviewer seemed to understand that my algorithm was right.
Q1. Implement an LRU cache.
How they answeredI went with the standard linked list plus dictionary approach so get and put could be O(1). I explained that up front and then jumped into the implementation. I did not fully finish the code cleanly in time because there were a couple minor bugs I could not iron out, but the interviewer seemed to understand my approach and was pretty helpful about it.
- 3
Technical round
CodingTechnicalArtificial IntelligenceThe second coding round was completely different and honestly a bad experience. Instead of a clean problem statement, the interviewer dropped a large codebase into the editor and told me to fill in one empty function. The code looked related to LLM or agent-style logic, and I kept trying to get basic clarification, but he just kept telling me to read the code. I never even wrote a line because I could not pin down the inputs, outputs, or expected behavior.
Q1. Complete this specific empty function inside a larger LLM-related codebase.
How they answeredHe shared a bunch of code with multiple classes and asked me to implement one function inside it. The code seemed tied to LLM or agent behavior, something like passing words into sentences, but there was no clean problem statement. I kept asking what the inputs and outputs were and even asked for a sample test case so I could anchor myself, but he just repeated 'go through the code.' I could not figure out what he wanted from the skeleton alone, so I did not write a single line. During the round I already felt it was not worth it.
- 4
Final / onsite round
System DesignI was told there was one more design round after those two interviews, and that was supposed to be the last stage. After my second coding round, I got a cancellation email for the design interview. I emailed the recruiter asking why and also mentioned that the second coding round was not what I had expected, but I never got a response. I am not even sure whether that last round would have been system design or more object-oriented design because the recruiter only called it a design round.
Tips from the candidate
I would prep the normal data structures stuff because at least one round was completely standard. But I would also spend some time getting comfortable reading messy, larger codebases and brushing up on basic LLM or agent concepts, even if the job description looks like plain software engineering. Also be ready for very little guidance in the interview, because in my case one interviewer would not even give a simple input-output example. I would not expect much prep help from the company side.
Company culture
What I saw was a pretty engineer-driven process. I did not have a recruiter screen at all, and from what I had read and from how this played out, it felt like engineers were heavily involved even in screening. The interviews also did not feel standardized. One round was a normal coding interview, and another felt like the interviewer could do whatever he wanted, which made the experience pretty uneven. I also got the sense that they may expect AI or LLM familiarity even when the role is described more broadly as software engineering. On top of that, the communication was weak: no prep call, no useful clarification in the hardest round, and then silence after they canceled the last interview.