That intuition gets built the slow way: write it yourself, get it wrong, find out why. The next generation can still get it. It just has to be on purpose now, because the job won't force it on them anymore.
Software engineers have been adapting to technology changes and paradigm shifts for decades (compare your SWE stack today with what it was 20 years ago). In this regard, we were much more prepared for AI to dramatically change how we build software (i.e., we almost write no code manually anymore).
AI can produce very high-quality code, especially if you know how to guide it well. However, I'm worried about one thing: The people getting most value out of LLMs and AI coding agents today are the experienced software engineers who cut their teeth writing code manually for decades and have good intuitions on how to build good software.
I wonder what will happen to the next generation of SWEs who never wrote code and their entire experience was prompting AI agents to build stuff, add features, and fix bugs.
54
We are absolutely and irreparably cooked: terminal2shell.com
1
144
Problem 1: I will deeply understand every solution.
Problem 140: it's two pointers, next.
The interview, on a problem I've solved twice: …
55
If the AI passes your coding test, test the two things it still fumbles: explaining why the solution is correct, and catching the case where it isn't.
That was always the real interview. The typing was just the visible part.
Coding interviews are changing faster than most people realize.
I recently read a post by Felix Rieseberg, an engineering manager at Anthropic who led engineering on claude[.]ai, cowork and claude code desktop.
He has stopped giving coding interviews.
His reason claude is now better at them than the candidates.
Here's what that means for how engineers get hired
1. The coding interview has lost its signal
For years, small coding challenges were a weak but real predictor. If you could define a problem quickly and find a clean solution, you'd probably do well on his team. That's no longer true.
In his words, there's no more point in a React challenge than in quizzing people about assembly, because claude is better at both. He also says his most impactful engineers succeed regardless of how they'd score on these tests. If the tool passes your test, the test isn't measuring the candidate.
2. Newcomers notice what veterans stopped seeing
When Felix interviewed at Notion, they asked him to design offline mode. He later learned it was a "trick" question. Everyone believed the CEO would never allow the experience it required. It turned out nobody had ever checked. He was new, so he simply asked.
A year later it happened the other way around. He'd wanted dashboard TVs for the teams, hit resistance, and gave up. A new hire had the same idea, and Felix told him not to bother. The new hire had already asked, and the TVs arrived the next day. In one year, Felix had become the person who assumes things can't be done.
New people spot problems and opportunities that everyone else has stopped noticing.
3. The catch: nobody listens to the new person
Newcomers have the fresh view but no influence. In most companies, you need years of credibility before anyone backs your idea, because building things used to be expensive. So juniors were expected to finish tickets faster, not to propose ambitious ideas.
That has changed. Building things is now cheap. Two relatively new Anthropic engineers built a prototype of a desktop app for Claude Code in one weekend, and the first public version shipped about 8 days later. They skipped the PRD, the approval meetings, and the wait for design resources. They built the thing and showed it.
4. His playbook for engineers without status
First, start from business impact, not your backlog. Figure out what the company actually needs. A useful shortcut is to learn what your manager's manager is trying to achieve.
Second, pick one ambitious idea that would significantly move that goal.
Third, build a working prototype over a weekend.
Fourth, keep it to one idea. His most common criticism of juniors is that they hide three great ideas among twenty bad ones in a single prototype. The prototype should make leadership understand the opportunity and see that you're the one who can run it.
Fifth, use your fresh perspective. You still experience the product the way users do, and you haven't yet learned all the reasons something is supposed to be "impossible."
5. What I'd test instead of LeetCode
Felix says he hasn't figured out the replacement yet. For now he looks for small prototypes that show taste, empathy and principled thinking. Here's what I'd add:
Give candidates a vague problem with no spec and watch which questions they ask before building anything. Give them a 300-line PR written by an agent with three subtle bugs and see if they find them, since most of the job is now reviewing AI output. Give them 60 minutes with any agent they want and watch when they trust it, when they step in, and when they throw work away. Then show them two working solutions and ask which one should ship and why. None of these have an answer key, and that's what makes them useful.
6. Why this is good news for juniors
Felix says he's seeing comparatively new engineers overtake people who are probably better coders and have been around much longer. AI closed most of the output gap. It didn't close the judgment gap. A junior who ships one focused, well-reasoned prototype now has more to show than someone who solved 500 LeetCode problems.
7. The uncomfortable part
"Hunger beats tenure" is easier when you have free weekends, savings, and no second job. Weekend prototypes favor people who already have time and a financial safety net. And "hunger" can easily become an excuse to push out experienced engineers. The playbook is good. Hiring should still measure judgment, not hours worked.
LeetCode tested whether you could write the code.
The new interview tests whether you know which code not to write.
1
83
One more for the list: "The AI's solution passes the examples. Find the input that breaks it."
That question is basically the coding round now, and it rewards the same fundamentals LeetCode did.
Interview questions I'd prep for in 2026 (now that AI writes half the code) 👀
→ "Your AI agent broke prod. How do you find what changed ?"
→ "Walk me through a PR you reviewed. What did you catch ?"
→ "Explain this code you didn't write."
→ "When would you NOT use AI for this ?"
→ "Build a small feature end to end, out loud."
The LeetCode-only grind is lowkey cooked
What did they ask in your last interview ?
73
Adding this interview question 😂
Chinese researchers have developed the best shortest-path algorithm in 41 years!
Dijkstra’s Algorithm has been the undefeated king of the shortest path for over 40 years.
Whether you’re using Google Maps, booking a flight, or routing internet packets, Dijkstra is the engine running in the background.
Since 1984, textbooks have taught that its efficiency was hit by a "sorting barrier."
To find the shortest path, you have to sort the points by distance. And sorting has a mathematical floor you can’t cross.
Until now.
A research team from Tsinghua University just published a paper that shatters the 41-year-old record.
They proved that Dijkstra is not optimal.
By combining the logic of the Bellman-Ford algorithm with a revolutionary "recursive partial ordering" method, they figured out how to find the path without fully sorting the nodes.
The results are a massive shift in theoretical computer science:
- The first deterministic improvement to the Single-Source Shortest Path (SSSP) problem since 1984.
- A new time complexity of $ O(m \log^{2/3} n)$, officially beating the long-standing $ O(m + n \log n)$ limit.
- On massive sparse graphs (like the web or global logistics), this means finding the best route significantly faster than previously thought possible.
For four decades, the greatest minds in algorithms believed this limit was absolute.
Last year, even the legendary Robert Tarjan won an award proving Dijkstra was "optimally efficient" at sorting distances.
Tsinghua’s answer? Stop sorting.
The world’s most settled problem is suddenly wide open again.
If we can break a 40-year-old law in basic graph theory, what other "impossible" speed limits are waiting to be crushed?
Readers added context they thought people might want to know
In real world testing it was found to be slower than Dijkstra.
“We compare these implementations against Dijkstra's algorithm on sparse random graphs, grids, and U.S. road networks[...] Dijkstra's algorithm remains 3 to 4 times faster in all tested scenarios.” arxiv.org/abs/2511.03007
2
3
1,472
Binary Tree Max Path Sum: the recursive function returns node + max(left, right) to the parent, but tracks maxSum with node + left + right. two separate concerns. the path can turn at a node but can’t extend after turning. [-10,9,20,15,7] → 42, not 34. firecode.io/firelogs/problem…
84
Sort Colors trips most people on one thing: after swapping with blue, don't advance white. that element is unexamined. after swapping with red, advance both. it was already a 1. that's the Dutch National Flag algorithm. Apple, Google, Meta ask this. firecode.io/firelogs/problem…
55
Longest Palindromic Substring trips people on one thing: odd vs even palindromes. 'cbbd' → 'bb' requires the even-center check (expandAround i, i+1). only checking single chars gives you 'c', which is wrong. two expand calls per index, not one. firecode.io/firelogs/problem…
51
Combination Sum is the problem where backtracking clicks. add, recurse, pop. passing `start = i` not `i + 1` in the recursive call is what makes it combinations not permutations. without it, [2,3] and [3,2] both show up. firecode.io/firelogs/problem…
41
Swap Nodes in Pairs: the pointer update order matters. prev.next = second, then first.next = second.next, then second.next = first. Flip any two and you lose the rest of the list. And return dummyHead.next, not head. head isn’t first anymore. firecode.io/firelogs/problem…
1
1
32
Most people compare nums[mid] with nums[left] for Find Min in Rotated Sorted Array. Gets messy for the unrotated case. Compare with nums[right]: if mid > right, min is in the right half. Otherwise at mid or left. O(log n), no special cases. firecode.io/firelogs/problem…
28
Word Search is Number of Islands + one thing: reset the cell after DFS. that line IS the backtracking. skip it and dead-end paths permanently block valid ones. ABCB fails exactly because of this. Amazon, Bloomberg, Apple ask it constantly. firecode.io/firelogs/problem…
58
Maximum Product Subarray is Kadane's with a catch. track a running max AND a running min. negative numbers flip signs, so your minimum can become your maximum. [-2, 3, -4]: min at index 1 is -6, multiply by -4 and you get 24. firecode.io/firelogs/problem…
31
Phone keypad letter combinations. The complexity is O(4^n) not O(3^n) because digits 7 and 9 have four letters, not three. Easy to get wrong in an interview. Also: return [] for empty input, not a list with an empty string. Apple asks this 24 times in recent data. firecode.io/firelogs/problem…
25
Phone keypad letter combinations. The complexity is O(4^n) not O(3^n) because digits 7 and 9 have four letters, not three. Easy to get wrong in an interview. Also: return [] for empty input, not a list with an empty string. Apple asks this 24 times in recent data. firecode.io/firelogs/problem…
59
Most people think merging two sorted linked lists needs O(n) extra space. it doesn't. you splice existing nodes by redirecting pointers, no new allocations. dummy node, compare heads, attach smaller, advance. Google, Meta, Amazon, Adobe all ask this. firecode.io/firelogs/problem…
66
Insert Interval is O(n) not O(n log n) because the input is pre-sorted. three cases: before (pass through), overlap (expand), after (output insert, swap current in). that swap is why out.add(insert) always works at the end. firecode.io/firelogs/problem…
47






