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. I have never needed to be the smartest person in the room. My job, for seventeen years, has been building rooms where that stops mattering. Ransomware recoveries at 6 AM. A hundred-plus public repositories. An open-source, three-binary full-text search engine written 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 because I kept the timestamps. I’ll show them to you before we’re done. 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 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.
I want you to see one of those moments up close. On a call with a product leader — a genuinely pleasant one — I opened the way the process now requires: ID raised to the lens, the compelled declaration spoken onto the record. I’m not AI. His reply was warm and immediate: “I like the joke. It’s always fun. It’s a good icebreaker.”
Sit with the word always. On the administering side of the table, the humanity-proof has become a recurring bit — reliable light entertainment before the agenda. The ritual’s weight is visible only to the party under orders to perform it. Minutes later, the same leader apologized that back-to-back meetings had kept him from reading my resume — and what the system had shown him, it had scrambled, reordering my recent roles, so I spent the opening of my own evaluation correcting the machine’s version of my career. Hold those three facts in one hand: I was required to prove I was human. The proof was received as comedy. And neither the machine nor the human across from me knew who I was. The machine misread me, the human hadn’t read me, and I was the one under suspicion of being synthetic.
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 too — 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 is paid in friction by exactly the people it was supposed to find.
Counting islands in the age of AI
Now the middle of the funnel: the 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 isn’t anymore. AI has commoditized exactly the layer these puzzles test — clean-room implementation of well-known algorithms under time pressure. Asking flood fill 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.
Strip the puzzle 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 screens 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 — and here the story stops being hypothetical. Midway through this loop, unprompted, I handed the interview the incident walkthrough it never requested. Last December: a zero-day, a ransomware note, a fintech’s entire cloud footprint dark — roughly a million and a half a year in infrastructure, offline. My phone rang at 6 AM. Before the CTO’s. Before the AWS-certified senior engineer’s. Mine. I brought them back with seven hours of data loss and no ransom paid, then spent weeks in daily sessions with the CTO converting the recovery into policy — scripts he could run without me, a disaster-recovery plan that became company standard. Composure, ownership, verification, aftermath: the exact evidence a senior systems loop exists to extract, volunteered free of charge, threads dangling everywhere, begging to be pulled.
The response, verbatim: “Okay, cool. Awesome. We’re at the fifteen-minute mark.”
That is the finding underneath the finding. The loop didn’t merely fail to ask good questions. It could not receive good answers. Curiosity had no field in the form. Meanwhile, the questions that would have produced real signal sat unasked: where do you draw the FFI boundary during the transition? Which components earn Rust’s ownership model and which are fine as Go services? How do you strangle a monolith serving live DNS traffic without an availability dip? What did the Dyn-to-OCI rewrite get wrong? I would have paid to be asked. I offered to walk through my public repositories — diffs going back years, written before AI existed to write them for me. Instead, 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 in five hours, the only time a human being discussed AI with me was the moment I was compelled to deny being one — a denial the man across the table called his favorite recurring icebreaker. Then, in the interview room, AI was forbidden: no documentation, no tools, no assistant. A surveilled camera, a clock, and a trick question — a working environment that has not existed since 2022 and will never exist on this job.
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, 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 identity theater carries a deeper absurdity: I had already handed the loop the one humanity proof no synthetic candidate can fake — a 6 AM recovery with named executives who will take your call. The pipeline verified my pulse and discarded my life. For an internet-intelligence company, that should sting. The modern web crawls with agentic traffic — bots with crypto wallets paying their own way into your data, no fingerprint, no fatigue. A hiring pipeline that can’t distinguish synthetic candidates from real ones is a small preview of the product problem. Quarantining AI in HR software instead of treating it as core competency is describing your 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. And here is a sentence that took longer to write than any code I’ve shipped: I am a disabled engineer. For decades I refused that word. Where I began — inside Ceaușescu’s institutions — disability was not a protected status; it was a sorting mechanism, and being sorted was dangerous. So I ran a dishonest process on myself for most of my career: no incident reviews permitted, no postmortems on the one system I lived inside. Accepting the word was the hardest blameless postmortem I ever convened — decades late, one attendee, the person who signs the release notes.
I disclose this for one reason: so you read the next sentences correctly. The flood-fill puzzle is not beneath me. Under a clock, on camera, in adversarial prose in a language I learned second, it is aimed at me — at precisely the dimensions I finally stopped denying, none of which are the job. Trick-question formats are a tax on second-language readers and on plenty of disabilities that have nothing to do with engineering ability. The codebase does not word its bugs deceptively on purpose. Production incidents do not grade you on reading comprehension in your second language.
Let me be precise, because precision matters: 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 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 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 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 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 pull the thread. If a candidate volunteers one unprompted, that isn’t filler before your next agenda item; that’s the interview arriving early. 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. Treat references as evidence, not paperwork: if executives put their names behind a candidate, read what they wrote before your software replies for you. 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 puzzle’s only advantage 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, then act surprised when 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 see before signing, and I was running my own audit the whole time.
One exhibit: a leader gave me, unprompted and warmly, the culture speech. Home life intrudes on work all the time, he said; we don’t have this artificial boundary between real life and work life; as long as people get their work done, no one cares. I believe he meant it as a gift. Now audit the examples that came wrapped with it: meals cooked on camera during calls, meetings not quite compatible with your time zone, an executive online at 2 AM from the other side of the planet — that’s just the reality, right? Every example runs opposite to the framing: work intruding on home, narrated as home being welcomed at work. The speech’s most honest detail was accidental — the man delivering it mentioned his own home office, where no one ever bugs him. A boundaryless culture is cheapest for whoever already owns a door.
I am a boundary professional. Release management is the boundary between dev and prod, and every reliability number I’ve ever posted came from adding gates, not dissolving them. In my trade, work-life segmentation has another name: failure-domain isolation. “We don’t have this artificial boundary” translates to “we run everything in one blast radius.” There are no artificial boundaries — only enforced ones and failed ones. And notice the rhyme the loop had already taught me: it began by ordering my background blur off, dissolving my home’s boundary for the company’s gaze. I assumed that was the screening software being paranoid. The culture speech clarified it. The blur never comes back on.
Second exhibit, mine. I asked one diagnostic question: what’s the budget for an engineer’s workstation, and what’s the cadence? It sounds like perks. It’s a worldview probe — does the company treat engineer compute as capital or as expense? My own bench, built across seven years, once let me stand up an employer’s entire 75-microservice platform locally and take their single-region cloud multi-region in thirty days, on a company-issued laptop that could barely hold a video call. Because when I run terraform apply, the whole fail-fix-verify loop happens inside my own blast radius at zero marginal cost; what crosses to the metered cloud is a verified result, not an experiment. Where iteration is metered, verification gets rationed — and rationed verification is the 80% world I was once hired to end. In 2026 the same silicon is also a privacy boundary: it runs frontier-class open models air-gapped, meaning AI-assisted work on a fifteen-year-old proprietary C codebase where not one token leaves the building. I offered the arrangement plainly — company-owned encrypted drive, my compute, the IP boundary explicit — which is, I’d learn on that same call, the identical trust architecture the company pitches its own partners: run our sensors, because you can read every line that touches your data. Their pitch and my offer were the same argument. Neither side noticed, and I own my half of that miss — in the room I argued capacity when I should have said privacy out loud. What I got back was peripherals: pick a laptop, here’s a stipend, ask the engineering manager. Compute as comfort. The question was compute as capability.
Last finding, offered in the postmortem spirit because it generalizes past any one company: if you hold a leadership title — director, head-of, VP, earned or inflated, it genuinely does not matter — and the calendar hands you thirty minutes with a candidate whose reference list runs to EVP and CTO, the ante is thirty seconds of curiosity about who’s on the other end. Preparation can be a casualty of a calendar. Curiosity cannot, because curiosity is the one leadership behavior no pipeline can perform on your behalf. I spent years refusing to sign releases I hadn’t read; that refusal is where 99.9% came from. A loop that asks its leaders to evaluate candidates they haven’t read is asking them to sign unread releases — and the signature still certifies something. It certifies the culture. A process this incurious about evidence is usually attached to an organization that runs the same way inside.
How mine actually ended
I promised timestamps.
On Friday, after the loop had concluded, the pipeline’s automated agent sent a new requirement: all of my references, entered into the system, within 24 hours — or my candidacy would not be considered. So I made the calls you make. The EVP and the CTO of that fintech — the executives from the December story, the people who keep my number for 6 AM — stopped what they were doing inside a nine-figure-revenue company and wrote recommendations against a weekend deadline set by software. They followed through.
Monday, 5:00 PM Pacific: the automated rejection. No reason attached. Not a sentence.
Lay the sequence out, because sequence is the indictment. The loop heard the December story told live, and checked the clock. The system then subpoenaed that story’s witnesses on 24 hours’ notice. The witnesses appeared and vouched. The system rejected the file — by every observable sign, unread. Three chances to ingest human evidence; zero taken. Plus one burned afternoon of executive attention at a company that had nothing to do with any of this. The blast radius of a broken loop extends well past the candidate.
One more cut, the gentlest. “You have my email address,” a leader told me at the close of a call — sincerely — “feel free to reach out.” I never had it. Every channel I was ever given belonged to the automated agent. A sincere open door with no handle on my side — so when the rejection came, there was no human left to ask why. That asymmetry tells you who the system believes is disposable.
Blameless, specific, aimed at the process
I own this piece without ego, in the same spirit I used to sign release notes. Everyone I met was pleasant. The recruiter was candid. The product leader was generous with a half hour he didn’t have. The tape contains no villain — every indignity in it was produced by defaults nobody chose, running unattended. That is precisely what makes it worth writing down.
So here is the ask, addressed to every engineering leader who made it this far. Audit your funnel: count the hours of candidate time it consumes against the 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. Read what references write before your software answers for them. 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 algorithm recall worthless and systems judgment priceless. Engineering excellence was never the smartest person in the room. It was the honest process in the room. The companies that redesign hiring around that will staff the next decade. The ones that keep counting islands will keep wondering why the ocean looks empty.
“You have my email address,” they told me. Kindly. Incorrectly. Here’s one that works: 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.
답글 남기기