Wrapped up a Cohere frontend engineer interview loop in April 2026. Wanted to share because most of what I found online was ML-focused and the frontend process is pretty different.
Background on me: 4 years React, worked mostly on design systems and data visualization. Applied for a senior frontend role on their platform team.
The short version: it's a real engineering bar, not a trivia quiz. They care about TypeScript, performance thinking, and how you build interfaces that surface complex ML output in a way users can understand. That last part is unique to an AI company frontend role.
The loop (3 rounds after recruiter screen):
Round 1: Coding (60 min) We worked in a shared TypeScript environment. I got two problems. First was implement a debounce function with a configurable delay (classic, but they cared about edge cases with immediate invocation). Second was a React rendering problem: given a recursive tree structure, render it as an expandable/collapsible component. State management, clean event handling, no external libraries. The interviewer was hands-on and collaborative, not watching silently.
Round 2: System design / architecture (45 min) Design a document annotation UI for reviewing model outputs. Think highlighting spans of text, adding labels, persisting state, handling conflicting labels from multiple reviewers. They care a lot about conflict resolution and optimistic UI patterns. I talked through selection range APIs, local state vs. server sync, optimistic updates with Zustand. They pushed on performance for documents with thousands of tokens.
Round 3: Behavioral + team fit (30 min) Standard impact questions but with an angle toward cross-functional work with ML researchers and product. They asked: how do you approach building a UI when the underlying model behavior is still changing?
What to prepare:
TypeScript solid. Not just types but generics, type guards, utility types. The coding round tests whether you actually write TS or just sprinkle it on JS.
DOM and browser APIs: the annotation UI question required knowledge of the Selection API and Range objects. Worth brushing up on things that don't come up in typical React tutorials.
Accessibility: they asked me unprompted about ARIA roles in the tree component. Have a real answer.
Performance: virtualization for long lists/documents came up in both rounds. Know why and when to use it.
Overall the frontend interview felt more senior-calibrated than I expected from a company whose main product is a language model API. Good sign that they take frontend seriously.