Skip to content

Python for a Coding Assessment

A refresher path through the Python graph for someone who has written Python before and has an assessment coming: run and read, rebuild the core, then work the way an assessment expects.

Domain
Python Programming
Estimated time
About 30 hours
Formats
reading, video, practice, project
Cost
Free
Status
draft · v0.1.0
License
CC BY-SA 4.0

Outcomes you will reach

Resources

No resources listed yet.

Who this is for

Someone who has written Python before, has not used it much lately, and has an assessment coming: a take-home, a pair-programming session, or a technical screen. It assumes you can already read code and are not meeting the language for the first time.

It is a path through the graph, not the curriculum itself. Every step names the outcome it serves; if you already have one, skip it — that is the point of nodes.

Plan

Refresh, about 8 hours

Rebuild the floor, fast. If a step feels easy, prove it with the evidence on the node and move on.

  1. Get running. Outcome: Run a Python program and read its errors. A virtual environment, a script that runs, and reading a traceback bottom up. Break a program three ways on purpose and name each exception from the message.
  2. Reclaim the structures. Outcome: Choose the right built-in data structure. The one that matters under time pressure: what does this code ask most often? Do the timing exercise — list membership against set membership at 100,000 items.
  3. Functions. Outcome: Write functions with clear signatures. Defaults, returns, and meeting the mutable-default trap once.
  4. Iteration. Outcome: Iterate and transform data in Python. Comprehensions where they clarify, generators where the data is large.

Strengthen, about 12 hours

The parts a reviewer actually looks at.

  1. Failure. Outcome: Handle errors deliberately. Catch what you can answer; let the rest travel.
  2. Data in and out. Outcome: Read and write files and structured data. pathlib, CSV, JSON, encoding.
  3. Tests. Outcome: Test Python code with pytest. Spend real time here: in a take-home this is half the grade. Practise the four cases — ordinary, empty, boundary, wrong.
  4. Shape the data. Outcome: Model data with classes and dataclasses. And know when a dict was enough.
  5. The library. Outcome: Reach for the standard library first. Counter, defaultdict, itertools, datetime.

Assessment-ready, about 8 hours

  1. Cost. Outcome: Analyse what Python code costs. Find the accidental quadratic in your own old code; there is usually one.
  2. Conduct. Outcome: Solve a coding problem under assessment conditions. Timed problems, out loud, restating before writing.

Beyond the assessment, about 2 hours

Not usually graded, worth having.

  1. Types. Outcome: Annotate and check Python types.
  2. Handover. Outcome: Ship a small Python project. If your assessment is a take-home, move this into Strengthen and do it before the attempt.

Project

Build one small tool end to end and submit it as if it were the assessment: read a CSV of something you care about, compute a summary, write the result out, and cover it with tests. Then hand the repository to someone else and have them run it from the README alone. Every question they ask is a defect.

Check your progress

Use the take-home task as a mock, under time, before the real thing. The evidence statements on each outcome are the checklist: if you can produce what the node asks for, you have it.

Open Degree does not track your progress and never will — keep your own list. The nodes are the list.

Check your progress

project

Python Take-Home Task

A timed take-home in the shape real hiring uses: read messy data, compute a result, test it, and hand over a repository someone else can run.