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.

WeekDayExerciseTopics
11FizzBuzzWriting logical and maintainable code
2SupportBank (part 1)File processing, exception handling and logging
3SupportBank (part 2)
4BusBoard (part 1)Calling APIs including combining data from different sources
5BusBoard (part 2)
21Chessington (part 1)Testing, including unit tests, frameworks and Test Driven Development
2Chessington (part 2)
3Bookish (part 1)Creating and connecting to a database, the MVC model and effective user interfaces
4Bookish (part 2)
5Bookish (part 3)
31Bookish (part 4)
2DuckDuckGoose (part 1)Version control in git, working in shared codebases and continuous integration
3DuckDuckGoose (part 2)
4Mini-project planning (part 1)Producing wireframes, user stories and technical design from a project brief
5Mini-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:

  1. Object-oriented programming
  2. Functional programming
  3. Asynchronous programming
  4. Tests (Part 1)
  5. Tests (Part 2)
  6. Databases
  7. The Software Development Life Cycle
  8. Further HTML & CSS
  9. Further Javascript, the DOM and bundlers
  10. Responsive design and accessibility
  11. Web servers, auth and security
  12. Data structures and algorithms
  13. Infrastructure and deployment
  14. 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.