4 min read
My Kisah - Part 2
Lanjutan "My Kisah" Part 2Terjebak di labirin Spring Boot, perang lawan ego overengineering, sampai 'perselingkuhan' sesaat dengan React. Sebuah perjalanan mencari efisiensi di tengah kabut kode.Last Edited 09:38:22, 09 February 2026 UTC
My Kisah (Part 2): Backend Awakening & Labirin Spring Boot 🚀
Setelah cukup lama bermain di permukaan client-side dengan Flutter, tahun 2023 menjadi tahun di mana gweh memutuskan untuk “turun ke mesin”. Gweh memilih untuk menjinakkan raksasa backend: Spring Boot. Ternyata, dunia ini bukan cuma soal naruh data ke database; ini adalah soal membangun tulang punggung sistem yang kokoh, aman, dan tahan banting.
🍃 Menyelami Ekosistem Spring Boot: Dari CRUD hingga Arsitektur Kompleks
Gweh nggak mau tanggung-tanggung. Gweh hajar ekosistem Spring lewat proyek-proyek latihan yang gweh rancang buat nyiksa logika gweh sendiri:
- Coffeeshop & Sample-Employee: Proyek ini adalah kawah candradimuka gweh buat urusan data. Gweh belajar Spring Data JPA sampai ke akarnya. Gweh belajar kapan harus bermanja dengan abstraksi JPA, dan kapan gweh harus turun tangan nulis Native Query yang brutal demi performa query yang nggak bisa ditawar.
- Sample-ERP (The Core Challenge): Di sini mental gweh bener-bener diuji. Gweh mulai nerapin Role-based Authentication yang berlapis. Gweh belajar gimana caranya nge-jagain tiap endpoint dengan Spring Security supaya nggak ada celah buat akses ilegal.
- Security Deep Dive: Gweh bongkar pasang konsep JWT (JSON Web Token) untuk stateless authentication. Gweh pelajari gimana payload-nya bekerja, gimana cara handling token yang expired, sampai eksplorasi ke OAuth2.
- Reporting & Infrastructure: Gweh dalemin JasperReport dan Apache POI buat urusan ekspor data. Semuanya gweh bungkus dalam infrastruktur Docker, dengan PostgreSQL sebagai gudang datanya, dan RabbitMQ untuk urusan komunikasi asynchronous.
🧠 Perang Produktivitas: Menjinakkan Ego dan Fokus
Di balik baris kode yang kelihatan rapi di GitHub, sebenernya gweh sering bertempur dengan kebiasaan buruk yang sempat menghambat progres:
- The Overengineering Trap: Gweh pernah terjebak pengen bikin sistem yang “terlalu canggih” padahal kebutuhannya simpel. Gweh pake arsitektur yang ribet banget buat fitur yang sebenernya bisa selesai pake satu class. Untungnya gweh sadar: Engineering yang bagus itu bukan yang paling kompleks, tapi yang paling tepat guna. Akhirnya gweh pangkas lagi biar lebih simple dan maintainable.
- “I Need to Know Everything Before I Start”: Gweh sering terjebak tutorial hell karena ngerasa harus paham 100% teori Spring Boot sebelum berani ngetik satu baris kode pun. Padahal, software engineering itu belajar paling efektif justru pas lagi “nabrak” masalah.
- Not Asking for Help Early: Gweh punya ego besar buat nyelesain semuanya sendiri. Kalau stuck, gweh bisa ngabisin waktu berhari-hari buat satu bug yang sebenernya bisa selesai lebih cepet kalau gweh mau diskusi. Akhirnya malah banyak buang waktu secara tidak efisien.
- Constant Context Switching: Gweh sering loncat-loncat fokus. Baru asyik ngerapihin JPA, tiba-tiba gweh kepikiran mau nyoba Docker, terus pindah lagi ke Security. Alhasil, banyak modul yang “setengah matang” karena gweh gagal menjaga fokus.
- Procrastination: Kadang, pas gweh ngeliat desain sistem ERP yang saking kompleksnya, gweh malah jadi overwhelmed. Bukannya mulai ngetik, gweh malah nunda-nunda kerjaan karena bingung mau mulai dari mana.
Obatnya? Gweh pecah masalah raksasa jadi tugas-tugas kecil. Satu commit kecil tiap hari akhirnya ngebunuh rasa malas dan kebingungan itu.
🏗️ Disiplin Recall: System Design & Pattern
Gweh sadar, musuh terbesar seorang engineer selain manajemen diri adalah rasa lupa. Ekosistem Spring itu seluas samudra. Makanya, gweh rutin melakukan ritual recall:
- Design Patterns: Gweh pelajari lagi pola Singleton, Factory, sampe Observer biar kode gweh punya standar enterprise.
- System Design: Gweh mulai mikirin gambaran besar tentang skalabilitas dan efisiensi alur data.
⚛️ Sampingan Berfaedah: Perkenalan Sesaat dengan React
Di tengah keriuhan ngerapiin logic backend, gweh mampir sebentar ke dunia React. Gweh mulai belajar Function Components dan Custom Hooks. Gweh pikir ini cuma mampir minum kopi, tapi ternyata pengalaman di React ini pelan-pelan ngerubah cara pandang gweh soal efisiensi di sisi client.
[!NOTE] Status Part 2: Backend sudah solid, disiplin diri mulai terbentuk, dan radar gweh mulai menangkap sinyal kuat dari dunia frontend yang lebih modern.
Mau tahu gimana gweh akhirnya “terjebak” lebih dalam di ekosistem React, TanStack, dan Zustand sebelum akhirnya berlabuh di Vue? Tungguin di Part 3!
Yang atas belum jadi jadi abaikan saja :P