Apa Itu Tech Stack dan Kenapa Kamu Perlu Tahu
Di artikel sebelumnya kita sudah beres dengan pertanyaan besarnya: programmer tidak digantikan AI, tapi pekerjaannya berubah. Sekarang pertanyaan berikutnya yang pasti muncul begitu kamu mulai ngulik: "tech stack itu apa sih, kok semua orang ngomongin itu?"
Posisinya di perjalanan belajarmu: ini artikel pertama dari series Peta Tech Stack (artikel #5 sampai #9). Anggap series ini seperti pelajaran membaca peta sebelum berangkat. Kamu belum perlu memilih apa-apa. Tugasmu di lima artikel ini cuma satu: paham bahasa yang dipakai programmer saat bicara soal peralatan. Nanti di artikel #9, peta ini kita pakai untuk memilih stack proyek pertamamu.
Tech Stack Itu Tumpukan Peralatan, Bukan Satu Alat
Tech stack adalah kombinasi teknologi yang dipakai untuk membangun sebuah aplikasi. Kata "stack" artinya tumpukan, karena memang cara kerjanya bertumpuk: satu lapisan berdiri di atas lapisan lain.
Analoginya seperti dapur (kita di Kompor Kode, jadi pakai analogi dapur saja). Untuk masak satu hidangan kamu butuh kompor, wajan, pisau, dan bumbu. Tidak ada satu alat yang bisa menggantikan semuanya. Aplikasi web juga begitu. Lapisan-lapisannya, dari yang dilihat pengguna sampai yang menyimpan data:
- Frontend: yang tampil di layar dan disentuh pengguna (tombol, tampilan, animasi).
- Backend: logika di server yang mengolah permintaan (login, hitung harga, kirim data).
- Database: tempat data disimpan permanen (akun pengguna, daftar produk).
- Infrastruktur: tempat aplikasi "tinggal" (server, hosting).
Empat lapisan ini hampir selalu ada, apa pun teknologinya. Yang berbeda cuma merek peralatannya. Dan kabar baiknya: begitu kamu paham polanya, ganti merek tidak lagi menakutkan.
Contoh Stack yang Sering Kamu Dengar
Supaya tidak abstrak, ini contoh stack nyata beserta karakternya:
MERN singkatan dari MongoDB, Express.js, React, Node.js. Ciri khasnya: semua pakai JavaScript, dari layar sampai server. Cocok untuk startup dan aplikasi interaktif yang butuh gerak cepat. Kalau kamu dengar orang bilang "fullstack JavaScript", biasanya yang dimaksud ini.
MEAN mirip MERN, tapi frontend-nya Angular, bukan React. Angular lebih kaku dan terstruktur, jadi banyak dipakai perusahaan besar yang butuh aturan main ketat.
LAMP singkatan dari Linux, Apache, MySQL, PHP. Ini stack veteran yang sudah puluhan tahun dipakai. WordPress, yang menjalankan sebagian besar blog di dunia, berdiri di atas LAMP. Jangan remehkan yang tua: stabil, murah, dokumentasinya melimpah.
Next.js + PostgreSQL adalah kombinasi modern untuk website yang butuh SEO bagus dan performa tinggi. Django + React populer untuk aplikasi yang banyak mengolah data. Polanya sama: frontend + backend + database, cuma mereknya beda.
Ada juga varian-varian yang lahir dari mengganti satu komponen. MEVN sama dengan MERN tapi frontend-nya Vue, bukan React. PERN sama dengan MERN tapi database-nya PostgreSQL, bukan MongoDB. Jangan hafal semua singkatan ini satu per satu. Pahami polanya: singkatan stack dibaca dari depan ke belakang mengikuti lapisan, dan mengganti satu huruf berarti mengganti satu lapisan. Sekali paham polanya, singkatan baru yang muncul tahun depan langsung bisa kamu uraikan sendiri.
Contoh dunia nyatanya: LinkedIn memakai stack berbasis MEAN untuk fitur real-time-nya, WordPress (yang menjalankan jutaan blog dan website company profile) berdiri di atas LAMP. Dua raksasa, dua stack beda, dua kebutuhan beda. Tidak ada yang "lebih benar". Ada yang lebih cocok untuk masalahnya masing-masing. Dan itu persis cara profesional memilih: mulai dari masalah, baru ke alat.
Berhenti dan tebak dulu! Sebuah blog sederhana dibangun dengan WordPress. Tanpa googling, tebak: stack apa yang dipakai blog itu, dan apa database-nya?
Mitos 1: Ada Satu Tech Stack Terbaik untuk Semua
Ini persepsi yang paling sering bikin pemula macet. Mereka menghabiskan berminggu-minggu membandingkan MERN vs Django vs Laravel, takut salah pilih, akhirnya tidak mulai-mulai. Padahal tidak ada stack terbaik. Yang ada hanya stack yang cocok untuk kebutuhan tertentu.
Pikirkan lagi analogi dapur. Tidak ada "wajan terbaik di dunia". Ada wajan yang cocok untuk menggoreng, ada yang cocok untuk mengukus. MERN cocok untuk aplikasi interaktif yang butuh cepat. LAMP cocok untuk website konten yang butuh murah dan stabil. Memaksakan satu jawaban untuk semua kebutuhan itu seperti memaksa semua masakan dimasak dengan satu wajan.
Yang lebih penting dari pilihan stack-nya adalah pemahamanmu tentang cara kerjanya. Programmer yang paham pola frontend-backend-database bisa pindah stack dalam hitungan minggu. Programmer yang cuma hafal satu stack tanpa paham polanya akan panik setiap kali tren berganti.
Mitos 2: Tech Stack Sama Dengan Bahasa Pemrograman
Banyak pemula mengira "belajar tech stack" artinya "belajar bahasa pemrograman baru". Padahal bahasa cuma satu bahan di dalam tumpukan. MERN misalnya, bukan cuma "belajar JavaScript". Ia juga berarti paham cara React mengatur tampilan, cara Express menerima request, cara MongoDB menyimpan data, dan cara Node.js menjalankan semuanya di server.
Kenapa ini penting? Karena kalau kamu mengira stack = bahasa, kamu akan belajar dengan cara yang salah: menghafal syntax bahasa, lalu bingung saat disuruh membangun aplikasi. Cara yang benar: pahami peran tiap lapisan dulu (inilah gunanya series ini), baru masuk ke bahasanya satu per satu di Fase 1 nanti.
Kuis cepat: Dalam stack MERN, huruf R adalah React. Peran React ada di lapisan apa?
Kenapa Kamu Perlu Tahu Ini Sekarang
Tiga alasan praktis. Pertama, lowongan kerja menulis kebutuhan dalam bahasa stack ("dicari: React, Node.js, PostgreSQL"). Kalau kamu bisa membaca peta, kamu tahu lowongan itu minta kemampuan apa, bukan sekadar daftar kata.
Kedua, tutorial dan dokumentasi mengasumsikan kamu tahu posisinya. Saat tutorial bilang "install Express", kamu perlu tahu itu backend, bukan frontend. Series ini memastikan kamu tidak tersesat di langkah itu.
Ketiga, ini melatih cara berpikir sistem. Programmer senior tidak berpikir "saya perlu belajar X", tapi "lapisan mana yang bermasalah dan alat apa yang cocok". Pola pikir itu dimulai dari memahami tumpukan ini.
Keempat, ini membantumu memilih tutorial yang tepat dan tidak tersesat di tengahnya. Saat tutorial bilang "sekarang install Express", kamu langsung tahu itu backend dan tidak panik mencari tombolnya di file HTML-mu. Banyak pemula menyerah bukan karena materinya sulit, tapi karena tersesat di langkah yang mengasumsikan pengetahuan peta. Dengan peta di kepala, setiap tutorial menjadi jauh lebih mudah diikuti.
Berhenti dan tebak dulu! Temanmu bilang: "Aku mau bikin aplikasi catatan yang bisa dibuka di HP dan datanya tersimpan online." Tanpa tahu teknologinya, sebutkan lapisan apa saja yang dibutuhkan aplikasi itu dan kenapa tiap lapisan perlu ada.
Latihan dan Langkah Berikutnya
Latihanmu minggu ini ringan tapi penting:
- Bedah 3 aplikasi favoritmu. Pilih tiga aplikasi yang sering kamu pakai (misalnya marketplace, aplikasi chat, aplikasi ojek online). Untuk tiap aplikasi, tulis di catatan: apa yang kamu lihat sebagai frontend, kira-kira apa yang dikerjakan backend-nya, dan data apa yang pasti disimpan di database-nya. Tidak perlu benar 100 persen, yang penting melatih mata.
- Hafalkan 3 singkatan stack beserta isinya. MERN, LAMP, dan MEAN. Tulis kepanjangannya tanpa mencontek sampai lancar. Ini kosakata dasar yang akan muncul terus di series ini.
Langkah berikutnya: artikel #6, Frontend: Semua yang Tampil di Layar. Kita mulai membedah lapisan pertama dari tumpukan: apa saja yang dikerjakan frontend developer, teknologi apa yang dipakai, dan kenapa pekerjaan "yang penting tampilannya bagus" ternyata jauh lebih dalam dari kelihatannya. Sampai jumpa di episode 2 series Peta Tech Stack.
Gabung dalam percakapan