Course Structure
The course is structured in three major phases, beginning with the bootcamp followed by ongoing training and finally End Point Assessment period.
The course is predominantly undertaken in a single programming language, with small amounts of other languages when appropriate (for example, for web development or databases).
Bootcamp
The 5-week bootcamp is full-time led by the tutor and covers the full development stack.
The first three weeks of bootcamp consist of the following allocation of exercises to days. There is a slide deck presented at the start of each day over this period.
Week | Day | Exercise | Topics |
---|---|---|---|
1 | 1 | FizzBuzz | Writing logical and maintainable code |
2 | SupportBank (part 1) | File processing, exception handling and logging | |
3 | SupportBank (part 2) | ||
4 | BusBoard (part 1) | Calling APIs including combining data from different sources | |
5 | BusBoard (part 2) | ||
2 | 1 | Chessington (part 1) | Testing, including unit tests, frameworks and Test Driven Development |
2 | Chessington (part 2) | ||
3 | Bookish (part 1) | Creating and connecting to a database, the MVC model and effective user interfaces | |
4 | Bookish (part 2) | ||
5 | Bookish (part 3) | ||
3 | 1 | Bookish (part 4) | |
2 | DuckDuckGoose (part 1) | Version control in git, working in shared codebases and continuous integration | |
3 | DuckDuckGoose (part 2) | ||
4 | Mini-project planning (part 1) | Producing wireframes, user stories and technical design from a project brief | |
5 | Mini-project planning (part 2) |
Weeks 4 and 5 of bootcamp are spent implementing the project that the learners planned over the last two days of week 3. This will be done in groups (suggested group size being 8-10). On the final day of week 5, each group will present a demo of their project to their trainer (and potentially others).
Ongoing training
The ongoing training phase of the course consists of 14 modules that are completed part-time while the learner is working for their employer. During this period each learner also gathers a portfolio of evidence of work that they have done in the course of their employment.
Each module addresses one topic in-depth and is intended to take 4 weeks during which the learner is expected to undertake the following:
- Week 1: full day; learner performs self-led reading of the module content and has a one-to-one coaching call with their PDE.
- Week 2: full day; practical workshop involving all learners and the trainer(s), working through the exercises for that module.
- Week 3: full day; learner works independently on their portfolio.
- Week 4: half day; group workshop involving all learners and the trainer(s), in which the module is discussed and related to each learner’s employment. Each of these workshops has a slide deck of questions to review the module content, with the remaining time for group discussion and self-guided work on completing module exercises and/or their portfolio.
The modules are:
- Object-oriented programming
- Functional programming
- Asynchronous programming
- Tests (Part 1)
- Tests (Part 2)
- Databases
- The Software Development Life Cycle
- Further HTML & CSS
- Further Javascript, the DOM and bundlers
- Responsive design and accessibility
- Web servers, auth and security
- Data structures and algorithms
- Infrastructure and deployment
- EPA preparation
End Point Assessment Period
End Point Assessment (EPA) commences once a work-based project has been agreed between the learner and their employer, and approved by the British Computer Society (BCS), who are the assessors. The BCS have requested that the EPA Period duration be 6 months.
During the EPA period, the learner undertakes the agreed work-based project as part of their normal employment. Current advice from the BCS on the timings for this period are:
- 7 weeks performing the work-based project
- 2 weeks writing up the report
At some time in the remainder of the EPA period, the assessors will review the learner’s portfolio of work and address it in the apprentice’s professional discussion.