hey everyone. i'm a second-year BSIT student. i know basic HTML, CSS, Tailwind, and JavaScript, but i genuinely don't enjoy the UI/frontend side of things. i want to focus on backend development first and go back to frontend later once i have a strong foundation.
i put together a roadmap and wanted to get feedback on whether this is actually a solid path or if i'm missing something important.
my current skills:
– HTML, CSS, Tailwind (basic)
– JavaScript (basic)
– no real backend experience yet
the roadmap i'm following:
-
programming thinking (turning problems into programs — data, control flow, functions, state, errors)
-
JavaScript deeply (closures, async, event loop, promises, async/await)
-
HTTP fundamentals (before any framework — methods, headers, status codes, CORS, cookies)
-
Node.js HTTP module (build a server without Express first, understand what Express actually does)
-
REST APIs with Express (routing, controllers, validation, error handling, middleware)
-
PostgreSQL + SQL (SELECT, JOIN, indexes, transactions — no ORM shortcuts)
-
auth + security (hashing, sessions, JWT, SQL injection, XSS, CSRF, rate limiting)
-
testing (unit, integration, API tests)
-
networking (DNS, TCP, TLS, HTTP internals, WebSockets)
-
concurrency (event loop deep dive, non-blocking I/O, race conditions)
-
queues + background workers (job queues, workers, async processing)
-
WebSockets (real-time communication)
-
caching + Redis
-
deployment (Docker, CI/CD, Linux basics, VPS)
DSA and math running alongside all of this.
my questions:
– is this a reasonable order, or should i rearrange anything?
– is there anything important missing for someone targeting backend/developer tooling?
– any advice for staying consistent when concepts get slow and tedious?
thanks in advance.
Source: r/AskProgramming · by /u/Still-Leek-6940