Programme

Software Engineering Practice

A 16-week, project-based programme for programming graduates: work on an existing system, then data pipelines, an AI feature measured against a baseline, and a project delivered to real users.

Who it is for

Graduates of programming or computing courses who can already write code and want to practise professional software work.

What you need first

Working knowledge of one programming language, basic SQL and Git.

What you will be able to do

  • Read, change and test an existing codebase with confidence
  • Build restartable data pipelines that detect and recover from errors
  • Integrate an AI feature and judge it against a reference solution on quality, time and cost
  • Deliver and improve a product with evidence from real users

Structure

16 weeks with 2 sessions a week of up to 3 hours: 90 scheduled hours in total. Cohorts of 12 to 18 students work in teams of three.

Week by week

  1. Week 1

    Reading an existing codebase

    Navigate, run and reason about code you did not write; reproduce and fix a reported defect.

  2. Week 2

    Changing behaviour safely

    Add a feature behind tests; keep changes small and reviewable.

  3. Week 3

    Data and permissions

    Database changes, migrations and access rules for the maintenance request system.

  4. Week 4

    Testing and release

    Automated test levels, a delivery pipeline and a first deployment.

  5. Week 5

    Data quality

    Validate, profile and reject bad data at the boundary.

  6. Week 6

    Processing pipelines

    Build a restartable pipeline with clear stages and idempotent steps.

  7. Week 7

    Failure and recovery

    Detect errors, retry safely and reprocess without duplicates.

  8. Week 8

    Integrating an AI feature

    Add a model-enabled feature with a defined purpose and operating boundary.

  9. Week 9

    A reference solution

    Build the non-AI baseline and compare it with the AI feature.

  10. Week 10

    Measuring quality, time and cost

    Evaluate the feature on an agreed test set; record latency and cost.

  11. Week 11

    Handling failure

    Design the fallback path and human review; decide what ships.

  12. Week 12

    Market project: discovery

    Choose a real problem, interview users and scope a first release.

  13. Week 13

    Market project: first build

    Deliver a usable slice to real users.

  14. Week 14

    User trials

    Run structured user sessions and record findings.

  15. Week 15

    Documented improvement

    Prioritise, change and show evidence of improvement.

  16. Week 16

    Final delivery and individual assessment

    Team delivery, demonstration and an individual technical discussion.