Back to Blog
Jun 6, 20264 min read

Belajar Berenang dengan Langsung Nyemplung ke Kolam yang Dalam

Tirta Afandi
Tirta Afandi
@kikuk_afandi

Tiga bulan terakhir ini berjalan dengan ritme yang luar biasa padat. Di sela-sela kesibukan akademis sebagai mahasiswa, sebuah kesempatan kerja sama besar datang mengetuk pintu. Tantangannya tidak main-main: merancang dan membangun sebuah integrated AI chatbot yang menangani data dengan tingkat krusial yang sangat tinggi. Dalam proyek ini, akurasi adalah harga mati; satu kesalahan kecil atau distorsi informasi (halusinasi AI) bisa berdampak fatal dan sangat menyesatkan bagi penggunanya.

Sebelum proyek ini dimulai, dunia ideal saya sangat sederhana: menulis kode backend yang bersih, memastikan performa sistem stabil, menyusun arsitektur yang modular, dan meminimalisir bug. Namun, peluang besar jarang sekali datang di saat kita benar-benar merasa siap.


1. Menghadapi Ekosistem Mobile Tanpa Peta

Jujur saja, di awal perjalanan, saya memiliki pengetahuan yang sangat minim di ranah mobile development. Istilah-istilah spesifik di dunia mobile seperti Intent, perbedaan mendasar antara StatelessWidget dan StatefulWidget, penanganan splash screen, hingga kendala klasik layouting seperti Bottom overflowed by 10px, semuanya adalah hal asing yang belum pernah saya tangani secara langsung (hands-on).

Source: https://www.devopsschool.com/blog/what-difference-between-stateless-and-stateful-widgets-flutter/

Namun, prinsip saya saat mengambil keputusan ini cukup sederhana: siap tidak siap, harus siap. Ini adalah peluang akselerasi kompetensi. Pengalaman baru tidak akan pernah didapatkan tanpa keberanian untuk melangkah masuk ke dalam ketidaktahuan. Jika saya melewatkan kesempatan ini, belum tentu kesempatan serupa—atau yang lebih besar—akan datang kembali dengan konfigurasi yang sama.


2. Menjinakkan AI Melalui Arsitektur RAG (Retrieval-Augmented Generation)

Karena data yang diolah bersifat sensitif, membiarkan Large Language Model (LLM) merespons secara generatif murni menggunakan pre-trained knowledge bawaannya adalah risiko yang terlalu besar. Di sinilah fokus eksplorasi teknis saya beralih ke arsitektur RAG (Retrieval-Augmented Generation) guna mengunci sumber kebenaran informasi (ground truth).

Saya menghabiskan banyak waktu untuk mengulik komponen-komponen penting dalam RAG:

  • Data Chunking: Eksperimen intensif pada tahap pra-pemrosesan data dokumen. Mengatur ukuran chunk dan overlap yang optimal sangat menentukan relevansi konteks yang diambil saat user melempar pertanyaan ke sistem.
  • Embedding Models: Memilih dan menguji model embedding yang tepat agar representasi vektor dari data krusial tersebut memiliki kedekatan semantik yang akurat saat proses retrieval.
  • Fine-Tuning & Guardrails: Selain mengandalkan RAG, saya juga mengeksplorasi opsi fine-tuning dan pengetatan instruksi (system prompt engineering) demi memastikan model tetap berada di dalam koridor referensi data yang valid dan dengan tegas menolak menjawab jika informasi tidak ditemukan.

3. Kolaborasi Tunggal dan Fasilitasi Penuh

Dalam proyek berskala krusial ini, relasi kerja sama terjalin secara langsung dan efisien. Struktur tim berjalan dalam bentuk kemitraan tunggal antara saya dan pemilik proyek:

  • Pemilik Proyek (Partner): Bertindak sebagai fasilitator penuh yang menyediakan seluruh kebutuhan infrastruktur, API keys, lingkungan komputasi, dan pemenuhan kebutuhan development.
  • Saya (Solo Engineer): Memegang kendali penuh atas eksekusi teknis dari hulu ke hilir—mulai dari riset arsitektur RAG, perancangan pipeline data backend, hingga integrasi UI pada aplikasi mobile.

4. Batasan Hanya Ada di Pikiran

Proses intensif selama 3 bulan ini membuktikan bahwa batasan kapabilitas sering kali hanyalah batasan psikologis yang kita buat sendiri di dalam kepala. Melangkah keluar dari zona nyaman sebagai Backend Developer murni menuju integrasi AI dan Mobile memang menguras energi, tetapi kurva pembelajaran (learning curve) dan pertumbuhan kompetensi yang didapatkan sebanding dengan kerja keras yang dikeluarkan.

Terima kasih banyak kepada pemilik proyek atas ruang tumbuh, fasilitas, dan kepercayaan penuh yang telah diberikan sepanjang proses ini. Build, learn, and grow!

Tags

Engineering

Enjoyed this article?

Check out more writings

Back to Overview