IBM Full Stack Software Developer study plan
IBM Full Stack Software Developer · Give each week a clear focus.
8 weeks · About 6 hours per week
Software Development Fundamentals
Explain the software development lifecycle and where requirements, design, implementation, testing, and deployment hand off to one another
Compare imperative, object-oriented, and functional styles and identify which style a given code snippet uses
Write and run a small program that uses variables, conditionals, loops, functions, and at least one class
Describe how Git tracks changes and perform init, add, commit, branch, merge, and log in a local repository
Your checkpoint
A public Git repository containing a working command-line program of 100+ lines with at least five commits and one merged branch, plus a README that maps each commit to an SDLC phase
Software Development Fundamentals
Distinguish unit, integration, and end-to-end tests and choose the right level for a given defect
Write automated tests for the week-1 program covering a normal path, a boundary case, and an expected failure
Apply the SOLID principles to refactor one class that has more than one reason to change
Trace a runtime error from stack trace to root cause and document the fix
Your checkpoint
A test suite of at least eight automated tests that all pass, with a short written refactoring note showing the before-and-after class design
Front-End Development
Structure a page with semantic HTML elements and verify it against accessibility requirements for headings, labels, and landmarks
Style a responsive layout with CSS flexbox and grid, including one media query breakpoint
Manipulate the DOM with JavaScript to handle a click event and update rendered content
Use browser developer tools to inspect the DOM, debug a script error, and check network requests
Your checkpoint
A responsive single-page site with a working interactive component, committed to Git, that passes an automated accessibility check with zero critical issues
Front-End Development
Build a small single-page application with a component-based framework and manage state across at least two components
Fetch data from a public API and render loading, success, and error states
Validate user input on the client and explain why client-side validation never replaces server-side validation
Explain how HTTP requests, responses, status codes, and JSON payloads flow between browser and server
Your checkpoint
A deployed single-page app that consumes a public API and handles all three fetch states, with a README documenting the request and response flow
Back-End Development
Implement a REST API with at least four endpoints covering create, read, update, and delete operations
Design a relational schema with a primary key, a foreign key, and one index, and write queries that join two tables
Connect the API to a database and persist records across a restart
Return correct status codes and structured error bodies for invalid input and missing resources
Your checkpoint
A running API backed by a database, with a request collection of at least ten saved calls that demonstrate success and failure paths
Back-End Development
Add authentication so that protected endpoints reject unauthenticated requests and accept a valid token
Hash and store user credentials safely and explain why plain-text storage is unacceptable
Write server-side tests that exercise the API against a test database
Document the API surface so another developer could call it without reading the source
Your checkpoint
A secured API with passing server-side tests and a published endpoint reference listing methods, paths, payloads, and response codes
Cloud, Containers, and DevOps
Package the week-5 API as a container image and run it locally with its database dependency
Explain the difference between a virtual machine, a container, and a container orchestrator, and when each is appropriate
Write a CI pipeline that installs dependencies, runs tests, and builds the image on every push
Identify where secrets belong in a pipeline and remove any credential from source control
Your checkpoint
A repository with a working containerfile and a CI pipeline that fails on a broken test and passes on a good commit, demonstrated by two pipeline runs
Back-End Development & Cloud, Containers, and DevOps
Deploy the containerized API to a cloud runtime and confirm it responds over the public internet
Add basic logging and a health-check endpoint and use them to diagnose one deliberately introduced fault
Review weak areas from weeks 1 through 7 and rewrite the notes for the two domains with the lowest practice scores
Complete a timed mixed-domain practice set and classify every miss by domain and error type
Your checkpoint
A live deployed endpoint with a health check, plus a one-page error log from the timed practice set listing each miss, its domain, and the specific concept to revisit
Milestones
Week 2: You can write a passing unit test for unfamiliar code and explain what each of the five SOLID principles prevents, without notes
Week 4: A deployed front-end app fetches live data and visibly handles loading, success, and error states; you can trace one request from click to rendered result
Week 6: An unauthenticated request to a protected endpoint is rejected and an authenticated one succeeds, both shown in saved request output
Week 7: The CI pipeline has visibly failed on a deliberately broken test and then passed after the fix, and no secrets remain in the repository history
Week 8: The API is reachable at a public URL, the health check reports healthy, and your timed practice score shows no domain below 60 percent