Caffeinated Coder
Book an appointment
Software · Absolute beginner to software engineer

Software, start to finish

From what software even is to designing real systems. Every lesson is a small machine you can step through, then a short quiz. No experience needed.

10 modules53 lessons5 special topics58 available now
0 of 58 available lessons completed
Module 01 Beginner

What software is

What a program is, how a computer runs one, what the operating system does and how everything becomes bits.

Module 02 Beginner

First steps in code

Writing instructions a computer can follow: values, decisions, repetition and reusable pieces.

Module 03 Beginner

Data structures

Ways to organise data so programs can find and change it quickly.

Module 04 Intermediate

Algorithms

Step-by-step methods for solving problems, and how to tell which ones are fast.

Module 05 Intermediate

How programs really run

What happens under the hood: memory, translation, cleanup and doing many things at once.

Module 06 Intermediate

Designing code

Organising code so people can understand, change and reuse it.

Module 07 Intermediate

Tools of the trade

The everyday tools engineers use to write, share, test and ship code.

Module 08 Intermediate

Web and backend

How web apps are built: servers, APIs, databases and logins.

Module 09 Advanced

Building systems

Making software fast, reliable, secure and easy to deploy at scale.

Module 10 Advanced

Engineering practice

How software engineers turn ideas into working systems, together.

Go deeper

Special topics

Stand-alone deep dives. Take them any time after the module they build on.