Ada sebuah ironi yang jarang kita akui: kita membangun software dengan semangat kerajinan, namun hampir tidak ada yang peduli dengan prosesnya. Stakeholder ingin fitur. CEO ingin revenue. User ingin aplikasi tidak crash. Tidak satu pun dari mereka yang bertanya, apakah variabel kita diberi nama dengan baik, apakah dependency injection dipakai dengan tepat, atau apakah kita menggunakan monad yang benar.
Sebagai developer, kita terbiasa meyakinkan diri bahwa keterampilan kitalah yang menghasilkan outcome yang diinginkan. Tapi apa yang terjadi ketika sebuah tool muncul dan menghasilkan outcome yang sama tanpa perlu memahami single responsibility principle?
David Copeland, seorang developer dengan pengalaman 30 tahun, pernah menulis sebuah esai yang menggugat: The Death of the Software Craftsman. Intinya sederhana: semua teknik yang kita pelajari selama bertahun-tahun untuk meningkatkan kualitas software, pada akhirnya, adalah upaya untuk membantu manusia memahami sistem yang sedang diubah. Static typing, code review, web framework, object-oriented design. Semua itu adalah solusi untuk satu masalah: membuat manusia bisa berpikir jernih dalam kompleksitas.
Tapi bayangkan jika ada sebuah tool yang menerima input berupa sistem apa pun dan deskripsi perubahan, lalu menghasilkan sistem yang sudah diupdate. Tanpa perlu paham arsitektur. Tanpa perlu paham pattern. Tanpa perlu paham code smell. Apakah kita masih membutuhkan kerajinan kode?
Copeland menggambarkan proses ini dengan sebuah diagram yang brutal. Di satu sisi, ada developer yang memahami sistem, menggunakan tools, melakukan review, dan akhirnya menghasilkan perubahan. Di sisi lain, ada sebuah black box yang menerima sistem dan deskripsi perubahan, lalu langsung mengeluarkan sistem yang sudah diupdate. Tidak ada manusia di dalamnya. Tidak ada proses berpikir. Hanya input dan output. Dan bagi dunia luar, yang terlihat hanyalah outcome.
Reaksi awal saya terhadap AI code generation adalah kombinasi dari jijik dan bosan. Banyak alasan untuk menolak: data training tidak etis, konsumsi energi masif, dimiliki oleh korporasi yang terlalu besar, pricing disubsidi investor, output non-deterministik, dan sulit dipertanggungjawabkan.
Namun, seperti yang dituliskan Copeland, masalah-masalah ini bukanlah intrinsik. Model AI bisa dibangun secara etis. DeepSeek sudah menunjukkan bahwa efisiensi bisa meningkat secara dramatis. Harga mungkin bisa turun. Dan jika outputnya cukup reliable untuk 80 persen kasus penggunaan, mengapa orang tidak akan menggunakannya?
Ini bukan tentang AI yang jahat. Ini tentang ekonomi. Hampir semua orang di sekitar software development hanya peduli pada outcome. Mereka tidak peduli proses. Jika AI bisa menghasilkan spreadsheet dalam web browser atau CRUD API dalam lima menit, tidak ada alasan bagi manajemen untuk membayar developer senior menulisnya selama lima jam. Bagi bisnis, margin adalah segalanya. Dan AI menawarkan margin yang lebih besar.
Di Indonesia, realitas ini terasa lebih tajam. Banyak startup dan enterprise masih dalam fase growth at all costs. Teknologi baru dipilih bukan karena kelayakan teknis, tapi karena hype. AI masuk ke dalam proses development bukan karena dipahami, tapi karena investor menuntut efisiensi. Dalam lingkungan seperti ini, software craftsmanship terasa seperti kemewahan yang tidak bisa dijustifikasi.
Kita sering mendengar cerita: tim developer junior yang menggunakan AI untuk menulis seluruh fitur, lalu senior developer harus debugging selama seminggu karena tidak ada yang paham alur datanya. Atau codebase yang membengkak dengan boilerplate yang identik, diulang ribuan kali, karena AI tidak punya konsep DRY. Masalah ini bukan teoretis. Ini terjadi setiap hari di kantor-kantor Jakarta, Bandung, dan Surabaya.
Yang lebih mengkhawatirkan adalah mindset yang berkembang: karena AI bisa menulis kode, mengapa kita masih perlu belajar fundamental? Generasi baru developer yang belajar lewat vibe coding tanpa pernah memahami algoritma dasar atau sistem operasi. Mereka hebat dalam menghasilkan, tapi lemah dalam memahami. Dan ketika sistem mereka rusak di production, mereka tidak tahu harus mencari di mana.
Saya bukan anti-AI. Saya menggunakan Copilot dan Claude Code hampir setiap hari. Tapi ada perbedaan besar antara menggunakan AI sebagai katalisator dan menggunakan AI sebagai pengganti pikiran. Yang pertama menggandakan produktivitas. Yang kedua menggantikan identitas.
Software craftsmanship bukan sekadar menulis kode yang bersih. Itu adalah sikap: rasa ingin tahu, kecermatan, kebanggaan pada pekerjaan yang terstruktur dengan baik, dan rasa tanggung jawab terhadap sistem yang dibangun. Ketika developer berubah menjadi prompt engineer yang hanya menggabungkan snippet tanpa memahami apa yang ada di baliknya, kita kehilangan sesuatu yang fundamental. Kita kehilangan kemampuan untuk berpikir dalam sistem.
Dan ini berbahaya. Sistem yang tidak dipahami oleh siapa pun, meskipun bekerja hari ini, adalah bom waktu. Technical debt tidak hilang hanya karena AI yang menulisnya. Ia hanya disembunyikan di balik lapisan abstraksi yang lebih tebal. Suatu hari, ketika AI salah menginterpretasikan satu prompt, atau ketika requirement berubah sedikit, seluruh sistem bisa runtuh karena tidak ada yang paham fondasinya.
Copeland menawarkan tiga jalan: all-in dengan AI, total opt-out, atau mencari titik tengah. Saya cenderung pada pilihan ketiga. Gunakan AI untuk menghasilkan boilerplate, menulis test, atau mengeksplorasi ide. Tapi tetapkan batas: jangan pernah membiarkan AI membuat keputusan arsitektur tanpa pemahaman manusia. Jangan pernah membiarkan kode masuk ke production tanpa review yang benar-benar memahami implikasinya.
Kita perlu membedakan antara coding dan engineering. Coding adalah mengetik karakter ke editor. Engineering adalah memahami konteks, trade-off, lifecycle, dan dampak sosial dari sebuah keputusan teknis. AI mungkin menguasai coding. Tapi engineering masih butuh manusia yang berpikir, merasakan, dan bertanggung jawab.
Artikel ini terinspirasi dari pemikiran David Copeland di naildrivin5.com dan refleksi personal penulis tentang perubahan landscape software engineering di Indonesia.
Jadi, pertanyaannya bukan lagi: apakah AI akan menggantikan developer? Pertanyaannya adalah: apakah kita masih mau menjadi craftsman di dunia yang tidak lagi menghargai kerajinan? Atau kita akan pasrah menjadi operator prompt yang hanya menunggu output?
Bagaimana denganmu? Di mana kamu menarik garis antara bantuan AI dan penyerahan pikiran?
Dapatkan feedback, users, dan eksposur dari komunitas kreator, developer, dan entrepreneur digital Indonesia.
Submit Produk → Pelajari Dulu