What you will be able to do#
- Run an attempt-to-review loop that records the first meaningful obstacle and any assistance used.
- Distinguish reading, reproduction, reconstruction, and transfer instead of treating all solved states as equal.
- Keep review dates and practice volume sustainable without creating a punitive backlog.
Use one complete practice loop#
External problem catalogs can supply prompts; Engineering Foundry supplies the reasoning and evidence workflow. No ownership, endorsement, employer attribution, or interview-frequency claim is implied by linking to an external problem.
- Attempt independently under declared mode and prior exposure.
- Classify the first obstacle precisely.
- Request the smallest useful hint if needed.
- Derive the approach, implement it, and test it deliberately.
- Explain the invariant and complexity in your own words.
- Reflect on the first failed assumption or line.
- Reconstruct later, then try a separately recorded variant.
What counts as an attempt#
An attempt begins when you commit to a prompt, mode, prior-exposure state, and working conditions, then make a genuine effort to define the contract and approach. Record whether the prompt or solution was previously seen and whether hints changed the work.
Reading an editorial and typing its solution is useful study only if labeled as study. It is not evidence of independent recognition or implementation.
Use the smallest useful hint#
Ask first for an observation or representation, then for an invariant or data structure, and only then for a transition or pseudocode. Stop revealing as soon as you can resume productive work. Record what the hint changed.
Help is not failure during learning. The honest boundary is that an assisted attempt supports different evidence from an independent one.
Separate review from transfer#
Review reconstructs prior reasoning: define the state, explain the update, and locate the earlier failure without automatically exposing the full solution. Transfer changes the story, constraint, or required output enough to test whether the invariant can be selected and adapted again.
Complete the review before claiming transfer. A familiar prompt with a hidden title is still familiar; declare exposure rather than promising novelty.
Write a useful mistake log#
Record the question and catalog version, mode, prior exposure, intended state or invariant, first failed assumption or implementation line, assistance used, a counterexample, corrected reasoning, one retrieval question, optional review date, and a linked transfer variant.
Replace labels such as 'forgot the solution' or 'careless' with a statement that can drive the next session.
Choose review dates deliberately#
Use an optional date when a specific reconstruction will matter. Move or remove it when the interview date, workload, or evidence changes. Engineering Foundry should not manufacture an unbounded scheduler or imply that missing a date erases progress.
Keep the scope sustainable#
Prefer a small number of complete attempts and reviews over a streak that hides assistance and skips reflection. Stop adding new catalog items when a recurring prerequisite or implementation defect is already clear.
Know when to revisit foundations#
Return to a foundation when several different problems fail for the same reason: undefined input size, confused object identity, an unjustified invariant, a missing recursion base case, or incorrect space accounting. Repair the shared concept once, then test it on a fresh context.
Worked example#
Turn a vague miss into a retrieval plan
The learner writes, 'I forgot the solution,' after seeing a prefix-count editorial.
- Name the state failure: prefixMap[x] is the number of earlier prefixes whose total is x.
- Name the update-order failure: updating before counting allows the current boundary to act as an earlier boundary.
- Write the retrieval question: why must target 0 begin with one empty-prefix count?
- Choose a changed-input follow-up with signed values and a different target.
Outcome: The log now identifies a testable reasoning defect and one bounded next attempt.
Apply the idea#
Rewrite 'I forgot the solution' as a precise mistake-log entry for a prefix-count problem, then give one retrieval question and one changed-input follow-up.
Reveal the worked answer
Entry: 'I failed to define prefixMap[x] as the number of earlier prefixes with total x, and I updated the current prefix before counting matches.' Retrieval question: 'Why does the empty prefix need count one, and why do I count currentPrefix - target before updating?' Follow-up: solve the same exact-sum contract with signed values such as [3, -2, 2, 1] and a new target, explaining every map update.
Choose the next session#
Declare prior exposure and mode, record any hint used, and finish with one precise reflection; browser-local use remains available when account persistence is not.
Open the private-capable practice workspaceSource and review record#
This original Engineering Foundry guide was checked by Codex against the recorded research scope on 2026-09-05. It has not received independent human editorial review.
Evidence IDs: SRC-DSA-LEETCODE-EXPLORE SRC-DSA-TECH-HANDBOOK-PLAN