Banyak roadmap online ngasih lo 100+ tools yang harus dipelajari. Realita-nya: senior engineer di perusahaan top cuma butuh 20% dari list itu, tapi master 80%. Ini roadmap yang gue based on real hiring criteria di startup unicorn Indonesia.
Gue udah interview puluhan backend engineer level junior sampai principal selama 5 tahun terakhir. Yang gue temuin: gap terbesar antara junior dan senior bukan di technical skills doang, tapi di cara mikir.
Di artikel ini gue breakdown roadmap realistis dari junior (0-2 tahun) ke senior (5+ tahun). Skill yang beneran dilihat hiring manager, bukan checklist Twitter.
Level 1: Junior (0-2 Tahun)
Goal: Bisa deliver feature dengan supervision minimal.
Technical Foundation
- One language fluent (pilih satu: Go, Python, Java, Node.js)
- HTTP & REST — request lifecycle, status codes, headers
- Basic SQL — CRUD, JOIN, subquery, indexing basics
- Git workflow — branching, merging, PR review
- Linux basics — navigate, file permissions, basic commands
- One framework (e.g., Express, FastAPI, Spring Boot)
Soft Skills yang Sering Di-Overlook
- Cara nge-baca dokumentasi dengan efektif
- Cara nanya yang baik (StackOverflow style)
- Cara nulis commit message yang clear
- Cara debugging step-by-step (bukan asal trial-error)
Yang Belum Perlu di Level Ini
- Microservices architecture (overkill untuk junior)
- Kubernetes mastery (cukup pake Docker basic)
- Distributed systems theory
- Multiple programming languages (master one first)
Junior trap: belajar terlalu banyak hal di permukaan. Senior trap: takut belajar hal baru. Sweet spot: deep di fundamental, broad di awareness.
Level 2: Mid-Level (2-4 Tahun)
Goal: Bisa design feature end-to-end + mentor junior.
Technical Skills yang Naik Level
Database Mastery
- Advanced SQL (window functions, CTEs, query optimization)
- Index strategy (B-tree vs hash, composite indexes)
- Transaction & isolation levels
- One NoSQL (Redis, MongoDB, atau DynamoDB)
- Database scaling (read replicas, sharding basics)
API Design
- RESTful principles (proper resource naming, HTTP methods)
- Authentication patterns (JWT, OAuth, session-based)
- Rate limiting, pagination, versioning
- OpenAPI spec writing
- GraphQL fundamentals (kalau company pake)
Testing & Quality
- Unit testing (target coverage 70%+)
- Integration testing (test database interactions)
- E2E testing (kapan butuh, kapan over-engineer)
- TDD principles (nggak harus selalu TDD, tapi tau kapan worth)
Operations Awareness
- Logging & monitoring (familiar dengan ELK atau Grafana)
- Error tracking (Sentry, Rollbar)
- Basic CI/CD (write pipeline, debug failed builds)
- Container basics (Docker, docker-compose)
Soft Skills
- Code review yang constructive (bukan nitpick)
- Estimasi task realistic (anti-padding tapi anti-optimistic)
- Komunikasi cross-team (sama frontend, product, design)
- Documenting decisions (RFC, ADR)
Level 3: Senior (4+ Tahun)
Goal: Bisa lead technical decision di project level + impact business outcome.
System Design
Ini yang biggest jump dari mid-level ke senior:
- Cap theorem & tradeoffs di distributed systems
- Caching strategies (write-through, write-back, cache invalidation)
- Message queues (Kafka, RabbitMQ, SQS) — kapan pake mana
- Microservices patterns (saga, circuit breaker, service mesh)
- Database scaling (vertical, horizontal, sharding strategies)
- Load balancing & traffic distribution
Performance & Scalability
- Profiling (CPU, memory, network)
- Database query optimization (EXPLAIN ANALYZE)
- Caching layers (CDN, application cache, database cache)
- Async processing (background jobs, event-driven)
- Concurrency patterns (goroutines, async/await, threads)
Security Mindset
- OWASP Top 10 (memorize semua)
- Authentication & authorization deep dive
- Encryption at rest & in transit
- Secret management (Vault, AWS Secrets Manager)
- Threat modeling untuk new feature
Business & Product Thinking
Ini sering di-skip tapi crucial untuk senior:
- Understand metrics yang matter (revenue, retention, NPS)
- Trade-off teknikal vs business priority
- Cost awareness (cloud bill, dev time, opportunity cost)
- Stakeholder communication (jelasin technical ke non-tech)
Resources Wajib (Curated, Bukan Spam)
Books
- Designing Data-Intensive Applications (Martin Kleppmann) — bible untuk system design. Heavy tapi worth it.
- The Pragmatic Programmer — soft skills + mental models
- System Design Interview (Alex Xu) — practical untuk interview prep
Online
- High Scalability blog — case study real systems
- System Design Primer (GitHub) — comprehensive free
- Engineering blogs: Stripe, Netflix, Uber, Discord — real war stories
Practice
- Build personal projects yang push boundary lo
- Contribute ke open source (1 PR/bulan minimum)
- Mock system design interviews dengan peers
- Write technical blog (forced learning + portfolio)
Common Mistakes per Level
Junior Mistakes
- Loncat-loncat framework tanpa master satu
- Copy-paste code tanpa understand
- Takut nanya, end up stuck berhari-hari
- Skip testing karena dianggap waste of time
Mid-Level Mistakes
- Over-engineer simple problems (microservices for everything)
- Cargo-cult tools (pakai Kubernetes karena hype)
- Skip soft skills development
- Avoid hard conversation (giving feedback, declining work)
Senior Mistakes
- Stop coding hands-on (lose touch dengan real implementation)
- Hubris (assume knowledge applicable everywhere)
- Avoid mentoring junior (think it's not "real work")
- Stop learning new tech (stuck di stack lama)
Salary Range Indonesia 2026
Berdasarkan data Glints, Kalibrr, dan word-of-mouth Q1 2026:
Jakarta (Tier 1 Companies):
- Junior (0-2 thn): Rp 8-14jt
- Mid-Level (2-4 thn): Rp 15-25jt
- Senior (4-6 thn): Rp 25-40jt
- Staff/Principal (7+ thn): Rp 40-70jt+
Remote untuk perusahaan luar negeri: tambahin 30-100% dari angka di atas, tergantung company size dan location.
Kesimpulan
Career growth di backend engineering bukan tentang tau semua hal — tapi tau hal yang bener mendalam.
Yang gue saranin:
- Master fundamentals dulu (HTTP, SQL, satu language)
- Build projects yang push limits lo
- Cari mentor (di kantor atau community)
- Document journey lo (blog, Twitter, internal wiki)
- Be patient — senior position butuh 4-6 tahun consistent growth
Career bukan sprint, ini marathon. Yang penting: sustainable progress, bukan burnout dari ngejar semua hype.