Bahasa Indonesia
Engineering Culture: Apa Itu dan Bagaimana Pemimpin Membangunnya Secara Sengaja

Turn this article into takeaways for your work.
Each assistant summarizes the article only for you and suggests best practices for your work.
Engineering culture adalah sekumpulan norma, praktik, dan nilai yang membentuk cara sebuah organisasi rekayasa perangkat lunak menjalankan pekerjaannya. Ia menentukan bagaimana para insinyur mendekati masalah, bagaimana mereka berkolaborasi, bagaimana mereka menangani kualitas dan utang teknis, bagaimana mereka merespons kegagalan, dan apa yang bersedia mereka katakan dengan lantang dalam rapat. Engineering culture yang kuat menghasilkan perangkat lunak yang andal, mudah dipelihara, dan tim yang terus berkembang. Yang lemah menghasilkan perangkat lunak yang tidak dibanggakan siapapun dan tim dengan pergantian tinggi karena insinyur terbaik keluar.
Apa sebenarnya engineering culture itu
Budaya dalam organisasi rekayasa terlihat dalam keputusan yang dibuat para insinyur saat tidak ada yang mengawasi: seberapa menyeluruh mereka menguji sebelum mendorong ke produksi, apakah mereka mengangkat kekhawatiran saat melihat keputusan desain yang mereka rasa salah, seberapa hati-hati mereka meninggalkan kode untuk orang berikutnya yang akan memeliharanya, dan apakah mereka mengakui apa yang tidak mereka ketahui atau menampilkan kepercayaan diri yang tidak mereka miliki.
Perilaku-perilaku ini bukan terutama sifat kepribadian. Ini adalah respons yang dipelajari terhadap lingkungan. Insinyur yang bekerja di organisasi yang menghargai pengujian menyeluruh (melalui berkurangnya insiden, pengakuan positif, dan terhindarnya gangguan akhir pekan) akan menguji dengan menyeluruh. Insinyur yang bekerja di organisasi yang memprioritaskan kecepatan pengiriman di atas segalanya belajar untuk mengiriman cepat dan membiarkan tim berikutnya menangani konsekuensinya. Budaya membentuk perilaku melalui siklus umpan balik yang diciptakannya, bukan melalui nilai-nilai yang tertulis dalam buku panduan rekayasa.
Ini berarti engineering culture terutama merupakan tanggung jawab kepemimpinan, bukan masalah rekrutmen. Insinyur yang sama yang menulis kode yang hati-hati dan telah diuji dengan baik di satu organisasi akan menulis kode yang tergesa-gesa dan tidak diuji di organisasi lain. Lingkungan menentukan lebih banyak daripada orangnya.
Key Facts
Penelitian tentang praktik DevOps, khususnya seri laporan State of DevOps tahunan, secara konsisten menemukan bahwa organisasi rekayasa berkinerja tertinggi dibedakan dari organisasi rata-rata terutama oleh faktor budaya dan proses, termasuk deployment yang dimiliki tim, keamanan psikologis untuk melaporkan kesalahan, dan siklus umpan balik yang cepat, bukan oleh pilihan teknologi atau ukuran tim.
Penelitian organisasi tentang kinerja tim rekayasa menemukan bahwa keamanan psikologis, kemampuan untuk mengangkat kekhawatiran teknis tanpa takut dihakimi atau disalahkan, adalah prediktor terkuat pada tingkat tim untuk hasil kualitas rekayasa, termasuk tingkat cacat dan waktu pemulihan insiden.
Studi tentang akumulasi utang teknis menemukan bahwa pendorong utamanya bukan penilaian rekayasa individu yang buruk, melainkan struktur insentif organisasi yang menciptakan tekanan untuk menyampaikan fitur dalam jangka waktu yang menutup kemungkinan kerja kualitas teknis yang memadai.
Komponen engineering culture yang kuat
Keunggulan teknis sebagai nilai nyata. Organisasi yang mengatakan menghargai keunggulan teknis tetapi secara konsisten memprioritaskan pengiriman fitur di atas kualitas mengajarkan para insinyur bahwa keunggulan teknis bersifat opsional. Engineering culture yang kuat membuat trade-off antara kualitas dan kecepatan secara eksplisit, menjadikannya percakapan nyata dengan taruhan nyata, dan tidak menyelesaikannya secara sistematis demi kecepatan. Ini tidak berarti lambat. Ini berarti kualitas benar-benar ada dalam keputusan, bukan hanya dalam nilai yang dinyatakan.
Keamanan psikologis untuk perbedaan pendapat teknis. Insinyur berpengalaman tahu kapan keputusan teknis itu salah. Tetapi di banyak organisasi, mengatakannya itu berisiko: keputusan dibuat oleh seseorang yang lebih senior, tenggat waktu sudah tetap, kasus bisnis dibangun atas asumsi tersebut. Insinyur di lingkungan ini belajar untuk mematuhi tanpa keberatan, yang merupakan salah satu jalur paling pasti menuju masalah teknis yang mahal di kemudian hari. Engineering culture yang kuat secara eksplisit melindungi perbedaan pendapat, terutama perbedaan pendapat teknis, dan memiliki proses untuk mengangkat kekhawatiran sebelum komitmen dibuat.
Kepemilikan bersama atas kualitas. Di beberapa organisasi rekayasa, kualitas adalah masalah tim QA. Developer menulis kode; fungsi terpisah memvalidasinya. Struktur ini secara sistematis mengurangi kualitas apa yang ditulis developer, karena mereka tidak memiliki konsekuensinya. Engineering culture yang kuat menempatkan kepemilikan kualitas pada insinyur yang membangun produk: mereka merancang untuk kemudahan pengujian, menulis tes, saling meninjau kode, dan bertanggung jawab atas apa yang mereka kirimkan.
Belajar dari kegagalan tanpa menyalahkan. Setiap organisasi rekayasa memiliki kegagalan: gangguan, cacat, insiden keamanan, estimasi yang meleset, keputusan arsitektur yang salah. Budaya didefinisikan oleh apa yang terjadi selanjutnya. Postmortem dengan penyalahan, di mana percakapan berfokus pada menemukan orang yang menyebabkan masalah, menghasilkan insinyur yang menyembunyikan masalah dan menghindari kasus tepi yang mungkin mengekspos mereka. Postmortem tanpa penyalahan, di mana percakapan berfokus pada kondisi apa yang membuat kegagalan bisa terjadi dan bagaimana mencegah kegagalan serupa, menghasilkan insinyur yang mengangkat masalah lebih awal dan belajar darinya secara terbuka. Perbedaan operasional praktis antara dua budaya ini signifikan: budaya yang menyalahkan memiliki lebih banyak insiden, tingkat keparahan lebih tinggi, dan waktu pemulihan lebih lama.
Otonomi dalam batasan yang jelas. Pekerjaan rekayasa adalah pekerjaan pengetahuan yang mendapat manfaat dari otonomi tinggi: insinyur yang memahami masalah dan memiliki wewenang untuk menyelesaikannya dengan cara yang mereka anggap terbaik. Tetapi otonomi tanpa batasan menghasilkan inkonsistensi, masalah integrasi, dan sistem yang secara teknis menarik tetapi sulit dipelihara. Engineering culture yang kuat mendefinisikan batasan dengan jelas (standar arsitektur, persyaratan keamanan, ekspektasi operasional) dan memberi insinyur kebebasan sejati di dalamnya. Batasannya bukan bagaimana memecahkan masalah, melainkan dengan apa solusi harus kompatibel.
Komunikasi teknis yang langsung. Code review, tinjauan arsitektur, dan diskusi teknis semuanya membutuhkan kemampuan untuk memberikan dan menerima umpan balik teknis yang kritis dengan jelas. Engineering culture yang telah mengadopsi norma umpan balik tidak langsung dari beberapa lingkungan korporat menghasilkan code review yang sebenarnya tidak mengidentifikasi masalah, diskusi arsitektur yang tidak mengangkat kekhawatiran nyata, dan insiden yang terlihat oleh beberapa insinyur yang tidak berkata apa-apa. Engineering culture yang kuat mengembangkan norma komunikasi teknis yang langsung dan spesifik yang tidak bersifat personal dan tidak dilembutkan hingga tidak berguna.
Apa yang dilakukan pemimpin rekayasa
Pemimpin teknis dan rekayasa membentuk budaya melalui perilaku spesifik, bukan hanya melalui nilai yang mereka nyatakan.
Mereka memodelkan perilaku yang mereka inginkan. Pemimpin rekayasa yang menulis kode produksi, berpartisipasi dalam code review, melakukan postmortem dengan rasa ingin tahu intelektual yang tulus tentang kegagalan, dan mengakui ketidakpastian teknis menetapkan template perilaku yang dipelajari tim. Pemimpin yang mengatakan mereka menghargai keunggulan teknis tetapi tidak terlibat dengan pekerjaan teknis membiarkan budaya dibentuk oleh siapapun yang paling berpengaruh di tim.
Mereka melindungi waktu rekayasa. Salah satu keluhan paling konsisten dalam organisasi rekayasa adalah bahwa rapat yang terus-menerus, pergantian konteks yang sering, dan prioritas yang tidak jelas membuat tidak mungkin melakukan pekerjaan teknis yang mendalam. Pemimpin yang melindungi blok waktu tanpa gangguan untuk pekerjaan rekayasa, mengurangi overhead rapat, dan membantu insinyur mengelola biaya pergantian konteks mengkomunikasikan bahwa pekerjaan teknis mendalam adalah pekerjaan nyata yang layak dilindungi.
Mereka membuat utang teknis terlihat dan dapat dikelola. Utang teknis, biaya yang terakumulasi dari jalan pintas masa lalu dan perbaikan cepat, adalah masalah kepemimpinan sebanyak masalah teknis. Pemimpin rekayasa yang kuat mempertahankan visibilitas tingkat utang, membuat keputusan eksplisit tentang kapan harus menanggungnya dan kapan harus melunasinya, dan menolak pola organisasi yang memperlakukan utang teknis sebagai tidak terlihat hingga menyebabkan insiden. Mode kegagalan klasiknya adalah "kita akan memperbaikinya nanti" yang diulang cukup sering hingga nanti tidak pernah datang.
Mereka merekrut dan mengembangkan penilaian rekayasa. Kemampuan teknis diperlukan tetapi tidak cukup untuk engineering culture yang kuat. Penilaian, khususnya kemampuan untuk menilai trade-off, mengkomunikasikan risiko teknis dengan jelas, dan membuat keputusan dalam ketidakpastian, sama pentingnya dan lebih sulit dikembangkan. Pemimpin yang merekrut semata-mata berdasarkan kemampuan teknis dan tidak berinvestasi dalam mengembangkan penilaian menghasilkan tim insinyur yang secara teknis unggul yang membuat keputusan arsitektur yang buruk dan berkomunikasi dengan buruk kepada bagian lain organisasi.
Mereka membangun jembatan ke kepemimpinan non-teknis. Masalah engineering culture sering diperparah oleh pemisahan antara rekayasa dan fungsi bisnis yang dilayaninya. Ketika manajer produk, eksekutif, dan insinyur tidak berbagi pemahaman kerja tentang kendala dan trade-off teknis, hasilnya adalah persyaratan bisnis yang tidak realistis secara teknis, pekerjaan rekayasa yang melayani prioritas yang salah, dan ketegangan kronis antar fungsi. Pemimpin rekayasa yang membangun jembatan ini, yang membantu pemimpin non-teknis memahami biaya jalan pintas teknis dan nilai investasi teknis, mengubah input yang diterima tim mereka.
Engineering culture dalam konteks organisasi yang berbeda
Engineering culture terlihat berbeda tergantung pada ukuran organisasi, kematangan produk, dan peran yang dimainkan rekayasa dalam bisnis.
Organisasi tahap awal. Di perusahaan rintisan, engineering culture sering kali merupakan engineering culture para pendiri. Norma ditetapkan oleh beberapa insinyur pertama, dan keputusan yang mereka buat tentang kualitas kode, pengujian, dan arsitektur menjadi standar bawaan yang diwarisi rekrutan berikutnya. Pemimpin rekayasa tahap awal yang berinvestasi dalam fondasi yang baik, bahkan di bawah tekanan untuk mengiriman, menghemat biaya remediasi yang besar di kemudian hari. Keputusan engineering culture yang paling mahal dibuat sebelum ada yang mengenalinya sebagai keputusan budaya.
Organisasi yang berkembang. Ketika organisasi rekayasa tumbuh dari 10 menjadi 100 menjadi 1.000 insinyur, mekanisme informal yang mempertahankan budaya di hari-hari awal menjadi tidak memadai. Transmisi budaya melalui kedekatan dan konteks bersama rusak saat tim berkembang biak dan masa kerja semakin beragam. Pemimpin pada tahap ini perlu membuat engineering culture secara eksplisit: mendokumentasikan standar, membangun proses, dan mengembangkan lapisan manajemen yang membawa dan memodelkan budaya daripada mengencerkannya.
Organisasi perusahaan. Organisasi rekayasa besar menghadapi kompleksitas tambahan dari sistem warisan, budaya warisan, dan tantangan mempertahankan relevansi saat alat dan praktik baru muncul. Pemimpin rekayasa dalam konteks ini sering beroperasi dalam ketegangan antara budaya yang dimiliki organisasi dan budaya yang dibutuhkannya. Jalur praktisnya biasanya adalah membangun budaya yang kuat dalam unit terbatas (tim, area produk) sambil bekerja secara bertahap untuk mengubah kondisi organisasi yang lebih luas.
Engineering culture dan hasil bisnis
Hubungan antara engineering culture dan hasil bisnis terdokumentasi dengan baik. Organisasi dengan engineering culture yang kuat mengiriman lebih sering, pulih dari insiden lebih cepat, dan memiliki tingkat kegagalan perubahan yang lebih rendah. Insinyur mereka melaporkan kepuasan kerja yang lebih tinggi dan bertahan lebih lama. Sistem mereka lebih andal dan lebih murah untuk dipelihara.
Tetapi hubungannya tidak selalu jelas bagi pemimpin non-teknis, terutama saat investasi budaya sedang dilakukan dan imbalannya masih ada di depan. Pemimpin rekayasa yang paling kuat dapat menjelaskan kasus bisnis untuk investasi budaya: keandalan adalah kepercayaan pelanggan, kecepatan deployment adalah daya tanggap kompetitif, dan utang teknis adalah kewajiban neraca yang mengakumulasi bunga.
Pertanyaan yang sering diajukan
Pertanyaan yang Sering Diajukan tentang Engineering Culture
Apa perbedaan antara engineering culture dan proses rekayasa?
Proses adalah struktur formal bagaimana pekerjaan dilakukan: siklus rilis, persyaratan code review, protokol respons insiden. Budaya adalah sekumpulan norma dan nilai yang menentukan bagaimana insinyur berperilaku di dalam dan di sekitar proses tersebut. Proses yang kuat dalam budaya yang lemah sering dimainkan atau diabaikan. Budaya yang kuat dengan proses yang lemah dapat berfungsi tetapi kehilangan efisiensi dan konsistensi. Keduanya penting; keduanya bukan pengganti satu sama lain.
Bagaimana pemimpin non-teknis mempengaruhi engineering culture?
Secara substansial. Pemimpin non-teknis mengendalikan prioritas organisasi, alokasi sumber daya, dan tekanan bisnis yang membentuk apa yang diminta tim rekayasa untuk dioptimalkan. CEO yang secara konsisten memprioritaskan pengiriman fitur di atas keandalan menciptakan tekanan engineering culture ke arah jalan pintas, terlepas dari apa yang dikatakan manajer rekayasa tentang kualitas. Pemimpin non-teknis yang mengembangkan literasi teknis yang cukup untuk memahami trade-off, dan yang membuat keputusan eksplisit tentangnya daripada secara implisit memaksa tangan tim rekayasa, menciptakan kondisi untuk engineering culture yang lebih baik.
Bagaimana Anda membangun kembali engineering culture setelah periode utang teknis yang tinggi atau praktik yang buruk?
Secara perlahan. Norma yang menghasilkan utang teknis tertanam kuat dalam siklus umpan balik yang telah diciptakan organisasi. Membangun kembali memerlukan perubahan siklus tersebut: secara eksplisit memprioritaskan keandalan di atas fitur untuk periode yang ditentukan, menjalankan postmortem tanpa menyalahkan secara terlihat, merayakan kualitas maupun kecepatan, dan memberi insinyur pengalaman bekerja secara berbeda dan mendapatkan hasil yang lebih baik. Beberapa kuartal sinyal prioritas yang konsisten dapat menggeser engineering culture secara signifikan, tetapi hanya jika tekanan bisnis berubah untuk sesuai dengan nilai yang dinyatakan.
Haruskah engineering culture sama di berbagai tim rekayasa dalam organisasi besar?
Elemen fundamentalnya harus konsisten: standar kualitas teknis, keamanan psikologis untuk perbedaan pendapat, tinjauan insiden tanpa menyalahkan, dan kepemilikan bersama atas keandalan. Praktik spesifik yang mengekspresikan elemen-elemen tersebut dapat bervariasi berdasarkan tim, area produk, dan domain teknis. Budaya tim mobile akan terasa berbeda dari budaya tim platform, meskipun keduanya berbagi nilai mendasar yang sama. Memaksakan keseragaman budaya di area di mana keberagaman adalah tepat merusak otonomi yang membuat pekerjaan rekayasa berjalan dengan baik.
Engineering culture terbaik tidak dibangun secara kebetulan. Dibangun oleh pemimpin yang memahami bahwa siklus umpan balik yang mereka ciptakan, baik melalui insentif, perilaku, atau keputusan di bawah tekanan, membentuk apa yang dilakukan insinyur lebih kuat dari nilai tertulis mana pun. Lihat keamanan psikologis untuk penelitian fundamental tentang mengapa keamanan untuk berbicara penting bagi kinerja tim, dan kepemimpinan kreatif untuk prinsip-prinsip terkait tentang membangun organisasi di mana solusi orisinal dapat muncul.
