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
- Week 1
Reading an existing codebase
Navigate, run and reason about code you did not write; reproduce and fix a reported defect.
- Week 2
Changing behaviour safely
Add a feature behind tests; keep changes small and reviewable.
- Week 3
Data and permissions
Database changes, migrations and access rules for the maintenance request system.
- Week 4
Testing and release
Automated test levels, a delivery pipeline and a first deployment.
- Week 5
Data quality
Validate, profile and reject bad data at the boundary.
- Week 6
Processing pipelines
Build a restartable pipeline with clear stages and idempotent steps.
- Week 7
Failure and recovery
Detect errors, retry safely and reprocess without duplicates.
- Week 8
Integrating an AI feature
Add a model-enabled feature with a defined purpose and operating boundary.
- Week 9
A reference solution
Build the non-AI baseline and compare it with the AI feature.
- Week 10
Measuring quality, time and cost
Evaluate the feature on an agreed test set; record latency and cost.
- Week 11
Handling failure
Design the fallback path and human review; decide what ships.
- Week 12
Market project: discovery
Choose a real problem, interview users and scope a first release.
- Week 13
Market project: first build
Deliver a usable slice to real users.
- Week 14
User trials
Run structured user sessions and record findings.
- Week 15
Documented improvement
Prioritise, change and show evidence of improvement.
- Week 16
Final delivery and individual assessment
Team delivery, demonstration and an individual technical discussion.
