Perubahan Peran Developer di Era AI Coding: dari Pelaksana Coding menjadi Perancang Konteks, Verifikasi, dan Produk
(velog.io/@teo)Ringkasan
-
Klaim utama
- Seiring AI mencapai tingkat mampu menulis, memperbaiki, dan menguji kode secara langsung, peran developer bergeser dari sekadar berfokus pada coding menjadi mendefinisikan masalah, merancang pekerjaan, melakukan verifikasi, mengelola konteks, dan mendukung productization.
-
Penyebab struktural
- AI memang sangat meningkatkan kecepatan produksi kode, tetapi kode tidak otomatis menjadi produk yang baik.
- Area non-coding seperti requirement, dokumentasi, pengujian, strukturisasi, penilaian UX, dan maintainability menjadi semakin penting.
-
Contoh utama
- Pengalaman membuat AI dapat melakukan pengujian browser hingga tahap akhir melalui Playwright.
- Pengalaman menspesifikasikan pekerjaan berulang sebagai command, skill, dan workflow.
- Kasus prototype frontend buatan AI yang terlihat luar biasa dari luar, tetapi struktur internalnya rapuh.
-
Arah solusi
- Jangan hanya menyerahkan kode kepada AI; prosedur dan standar untuk seluruh proses pengembangan juga harus dirancang bersama.
- Developer perlu meninjau output AI, meninggalkan konteks, dan merapikan struktur agar dapat berlanjut menjadi produk yang berkelanjutan.
Pendahuluan
Transisi di era AI coding
- Tulisan ini berangkat dari pertanyaan: “Apa yang harus dilakukan developer di era ketika manusia tidak lagi menulis kode secara langsung?”
- Penulis sebelumnya berpendapat bahwa karena AI dapat berhalusinasi dan membuat kesalahan, keputusan akhir harus tetap dilakukan oleh manusia.
- Namun, dengan peningkatan performa model AI baru-baru ini, penulis menilai AI telah mencapai tingkat mampu memahami issue, menelusuri file, memperbaiki kode, hingga lolos pengujian.
- Karena perubahan ini, developer mulai memikirkan arah yang melampaui penggunaan AI sebagai alat bantu, yakni membuat AI menjalankan prosedur pengembangan itu sendiri.
Kesadaran masalah utama
- AI memang telah menjadi pandai menulis kode, tetapi ini bukan berarti peran developer menghilang.
- Justru semakin coding terotomatisasi, elemen pengembangan lain semakin terlihat jelas.
- Perapian requirement, pencatatan keputusan, desain pengujian, manajemen struktur kode, dan pemeriksaan pengalaman produk muncul sebagai tugas inti developer.
Isi
1. AI telah bergeser dari alat penulisan kode menjadi pelaku pekerjaan
- Penulis melihat AI telah melampaui tingkat menghasilkan potongan kode sederhana dan kini dapat menangani alur kerja pengembangan nyata.
- Dulu, manusia harus terus mengawasi dan memperbaiki hasil AI, tetapi kini memungkinkan untuk menyerahkan pekerjaan kepada AI lalu memeriksa hasilnya.
- Peningkatan performa benchmark seperti SWE Bench disebut sebagai indikator perubahan ini.
- Perubahan utamanya bukan lagi pertanyaan “Apakah AI dapat menulis kode?”, melainkan perubahan pertanyaan menjadi “Sampai sejauh mana pekerjaan dapat diserahkan kepada AI?”
2. Saat AI gagal, masalahnya bukan hanya ‘kurang kemampuan’
- AI masih tidak selalu berhasil.
- Ada kasus error berulang, atau AI mengatakan telah memperbaiki sesuatu tetapi masalah masih tersisa di layar sebenarnya.
- Awalnya, penulis merespons dengan cara manusia menyalin error lalu meneruskannya ke AI.
- Setelah menggunakan Playwright untuk membuat AI membuka browser dan menguji secara langsung, penulis menyadari bahwa prosedur verifikasi yang sebelumnya dilakukan manusia juga dapat diserahkan kepada AI.
- Kasus ini menunjukkan bahwa sebagian hal yang dianggap sebagai batas AI sebenarnya merupakan batas yang muncul karena pengguna tidak memberikan instruksi.
3. Pola pikir AI Native adalah cara mendelegasikan seluruh prosedur
- Penulis beralih dari sudut pandang menggunakan AI sebagai alat bantu sederhana menuju arah membuat AI menjalankan seluruh prosedur yang sebelumnya ia lakukan sendiri.
- Ia membuat pekerjaan berulang menjadi command, skill, dan workflow, serta mencoba menspesifikasikan tacit knowledge miliknya.
- Sebagai contoh, ia membuat alur perintah seperti
/plan,/prd,/debug,/refactor,/verify, dan/retrospect. - Hal yang penting bukan sekadar menyuruh AI “tulis kodenya”, tetapi juga membuat aturan kapan harus bertanya, kapan harus berhenti, dan kapan harus melakukan verifikasi.
- Melalui ini, developer mengubah cara kerja dan standar penilaiannya sendiri menjadi struktur yang dapat digunakan ulang oleh AI.
4. Know-how pribadi cepat diserap menjadi fitur alat
- Command dan workflow yang dibuat sendiri oleh penulis, seiring waktu, muncul sebagai fitur dan konsep resmi seperti Skill, memory, hooks, dan orchestration.
- Metodologi pemanfaatan AI yang ditemukan individu, semakin efektif, semakin cepat pula diserap menjadi fitur produk atau metodologi umum.
- Karena itu, sulit menciptakan diferensiasi jangka panjang hanya dengan prompt atau tips tertentu untuk menggunakan AI dengan baik.
- Yang penting bukan metodologi itu sendiri, melainkan sampai sejauh mana metodologi tersebut diterapkan pada masalah nyata dan batas seperti apa yang dialami.
5. AI memperbesar ukuran masalah yang dapat ditangani developer
- AI membuat penulis benar-benar dapat bereksperimen dengan ide besar yang dulu tidak dapat dicoba karena biaya dan waktu.
- Misalnya, ia dengan cepat mencoba membuat alat untuk membentangkan kode dan dokumen seperti kanvas, viewer MD, alat analisis kode, dan alat bantu pengembangan.
- Intinya bukan AI langsung membuat produk jadi, melainkan AI menurunkan hambatan untuk memulai.
- Developer mengubah cara berpikir dari “Bisakah ini dibuat?” menjadi “Sejauh mana bisa dicoba dulu?”
6. Saat menangani masalah besar, pekerjaan pengembangan di luar coding mulai terlihat
- Ketika volume produksi kode meningkat dengan AI, developer menjadi sulit membaca semua kode secara langsung dan menyimpan konteks di kepala.
- Saat menulis kode sendiri, konteks, penilaian, dan pemahaman struktur yang terkumpul secara alami tidak otomatis tertinggal ketika coding diserahkan kepada AI.
- Karena itu, dokumentasi, pengujian, issue, laporan pekerjaan, dan catatan alasan perubahan menjadi penting.
- Ini bukan pekerjaan administratif, melainkan perangkat inti untuk mempertahankan konteks pengembangan di era AI.
- Ditekankan bahwa kemampuan mempertahankan konteks dan penilaian menjadi sama pentingnya dengan kemampuan coding.
7. Bertambahnya commit dan test tidak otomatis berarti produk membaik
- Dengan memanfaatkan AI, jumlah commit, file, test, dan dokumen dapat bertambah dengan cepat.
- Namun, peningkatan angka tidak berarti produk benar-benar menjadi lebih baik.
- Masalah dapat muncul: fitur bertambah tetapi UX terasa canggung, atau test lolos tetapi alur layar sebenarnya tidak stabil.
- Awalnya, penulis mencoba melihat ini hanya sebagai masalah kualitas dan struktur kode.
- Namun ia mengalami bahwa meskipun struktur kode diperbaiki, pengalaman produk tidak otomatis membaik.
- Pada akhirnya, produksi kode dan peningkatan produk adalah masalah yang berbeda, dan diperlukan penilaian terpisah terhadap kualitas produk.
8. Frontend adalah area yang sangat mudah goyah oleh AI
- AI dapat dengan cepat membuat UI awal yang terlihat meyakinkan, seperti dashboard, landing page, dan layar admin.
- Namun frontend tingkat produk nyata menuntut standar kompleks seperti design system, state management, accessibility, operasi keyboard, state pengecualian, dan alur pengguna.
- Banyak requirement frontend diekspresikan dalam bahasa yang samar seperti “secara natural”, “tidak terlalu canggung”, atau “terasa seperti sedang dipilih”.
- Dalam proses mengubah requirement samar semacam ini menjadi kode, hasil AI mudah melebar ke berbagai arah.
- Karena itu, untuk menggunakan AI dengan baik di frontend, diperlukan standar dan kemampuan menilai untuk mengunci bagian yang sudah bagus dan hanya memperbaiki kembali bagian yang kurang.
9. Hasil yang baik tidak muncul sekali jadi, melainkan dibuat melalui proses konvergensi
- Penulis mengubah persepsinya setelah melihat prototype berkualitas tinggi yang dibuat oleh seorang planner dengan AI.
- Hasil tersebut bukan dibuat dengan satu prompt khusus, melainkan hasil dari modifikasi berulang “sampai berhasil”.
- Kasus ini menunjukkan bahwa inti pemanfaatan AI bukan sekadar generasi otomatis, melainkan proses konvergensi dengan terus melihat bagian yang kurang dan meminta perbaikan lagi.
- Orang yang menciptakan hasil baik menilai apa yang kurang dari output AI, lalu dengan gigih menyesuaikannya sampai mencapai tingkat yang diinginkan.
- Bahkan di era AI, standar, sense, dan pemeriksaan berkelanjutan dari manusia menciptakan perbedaan pada hasil.
10. Developer berperan menghubungkan hasil yang berpotensi menjadi produk
- Hasil buatan AI dapat terlihat bagus dari luar tetapi struktur kode internalnya rapuh.
- Masalah dapat muncul seperti state management yang tidak stabil, tanggung jawab komponen yang tidak jelas, atau test yang tidak dapat menjamin alur sebenarnya.
- Peran developer bukan menilai rendah atau membuang hasil seperti ini tanpa syarat.
- Pada saat yang sama, hasil tersebut juga tidak boleh langsung dijadikan produk apa adanya.
- Developer harus merapikan struktur, menandai risiko, membuat unit yang dapat diuji, dan meninggalkan konteks agar hasil yang berpotensi dapat bergerak lebih jauh.
- Dengan kata lain, peran developer meluas dari “orang yang membuat semuanya sendirian sampai akhir” menjadi “orang yang menghubungkan hasil buatan AI dan manusia menjadi produk yang berkelanjutan”.
11. Peran pengembangan di era AI tidak akan menyatu menjadi satu bentuk
- Ketika hambatan coding menurun, tipe orang yang berpartisipasi dalam pengembangan juga menjadi lebih beragam.
- Planner, desainer, PM, dan personel bisnis di lapangan juga dapat membuat prototype yang berjalan atau alat internal melalui AI.
- Ini bukan berarti kebutuhan terhadap developer menghilang, melainkan peran yang terkait dengan pengembangan menjadi lebih terspesialisasi.
- Penulis menganalogikannya dengan ekosistem YouTube.
- Sebagaimana YouTube tidak menghilangkan profesional video tetapi mendiversifikasi peran seperti talent, editor, planner, operator channel, dan pembuat platform, AI juga dapat mendiversifikasi peran pengembangan.
- Ke depannya, kemungkinan besar akan hidup berdampingan orang yang membuat sistem mendalam, orang yang memoles prototype menjadi produk, orang yang membuat layer agar AI dapat bekerja dengan baik, dan orang yang menyelesaikan masalah secara langsung.
Kesimpulan
Developer harus merancang pengembangan setelah coding
-
Kesimpulan tulisan ini bukan dikotomi “haruskah terus coding, atau harus melepaskannya”.
-
Karena AI kini dapat melakukan coding, developer perlu belajar melalui pengalaman apa yang harus diserahkan kepada AI dan apa yang harus dinilai sendiri.
-
Terutama, kemampuan berikut menjadi penting.
- Kemampuan menetapkan masalah secara lebih besar
- Kemampuan membuat prosedur berulang menjadi skill dan workflow
- Kemampuan menstrukturkan requirement, dokumentasi, test, dan issue
- Kemampuan memeriksa output AI dan memberi instruksi ulang untuk bagian yang kurang
- Kemampuan memoles hasil kasar menjadi produk yang berkelanjutan
- Kemampuan menghubungkan alat dan alur kerja di luar kode dengan AI
Pesan utama
- AI tidak sesempurna ekspektasi developer, tetapi dapat melakukan jauh lebih banyak hal daripada yang dikira.
- Sebelum menilai AI tidak bisa, perlu bereksperimen untuk melihat sejauh mana AI benar-benar dapat diberi tugas.
- Sebaliknya, hanya karena AI mempermudah sesuatu, hasilnya tidak boleh dipercaya begitu saja.
- Developer harus menilai hasil yang dibuat AI, mengonvergensikannya, mempertahankan konteks, dan membuatnya berlanjut menjadi produk.
- Pada akhirnya, developer di era AI menjadi lebih dekat dengan orang yang merancang masalah, prosedur, standar, dan konteks agar output buatan AI dan manusia berujung pada hasil yang lebih baik, bukan sekadar orang yang menulis banyak kode secara langsung.
Belum ada komentar.