This spring I interviewed with a company whose product I genuinely respect — an internet-intelligence platform built on DNS data, the kind of quiet infrastructure that keeps the modern web navigable. The role was Senior Distributed Systems Engineer. The mission: help rewrite a core product from C into Rust and Go.
I have lived this exact migration before. I was the Senior Release Manager who oversaw the release process while Dyn's C and Python codebase — an internet-intelligence product of the same species — was rewritten in Go inside Oracle after the acquisition, as that organization scaled from a few hundred engineers into what the world now knows as OCI. I reviewed the pull requests. I signed off on the code that moved from dev to prod. I watched release success climb from roughly 80% to over 99.9%, not because anyone got smarter overnight, but because the process got honest. Seventeen years of this. Ransomware recoveries at 6 AM. A hundred-plus public repositories. An open-source, three-binary full-text search engine I wrote from scratch.
I spent nearly five hours across this company's interview loop.
Not one question was about distributed systems.
The technical evaluation that decided my candidacy was a grid puzzle: given a matrix of 1s and 0s, count the islands. A freshman flood-fill exercise. In 2026, any AI assistant one-shots it in any language you name, and every candidate knows it, and every interviewer knows every candidate knows it.
I'm not writing this to relitigate my rejection. Rejection is part of the profession. I'm writing because the process itself is the story, and the process is not unique to one company. It is the industry default, and it is quietly broken at both ends.
The pipeline that optimizes for a human who doesn't exist
Start at the top of the funnel. Applicant Tracking Systems were sold to companies as a solution to volume: too many resumes, not enough recruiter hours. Fine. But an ATS doesn't evaluate people; it evaluates documents against an idealized keyword profile — a phantom candidate assembled from a job description that was itself probably written by committee, or lately, by AI.
Here is the joke the industry hasn't laughed at yet: the only applicants who match that phantom profile perfectly are the synthetic ones. AI-generated candidates tune their resumes to the keyword spec better than any honest human can, because they are keyword specs wearing a trench coat. So companies now run identity theater to compensate. In my loop, I was asked to disable background blur, hold three fingers in front of my face, and show government ID on camera — before a single technical word was exchanged. The screening software let the bots in, so the humans get treated like suspects.
The recruiter, to her credit, was candid: the tooling was surfacing candidates who weren't real, and it was making her job harder. Sit with that. The company's own operator, complaining to a candidate, mid-screen, about the software standing between them. The ATS was bought as a bot filter and has matured into a bot amplifier — and the cost of that failure is paid in friction by exactly the people it was supposed to find.
Then, at the bottom of the funnel, after five hours of a stranger's time: an automated rejection with no reason attached. Not a sentence. Systems that demand your face, your ID, your unblurred living room, and your unpaid afternoon cannot spare one string field explaining the outcome. That asymmetry tells you who the system believes is disposable.
Counting islands in the age of AI
Now the middle of the funnel: the algorithm puzzle.
I understand what these questions used to be for. Twenty years ago, watching someone traverse a grid told you something, because writing code from a blank page was the scarce skill. It is not the scarce skill anymore. AI has commoditized exactly the layer these puzzles test — clean-room implementation of well-known algorithms under time pressure. The flood-fill question has a canonical answer that has been indexed, blogged, and trained into every model on earth. Asking it in 2026 is like evaluating a structural engineer by hand-multiplying four-digit numbers with a calculator visible on the table that they're forbidden to touch.
So what does the puzzle actually measure now? Strip it down and three signals remain: memorization of textbook material, speed-reading of deliberately tricky problem statements, and willingness to perform a ritual both parties know is disconnected from the job. The first is obsolete. The second, I'll come back to. The third is the quiet one — it selects for compliance, for candidates who will nod along with "we know this doesn't really measure anything" and do it anyway. If you are hiring senior engineers to tell you hard truths about a legacy C codebase, screening for nod-along is screening out the trait you need most. Teams that nod along are the teams that are fully offline at 6 AM when the ransomware note arrives — I know, because I've been the phone call that gets made when that happens.
Meanwhile, the questions that would have produced real signal for this specific role were sitting right there, unasked. You are rewriting C into Rust and Go: walk me through where you'd draw the FFI boundary during the transition. Which components earn Rust's ownership model and which are fine as Go services, and why? How do you strangle a monolith serving live DNS traffic without an availability dip? What did the Dyn-to-OCI rewrite get wrong that you'd do differently? I would have paid to be asked those questions. I offered to walk through my public repositories, diffs going back years — before AI existed to write them for me. Instead, at one point, an interviewer told me they couldn't tell whether I could write code at all. Nobody had looked. The evidence was one click away, and the process had no slot for it.
The AI double standard
Here is the disconnect that should bother you even if nothing else in this piece does.
AI screened my resume in. An automated agent scheduled and corresponded with me. AI-generated fake candidates forced the identity checks I underwent. And then, in the interview room, AI was forbidden — I was required to simulate a working environment that has not existed since 2022 and will never exist on this job: no documentation, no tools, no assistant, a surveilled camera, a clock, and a trick question.
I don't use AI to think for me. I use it the way my generation used a datasheet: when I built embedded systems in C, nobody considered it cheating to look up pin specifications, and nobody considered a differential-equations reference a character flaw while assembling a circuit. A professional who hits an unknown looks it up and then interrogates the answer until the why is understood. That interrogation — solution back to problem — is the actual engineering. An interview that bans the tools of the job measures a job that doesn't exist.
And the deeper irony, for an internet-intelligence company in particular: the modern internet is crawling with agentic traffic — bots with crypto wallets paying their own way into your data, no pulse, no fingerprint. That is the threat surface of 2026. A hiring pipeline that can't distinguish synthetic candidates from real ones is a small preview of the product problem. Any company in this space that treats AI as a thing to be quarantined in HR software, rather than a core R&D competency, is describing its own blind spot out loud.
Who the format filters out
Now the part I have standing to say that most critics of interview culture don't.
English is my second language. I came to America from a Romanian orphanage. I'm a disabled engineer protected under the ADA, and I've spent 17 years shipping anyway. Trick-question interviews — where the problem statement is intentionally worded to mislead, under time pressure, on camera, with a stranger watching — are a tax on second-language readers and on plenty of disabilities that have nothing to do with engineering ability. Parsing adversarial prose fast is a skill. It is not this job's skill. The codebase does not word its bugs deceptively on purpose; production incidents do not grade you on reading comprehension in a language you learned second.
Let me be precise about what I'm claiming, because precision matters here: I am not accusing anyone of designing these loops to exclude people like me. I don't believe they were designed at all — that's the problem. They were adopted, unexamined, from a template written for a different era and a different candidate. But a filter doesn't need intent to have a slant. If your loop systematically taxes dimensions orthogonal to job performance — language, processing style, performance under surveillance — you are shrinking your own talent pool along lines you never chose and can't defend. That's not a values statement. That's a yield problem, and in some jurisdictions it's a legal-review problem too.
What a senior loop should look like
Criticism is cheap, so here's the alternative, concretely, for a role like this one:
Review the candidate's actual work first. If they have a decade of public code, spend thirty minutes in it before the call and make them defend their own decisions. Nothing exposes a faker faster than their own repository. Run the design session on your real problem — the C-to-Rust-and-Go migration you're hiring for — and grade the trade-off reasoning, not the syntax. Do an incident walkthrough: tell me about a 6 AM page you owned end to end, and let me pull the thread. Pair on a small, real task with every tool the job allows, AI included, and watch how they verify what the tools produce — that verification instinct is the senior skill of this decade. And when it's over, whatever the outcome: give the human a reason. Five hours of their life is worth one paragraph of yours.
None of this is exotic. All of it produces more signal per hour than flood fill. The only thing the puzzle format has over it is that it's easier to administer — and "easier to administer" is how we got the ATS, too. We keep letting the computer make management decisions because the computer is convenient, and then we act surprised when the reqs stay open for months while engineers who've already done the job walk out of the funnel.
The interview goes both ways
Candidates are interviewing you. Your loop is the only demo of your engineering culture we ever get to see before signing. When the demo is: identity theater at the door, no curiosity about a decade of public work, a ritual puzzle both sides privately dismiss, and a form-letter void at the end — senior engineers update accordingly. Not out of ego. Out of pattern recognition. A process this incurious about evidence is usually attached to an organization that runs the same way inside.
I own this piece without ego, in the same spirit I used to sign release notes: blameless, specific, aimed at the process. So here is the ask, addressed to every engineering leader who made it this far. Audit your funnel — count how many hours of candidate time your loop consumes against how many minutes of genuine evaluation it contains. Retire the puzzle theater for senior roles and interview against the actual job. Let candidates use the tools the job allows, and grade their judgment about the output. And close every loop with a reason, because the silence is data too, and it's going in posts like this one.
The industry is sitting on a generation of systems-aware engineers — people who came up through hardware, networks, operations, the unglamorous load-bearing layers — at the exact moment AI has made pure algorithm recall worthless and systems judgment priceless. The companies that redesign their hiring around that shift will staff the next decade. The ones that keep counting islands will keep wondering why the ocean looks empty.
If you've been through a loop like this — either side of the table — I want to hear it. I'll respond to every comment.
Top comments (0)