Urazuke — the junior developer in the era after hand-written programming: what changes in their training, with what objective to train them, and how

Author: Pablo Kuschniroff, assisted by Claude Code. Version 1, 18 October 2026. This document accompanies the main document of the method and the two parts of the course (new project, inherited project). It is written for three readers: the one who runs a team and has to decide what to teach the people who come in; the one who teaches or mentors; and the junior themselves, who wants to know what to become. The odd words are in the glossary of the main document. Public repository: github.com/pkuschnirof/urazuke.

Why I am writing this

For thirty years, a junior developer was trained in a single way: by writing code under supervision. They came in half knowing a language, they were given small, bounded tasks, a senior reviewed their code, and in two or three years of writing and being corrected they learned the trade. The code was both the work and the school.

That is over, and not because juniors are no longer needed, but because the model writes the code. With my method, the one who builds does not read the code: they demand evidence. So the question I am asked, and that I ask myself, is honest and urgent: if the junior no longer writes the code, how do they learn? And what do they learn? And in order to become what?

I have an answer, and I write it from two places. One, the three systems I built this way, in which I was the only human and where I saw, incident by incident, which skills saved me and which ones I never needed. The other, the years of teaching systems engineering before the models existed: much of what has to be taught to a junior today is what classical systems engineering always taught and the industry stopped practising when the trade became "programming". The model forces us to go back to what the trade was before the keyboard covered it up.

A warning so as not to be misread: I am not saying that the junior does not have to know how to program. I am saying that they are no longer trained by programming, and that what they have to know about programming changes in nature: from trade to literacy.

What a junior used to do, and what they do now

BeforeNow, with the method
What they produceCode, under supervision.Evidence: contracts, semantic trees, specified pending items, completeness checks, written decisions. The code is produced by the model.
How they learnBy writing and receiving corrections on the code.By directing the model step by step and receiving corrections on the evidence they demanded and the evidence they accepted without demanding.
What the senior reviewsTheir code.Their judgement: what they asked the model for, what the model assumed without them detecting it, what they accepted as "done" without proof.
What their typical mistake isA bug.Believing the model.
When they are usefulWhen they write code that does not have to be rewritten, and that takes time.When they finish their first small project with the twenty-four steps: the method does not promise speed, it promises an operable system and a formed judgement.
What they becomeA programmer who knows more languages and frameworks.Someone who can answer for a system without having written a line of it: a systems engineer who directs models.

The impact on the focuses of training

I will say it first in one sentence and then take it apart: what loses weight is everything the model does better than a junior of two years, and what gains weight is everything the model does badly and the method exists to correct. I did not invent that second list: it is the list of the model's failures in the references document, looked at the other way round. Every failure of the model is a skill the human has to have.

The focuses that lose weight

The focuses that gain weight

I order them by the step where they are exercised, because that is the way to teach them.

  1. Requirements engineering (steps 0, 2, 3, 5). Interviewing an owner who does not know what they want, writing in prose what they want, naming use cases, building the semantic tree of the business, specifying a pending item with its acceptance criteria in the "given, when, then" form, distinguishing a primary datum from a derived one and asking for the primary one instead of estimating it. It is skill number one, and it is the one the industry stopped teaching twenty years ago. The model is terrible at this by design: it fills the gaps with the most probable thing, and the most probable thing is not what the business needs.
  2. Design of the verification (steps 8, 7, 12, 19). Not writing the test: knowing which test proves what, why a test has to be seen in red before it is worth anything, what an end-to-end test is and what is a simulation that proves nothing, which number decides something and with which instrument it is measured, how a report is read and the verified is told apart from the believed. The junior has to be able to say "that test does not prove what you say" without reading the test.
  3. Reading evidence (every step). Reading a report from the model with trained distrust: finding the claim without proof, the "it should work" disguised as verified, the undeclared blind spot, the "done" that was not Ref. 43. This skill did not exist as a focus of training because there was nobody who lied with such confidence and such good prose.
  4. Sizing and operation (steps 3, 4, 15, 16 to 22). What an environment is, how something is deployed, what continuous integration is, what is measured in production, what an index is, a breaking point, an alert threshold. It used to be another role's territory; now the junior directs the model that does it, and has to know what to ask for and how to verify that it was done.
  5. Security and consequence (steps 14, 18). Which actions of the system act on the world, what a lock is, what fail-closed is, what a vulnerability is and why a dependency upgrade is a change.
  6. Decision and communication with the owner (steps 1, 6, 20). Asking well, with a recommendation and an alternative; writing a decision with exact words, a date and an owner; writing a manual that a person who does not program can follow. In the method, the junior is the translator between the owner and the model, and the translation goes both ways.
  7. Instrumental English. The prompts of the method are in English, because models follow instructions with more precision in English. You do not need to speak it; you need to read a prompt and understand every clause, and to be able to write a new clause when the case calls for it.
  8. The catalogue of the model's failures. Recognising, by their smell, every way the model gets it wrong: it assumes instead of asking, it invents a primary datum, it over-reports, it does the "while I am at it" outside the scope, it refactors what was not asked for, it improves your words, it closes without evidence, it goes quiet when it does not know. The four corrections I made in session that turned into rules Ref. 45 are the example: each one is a failure that a trained junior has to detect in the first report.
  9. Cost as a budget. Tokens, continuous integration quota, the owner's time. The junior who does not look at the cost repeats the multi-agent crew that spent twice as much and delivered half Ref. 6.

What the junior does have to know about programming: literacy, not trade

Here is the nuance that matters most to me, and the one most often misread. A junior who never wrote code does not know when the model lies in the code, and the method has a moment, which today I mark as a hypothesis in the main document, at which the human does have to look. That is why the minimum literacy is not negotiable. The list:

It is taught in the first stage, it is practised throughout the course, and it is not the trade: it is the literacy that makes it possible to practise it.

With what objective to train a junior

I will say it bluntly, because everything else depends on the clarity of the objective. The objective of training a junior in the era after hand-written programming is to form somebody who can answer for a system in production without having written a line of its code: who can take a small project through the twenty-four steps end to end, directing a model, demanding evidence at every step, deciding with the owner, and knowing at all times what is verified, what is believed and what is not visible. I call it, provisionally, the technical owner of the evidence: the one who does not read the code and can nevertheless say, with proof in hand, that the system does what the business asked for and is going to keep doing it tomorrow.

Three consequences of the objective, which order the training:

  1. The artefact of evaluation is the evidence, not the code. A junior is evaluated by the agreement they wrote, the tree they built, the pending item they specified, the red they demanded, the report they did not accept. The rubric of annex A of the course manual already says it: not climbed, climbed, climbed with evidence of judgement. That third level, being able to tell of a case in which the model got it wrong and how they detected it, is the real objective.
  2. The reflex is formed with incidents, not with theory. Nobody learns to distrust the model by reading that one should distrust it; they learn when the model says "done" and it was not, and they discover it in the test environment. That is why the course has deliberate tests (leaving a question unanswered and seeing what the model does; leaving assumptions in the survey), and that is why the training has to have designed incidents, not only tasks that turn out well.
  3. The junior is trained in the whole method, not in one stretch. The temptation is to put them "to do pending items" in the loop, which is the closest thing to giving them small code tasks. It is a mistake: the loop without the start-up is building on sand, and the junior who never did a step 0 or a step 3 does not understand why step 5 has the shape it has. The two guide projects exist for that: one new and one inherited, end to end, the twenty-four steps and the eight stations.

How to train them: the plan

What follows is the plan I would use, and that I am going to use with the first cohort: four stages, with no deadlines (the method does not have them, and neither does the training: each stage ends when its exit list says "yes"), with a mentor, on the two guide projects of the course, and afterwards a small real project with a real owner.

Stage 1: literacy, and the model as an object of study

Stage 2: the new project, with a mentor

Part 1 of the course manual, exactly as it is, on the guide project "Turnera" or on a small project of their own. The twenty-four steps. With three mentoring rules:

Stage 3: the inherited project, with less mentoring

Part 2 of the manual: the inherited Turnera, or a small real legacy system. The normalization stretch and the first two blocks. Here the mentoring goes down: the mentor reads the recovered map and the discrepancies, the audit report with its speed marks, and the closing of the first bug in corrective mode. The objective of this stage is for the junior to learn what the new project does not teach: to read somebody else's system through the model, to decide with the owner what of what the code does is wrong and what was a forgotten rule, and not to rewrite.

Stage 4: the real project, alone

A small real project, with a real owner who has fifteen minutes a day, end to end. The mentor does not intervene; they read the retrospective with numbers at the end. If the junior reaches production with the twenty-four conditions of the go-live checklist at "yes", they are trained. If not, the list says exactly which step to climb again, and that is training too.

What measures progress

Not how many pending items they closed. Three things, in this order:

  1. How many times they caught the model, and in which step. A junior who in the whole new project has not caught the model even once is not looking: the model always fails.
  2. How much it cost the owner. Minutes a day of questions; if they go up, the junior is passing on to the owner what the method asks them to resolve themselves (step 1).
  3. The quality of their proposal to change the ladder. It is the indicator of judgement: a junior who proposes a concrete change, justified with an incident of their own, understood the method as something alive and not as a list.

The impact on the roles and on the team

I say this because whoever runs a team is going to ask me. If the junior is trained this way, the team changes shape:

The risks, said without softening

What is still to be worked out hypothesis

  1. How much programming one has to have done in order to read somebody else's code well. My intuition is that what matters is having debugged, not having written, and that a little is enough. No data yet.
  2. The four-stage plan is written from my projects and from what I taught before the models, not from a cohort. The first one is going to correct it, just as it will correct the course.
  3. Whether the "technical owner of the evidence" is a new role or the systems engineer of always with another tool. I lean towards the second, and then the name is superfluous; but the market is going to need a name, and I prefer to propose one before it proposes a worse one.
  4. What happens to the junior who joins a team that does not use the method. This document assumes that the team adopts it; if not, the junior trained this way is going to collide with a senior who asks them for code. I have no answer, except that the method is published so that that senior can read it.