The course
One path, in order, from no Java at all to a full graded design round. Work top to bottom. Every chapter says what you need before it and what to read next.
Start here → 1.1 A class, an object, and main()the first chapter
33 of 33 chapters written. Reading counts toward nothing — the graded half is in the app.
Java, from nothing
No Java assumed. By the end of this part you can read and write the Java that every later chapter uses, and you will have compiled and run every example yourself.
Objects that hold their shape
The five SOLID principles and the habits underneath them. Each one is taught the same way: working code, a new requirement, the cost that forces a change, then the name of the principle.
Patterns you will actually be asked for
One pattern per chapter, in the order they turn up in interviews. Each chapter names the pattern only after you have felt why it exists, and says plainly when using it would be a mistake.
Designing under pressure
Everything above was preparation. This part is the graded half: the eight phases, the 20 problems with measured curveballs, and the 48 reference lessons you are now equipped to read.
After the course
High-level design, algorithms, databases and the rest of the interview loop are not taught here. This page says so plainly, and where to go for each.