Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coddy

Software Engineer

via Coddy Path

Overview

The order a working engineer would teach you in: one language learned properly, the command line, version control, a database, then the data structures and algorithms every technical interview assumes, and finally code that other people can read. Free, hands-on, in your browser.

Syllabus

  1. Learn Python — Variables, control flow, functions, collections, then classes and objects, in Python. Everything after this step is written in a language, so this is the one to learn deeply rather than quickly. Prefer Java, C++ or Go? Each has a full journey on Coddy and the later steps ship in all of them.
  2. Learn Linux and the Command Line — Navigate the filesystem, manage permissions, chain commands with pipes, read logs and write a first shell script. Servers, containers, CI pipelines and most developer tools are driven from a terminal.
  3. Learn Git & Version Control — Commits, branches, merges, conflicts, remotes and undoing mistakes safely. Every job, every open-source project and every take-home assignment lives in a Git repository; learning it right after the terminal means every later exercise happens the way real work does.
  4. Learn SQL — Select, filter, join, group and aggregate real tables. Nearly every application is a thin layer over a database, and a software engineer who cannot read a query cannot debug the product they work on.
  5. Stack - Data Structures Series #1 — Stack, queue, linked list, binary tree and hash table, each implemented from scratch and then used to solve problems. This is the vocabulary of every technical interview and the reasoning behind every performance decision in real code.
  6. Recursion Challenges - Master The Recursive Thinking — Recursion first, then the classic sorts - bubble, selection, insertion, merge and quick - written and compared. You learn why an algorithm is fast, not just that it is, and see the same ideas animated in Coddy's algorithm visualizer.
  7. Clean Code - Write better code using Python — Clean code principles, an object-oriented project built end to end, and a bank of coding problems to solve without a tutorial. Readable code is the skill code review actually tests, and solving unfamiliar problems is what an interview actually measures.

Courses

Reviews

Start your review of Software Engineer

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.