cswork / libraryOpen practice workspace

Interview experiences · Anthropic

Anthropic Software Engineer Interview Experience — OA, a Python LRU Cache Phone Screen, and Rejection After a Full Onsite

RejectedOA → Tech screen → OnsiteInterviewed 2026-03

Posting my Anthropic interview from a while back. I felt like I nailed everything. The culture round and the hiring manager round also went okay. In the end I still didn't pass. It feels way too arbitrary. (Maybe my background just wasn't a great match — I was interviewing for a billing platform team, but I've never worked on payments.) OA - recipe manager Phone screen - coding Q2 - LRU cache, th…

Posting my Anthropic interview from a while back.

I felt like I nailed everything. The culture round and the hiring manager round also went okay. In the end I still didn't pass. It feels way too arbitrary. (Maybe my background just wasn't a great match — I was interviewing for a billing platform team, but I've never worked on payments.)

OA - recipe manager

Phone screen - coding Q2 - LRU cache, the usage was exactly like Python's functools.lru_cache. They had me write how to generate the key, and also how to restore the cache after a crash. I used a WAL (write-ahead log) approach. The interviewer seemed to like it. But I hadn't used Python in a while, so I was a bit nervous writing it, and I probably needed more hints than I'd like.

Onsite (VO) -
coding Q1 - web crawler
System design Q1 - batch GPU requests
Project deep dive
Culture round - grilled me with nonstop follow-up questions
Hiring manager - kept asking for details about my most impactful project, then asked some standard behavioral questions

Attaching the coding prep I put together myself (note: in my file, the Q2 LRU question doesn't exactly match the actual Q2 I got).

Interviewing with this company really does a number on your confidence. I had to go out and get a nice meal before I felt better.

Edit (2026-03-09 13:11 +08:00):
A lot of people asked what the LRU question actually looked like. Roughly like this:

class LRU:
    def generate_key(*args, **kwargs):
        # you need to implement logic here to generate a hashable key
        pass

    def call(func, input):
        # func is callable, the logic here is provided.
        # later followup is asking you to build logic to restore the cache if
        # LRU object is lost
        pass

Comments

Nothing here yet.

Join in on CSWork →