Terhubung dengan kami

Pemimpin Pikiran

Otomatisasi Fleksibel vs. Augmentasi Agen dalam Pemrograman

mm

Otomatisasi agen (lebih dikenal sebagai 'vibe coding') memang semakin populer, bahkan di luar kalangan pengembang, dengan Collins Dictionary menyebutnya sebagai kata tahun ini. dan bahkan CEO Microsoft mencatat bahwa hingga 30% Sebagian besar kode perusahaan dihasilkan oleh AI. Pendekatan pengkodean ini tidak diragukan lagi mendorong produktivitas, tetapi seperti halnya teknologi transformatif lainnya, memahami di mana dan bagaimana menerapkannya secara paling efektif adalah kunci untuk memaksimalkan manfaatnya.

Para pengembang secara teratur menghadapi tantangan seperti perluasan ruang lingkup proyek, terganggunya sesi pengkodean, dan waktu yang terbatas, sehingga pencarian peningkatan efisiensi melalui AI dapat dimengerti. Namun, pengembang juga perlu mempertimbangkan filosofi 'manusia dalam lingkaran' yang ditawarkan oleh otomatisasi fleksibel. Alih-alih menggunakan otomatisasi di setiap proses, pendekatan ini berfokus pada tugas-tugas yang membosankan, memperkuat peran pengembang sebagai pengambil keputusan di setiap titik dalam proses. Pendekatan ini mendukung pengembangan keterampilan sekaligus memastikan konsistensi arsitektur di seluruh proyek. 

Munculnya otomatisasi berbasis agen

Vibe coding mungkin ada di mana-mana, tetapi ini masih merupakan pendekatan yang relatif baru, yang baru dicetuskan pada awal tahun 2025. Ini adalah proses penggunaan AI generatif untuk menghasilkan kode perangkat lunak hanya berdasarkan perintah percakapan, biasanya dengan sedikit atau tanpa intervensi manual.

Platform ini telah banyak dipuji karena menurunkan hambatan bagi non-insinyur untuk menguji ide dan menghasilkan konsep yang berfungsi. Misalnya, CEO dan eksekutif tingkat C kini dapat mendemonstrasikan perubahan yang mereka inginkan melalui prototipe yang dibuat dengan vibe-code, menghindari percakapan panjang dengan pengembang di mana mereka menjelaskan ide-ide abstrak.

Namun, untuk melampaui tahap ideasi ini diperlukan pemahaman tentang kemampuan AI saat ini. AI bekerja dalam batasan tertentu saat menangani jendela konteks yang besar, yang memengaruhi tingkat detail dalam pembuatan kode untuk proyek profesional berskala besar. Meskipun pengembang dapat menginstruksikan AI lebih lanjut untuk melakukan perubahan jika ditemukan kesalahan, kode yang dihasilkan AI terkadang menduplikasi fungsi, yang dapat menimbulkan pertimbangan pemeliharaan. Hal ini menjadi sangat relevan ketika bekerja dengan sistem tertanam yang seringkali dibatasi oleh keterbatasan perangkat keras, sehingga hanya membutuhkan kode yang paling ringkas agar dapat berfungsi secara efektif.

Penerapan AI secara luas dalam pemrograman juga menimbulkan pertanyaan penting tentang pengembangan keterampilan. 42% pengembang menggunakan AI Dalam proses mereka, setidaknya setengah dari basis kode mereka dihasilkan oleh AI. Seiring dengan semakin meluasnya otomatisasi berbasis agen, ada baiknya mempertimbangkan bagaimana pengembang junior membangun keterampilan dasar. Ini adalah tahapan penting bagi mereka untuk mengasah keterampilan mereka pada tugas-tugas pengkodean rutin yang mempertajam kemampuan mereka dan memungkinkan mereka untuk membangun pengalaman pengkodean dengan cepat. Menemukan keseimbangan yang tepat, di mana AI menangani tugas-tugas yang sesuai sambil tetap memberikan kesempatan untuk pembelajaran langsung, akan sangat penting untuk membina generasi pengembang berikutnya.

Sentimen pengembang juga mencerminkan periode penyesuaian ini. Pada tahun 2024, 70% pengembang memiliki sentimen positif terhadap AI, tetapi tahun ini angka tersebut turun menjadi 60%, dengan 46% menyatakan kekhawatiran tentang keakuratan kode AI.Namun mayoritas pengembang (70%) tidak menganggapnya sebagai ancaman terhadap posisi mereka, dan 59% pengembang senior Dalam survei berbeda, disebutkan bahwa alat AI membantu mereka mengirimkan kode lebih cepat. Angka-angka ini menunjukkan bahwa para pengembang secara aktif mencari cara untuk mengintegrasikan AI secara efektif daripada menolaknya mentah-mentah. Teknologi berubah dengan cepat, dan demikian pula praktik terbaik untuk implementasinya.

Jadi, alih-alih pendekatan 'semua atau tidak sama sekali', ada baiknya mempertimbangkan filosofi berbeda yang mengambil pendekatan yang lebih terukur terhadap penggunaan AI, dengan tetap menempatkan pengembang sebagai pengambil keputusan.

Apa itu otomatisasi fleksibel?

Sementara otomatisasi berbasis agen mengintegrasikan AI di seluruh proses pengembangan, otomatisasi fleksibel mengambil pandangan strategis. Ia menyarankan integrasi AI yang ditargetkan ke dalam proses pengkodean, menyarankan penggantian satu tugas administratif pada satu waktu. Dengan cara ini, pengembang selalu mempertahankan kendali dan pengawasan atas produk tanpa gangguan yang berlebihan. Ia secara selektif menargetkan tugas-tugas administratif yang lebih berulang, seperti dokumentasi kode, pembuatan unit test, dan pengkodean berulang lainnya.

Yang terpenting, pendekatan ini mengakui kemampuan AI saat ini dalam pengkodean – meskipun belum dapat menciptakan tumpukan perangkat lunak lengkap, AI dapat memberikan manfaat langsung di beberapa area spesifik. Jadi, alih-alih pengembang merasa frustrasi karena menerapkan AI pada tugas yang salah, penggunaannya difokuskan pada area di mana AI unggul. Seiring waktu, pengembang dapat membiasakan diri dengan AI dan mengadopsinya dengan kecepatan yang lebih lambat, sehingga nilai AI dalam menyelesaikan tugas-tugas administratif menjadi jelas. Kemudian, pengembang dapat kembali ke alasan inti yang lebih kompleks mengapa mereka memasuki industri ini sejak awal, seperti sekadar menulis perangkat lunak yang baik dan kompleks, serta memecahkan masalah yang menantang – semuanya sambil merasa yakin bahwa AI bekerja bersama mereka.

Yang penting, hal ini juga memberikan ruang bagi sejumlah tugas rutin yang wajar bagi pengembang junior untuk belajar dari pengalaman langsung, memungkinkan mereka membangun pengetahuan dasar dengan pembelajaran mendalam yang berasal dari metode coba-coba tradisional. Alih-alih dipandang sebagai sesuatu yang dapat membatasi peluang belajar, AI disematkan sebagai alat – yang tetap berada di bawah kendali penuh pengembang.

Manfaatnya meluas dari pengembang individu hingga seluruh tim pengembangan. Dengan mengotomatiskan elemen-elemen berulang dalam pengkodean, tim dapat menjaga konsistensi dalam dokumentasi dan praktik pengujian mereka, sekaligus membebaskan pengembang senior untuk membimbing anggota tim junior dan fokus pada keputusan arsitektur. Hal ini menciptakan budaya pengembangan yang lebih sehat di mana AI melengkapi keahlian manusia daripada mencoba menggantikannya.

Menyeimbangkan jalan tengah otomatisasi dalam pengkodean.

Perlu ditegaskan kembali bahwa AI adalah perubahan terbesar dalam pemrograman selama beberapa dekade, dan tidak diragukan lagi memiliki potensi untuk mengubah cara kita memprogram menjadi lebih baik, tetapi kita perlu menemukan keseimbangan yang tepat. Ini adalah proses yang perlu dilakukan secara strategis seiring industri dan pengembang membiasakan diri dengan cara kerja baru ini, memastikan kita membangun fondasi yang kuat sambil merangkul inovasi. Kuncinya adalah menemukan titik optimal di mana otomatisasi meningkatkan produktivitas tanpa mengorbankan kedalaman pemahaman yang menjadikan pengembang hebat.

Meskipun demikian, bukan berarti kita perlu memandang otomatisasi fleksibel dan pengkodean berbasis intuisi sebagai filosofi yang bersaing, melainkan sebagai alat yang cocok untuk dua tahapan siklus hidup perangkat lunak yang sepenuhnya berbeda. Ke depannya, pengkodean berbasis intuisi akan sangat penting untuk ide awal, serta komunikasi non-teknis antara pengembang dan organisasi mereka yang lebih luas. Kemudian, saat kita memasuki proses produksi, otomatisasi fleksibel perlu menjadi yang utama, memastikan bahwa AI tetap menjadi penolong, bukan penghalang. Jadi, ini bukan hanya satu lawan satu – untuk berhasil, kita membutuhkan keduanya.

Peter Schneider adalah Manajer Produk Utama di Qt Dengan pengalaman luas dalam manajemen produk internasional, teknik komputer, dan pemasaran produk di industri digital. Sebelum posisi saat ini, Peter menjabat sebagai Chief Product Officer di Efecte, sebuah perusahaan publik yang mengembangkan platform manajemen layanan berbasis cloud dan layanan berbasis AI. Sebelumnya dalam karirnya, ia memegang berbagai peran manajemen produk global di Nokia dan Siemens. Ia memiliki gelar MBA dalam Manajemen Umum dari Sekolah Ekonomi Helsinki dan gelar Sarjana Sains (B.Sc.) dalam Teknik Komputer dari Universitas Ilmu Terapan di Frankfurt.