Just wrapped up a senior SWE loop at Adidas Tech in their Herzogenaurach office. Sharing because I couldn't find anything useful when I was prepping.
The system design round was 60 minutes with two interviewers, one being my potential team lead. No LeetCode-style problems here. They gave me a prompt roughly equivalent to: design a product catalog service that feeds both the e-commerce site and in-store inventory systems in near real-time.
What they cared about: Consistency model choices. They pushed back hard when I defaulted to eventual consistency without justifying it. Scale reasoning. Adidas does huge global drops (think Yeezy-style release days). They explicitly asked how my design handles sudden 50x traffic spikes. API contract design. They wanted a clear interface between services, not just boxes and arrows. Trade-offs. Every time I said "I'd use Kafka here," someone asked "why not SQS, why not a database queue." You need actual answers.
They didn't ask me to implement anything, but they did ask me to walk through an API spec in pseudocode for one endpoint. That part caught me off guard.
I came from FAANG so the signal was different. They weren't looking for the "correct" Google-style answer. They wanted to see that I could reason under uncertainty and communicate with non-engineers, because the teams are cross-functional (tech + product + brand).
Level context: The role was listed as Senior Software Engineer, which in their internal banding is roughly E5/L5 equivalent based on scope. Scope was owning a domain end-to-end rather than a service.
What to prepare: A scalable read-heavy service (catalog, search, recommendations) Event-driven architecture basics (Kafka, event sourcing) Caching strategies at different layers How you'd approach data consistency across regions
One thing I didn't see mentioned anywhere: they ask follow-up design questions on the trade-off you picked, not just the happy path. Practice defending your decisions out loud.
Total loop was 4 rounds: phone screen, take-home, system design, and two behavioral rounds on the same day. About 3.5 weeks from first contact to offer.