Bahasa Melayu

Engineering Culture: Apakah Ia dan Bagaimana Pemimpin Membinanya dengan Sengaja

Rangka kerja engineering culture yang menunjukkan komponen organisasi teknikal berprestasi tinggi

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 ialah set norma, amalan dan nilai yang membentuk cara organisasi kejuruteraan perisian menjalankan kerjanya. Ia menentukan cara jurutera mendekati masalah, cara mereka bekerjasama, cara mereka menangani kualiti dan hutang teknikal, cara mereka bertindak balas terhadap kegagalan dan apa yang mereka sanggup katakan dengan lantang dalam mesyuarat. Engineering culture yang kukuh menghasilkan perisian yang boleh dipercayai dan boleh diselenggara, serta pasukan yang terus bertambah baik. Yang lemah menghasilkan perisian yang tiada sesiapa berbangga dengannya dan pasukan dengan kadar pusing ganti yang tinggi kerana jurutera terbaik keluar.

Apakah sebenarnya engineering culture itu

Budaya dalam organisasi kejuruteraan kelihatan dalam keputusan yang dibuat jurutera apabila tiada siapa memerhati: seberapa teliti mereka menguji sebelum menolak ke pengeluaran, sama ada mereka menyuarakan kebimbangan apabila melihat keputusan reka bentuk yang dianggap salah, seberapa berhati-hati mereka meninggalkan kod untuk orang seterusnya yang akan menyelenggaranya, dan sama ada mereka mengakui apa yang mereka tidak tahu atau menunjukkan keyakinan yang tidak mereka miliki.

Tingkah laku ini bukan terutamanya ciri personaliti. Ia adalah tindak balas yang dipelajari terhadap persekitaran. Jurutera yang bekerja dalam organisasi yang memberi ganjaran kepada pengujian yang teliti (melalui pengurangan insiden, pengiktirafan positif dan pengelakan gangguan hujung minggu) menguji dengan teliti. Jurutera yang bekerja dalam organisasi yang mengutamakan kelajuan penghantaran melebihi segalanya belajar menghantar dengan cepat dan membiarkan pasukan seterusnya menangani akibatnya. Budaya membentuk tingkah laku melalui gelung maklum balas yang diciptanya, bukan melalui nilai yang ditulis dalam buku panduan kejuruteraan.

Ini bermakna engineering culture terutamanya merupakan tanggungjawab kepimpinan, bukan masalah pengambilan pekerja. Jurutera yang sama yang menulis kod yang teliti dan telah diuji dengan baik dalam satu organisasi akan menulis kod yang tergesa-gesa dan tidak diuji dalam organisasi lain. Persekitaran menentukan lebih banyak daripada individu.

Key Facts

Penyelidikan tentang amalan DevOps, khususnya siri laporan State of DevOps tahunan, mendapati secara konsisten bahawa organisasi kejuruteraan berprestasi tertinggi dibezakan daripada organisasi biasa terutamanya oleh faktor budaya dan proses, termasuk deployment yang dimiliki pasukan, keselamatan psikologi untuk melaporkan ralat dan gelung maklum balas yang pantas, bukannya pilihan teknologi atau saiz pasukan.

Penyelidikan organisasi tentang prestasi pasukan kejuruteraan mendapati bahawa keselamatan psikologi, keupayaan untuk membangkitkan kebimbangan teknikal tanpa takut dihakimi atau dipersalahkan, adalah peramal paling kuat pada peringkat pasukan bagi hasil kualiti kejuruteraan, termasuk kadar kecacatan dan masa pemulihan insiden.

Kajian tentang pengumpulan hutang teknikal mendapati bahawa pemacu utama bukan pertimbangan kejuruteraan individu yang lemah tetapi struktur insentif organisasi yang mewujudkan tekanan untuk menyampaikan ciri-ciri dalam jangka masa yang menghalang kerja kualiti teknikal yang mencukupi.

Komponen engineering culture yang kukuh

Kecemerlangan teknikal sebagai nilai sebenar. Organisasi yang mengatakan mereka menghargai kecemerlangan teknikal tetapi secara konsisten mengutamakan penghantaran ciri melebihi kualiti mengajar jurutera bahawa kecemerlangan teknikal adalah pilihan. Engineering culture yang kukuh menjadikan trade-off antara kualiti dan kelajuan secara eksplisit, menjadikannya perbualan sebenar dengan pertaruhan sebenar, dan tidak menyelesaikannya secara sistematik memihak kepada kelajuan. Ini tidak bermakna perlahan. Ia bermakna kualiti benar-benar ada dalam keputusan, bukan hanya dalam nilai yang dinyatakan.

Keselamatan psikologi untuk perbezaan pendapat teknikal. Jurutera berpengalaman tahu apabila keputusan teknikal adalah salah. Tetapi dalam banyak organisasi, menyatakannya adalah berisiko: keputusan itu dibuat oleh seseorang yang lebih kanan, jadual waktu adalah tetap, kes perniagaan telah dibina berdasarkan andaian tersebut. Jurutera dalam persekitaran ini belajar untuk mematuhi tanpa membantah, yang merupakan salah satu laluan paling pasti menuju masalah teknikal yang mahal kemudian. Engineering culture yang kukuh secara eksplisit melindungi perbezaan pendapat, terutamanya perbezaan pendapat teknikal, dan mempunyai proses untuk membangkitkan kebimbangan sebelum komitmen dibuat.

Pemilikan bersama terhadap kualiti. Dalam sesetengah organisasi kejuruteraan, kualiti adalah masalah pasukan QA. Pembangun menulis kod; fungsi yang berasingan mengesahkannya. Struktur ini secara sistematik mengurangkan kualiti apa yang ditulis pembangun, kerana mereka tidak memiliki akibatnya. Engineering culture yang kukuh meletakkan pemilikan kualiti pada jurutera yang membina produk: mereka mereka bentuk untuk kebolehujian, menulis ujian, menyemak kod antara satu sama lain dan bertanggungjawab terhadap apa yang mereka hantar.

Belajar daripada kegagalan tanpa menyalahkan. Setiap organisasi kejuruteraan mempunyai kegagalan: gangguan, kecacatan, insiden keselamatan, anggaran yang terlepas, keputusan seni bina yang salah. Budaya ditentukan oleh apa yang berlaku seterusnya. Postmortem yang menyalahkan, di mana perbualan berfokus pada mencari individu yang menyebabkan masalah, menghasilkan jurutera yang menyembunyikan masalah dan mengelakkan kes pinggiran yang mungkin mendedahkan mereka. Postmortem tanpa menyalahkan, di mana perbualan berfokus pada keadaan apa yang memungkinkan kegagalan dan cara mencegah kegagalan serupa, menghasilkan jurutera yang membangkitkan masalah lebih awal dan belajar daripadanya secara terbuka. Perbezaan operasi praktikal antara dua budaya ini adalah ketara: budaya yang menyalahkan mempunyai lebih banyak insiden, keterukan yang lebih tinggi dan masa pemulihan yang lebih lama.

Autonomi dalam batasan yang jelas. Kerja kejuruteraan adalah kerja pengetahuan yang mendapat manfaat daripada autonomi yang tinggi: jurutera yang memahami masalah dan mempunyai kuasa untuk menyelesaikannya dengan cara yang mereka fikir terbaik. Tetapi autonomi tanpa batasan menghasilkan ketidakkonsistenan, masalah integrasi dan sistem yang menarik secara teknikal tetapi sukar diselenggara. Engineering culture yang kukuh mentakrifkan batasan dengan jelas (piawaian seni bina, keperluan keselamatan, jangkaan operasi) dan memberi jurutera kebebasan tulen dalam batasan tersebut. Batasannya bukan cara menyelesaikan masalah, tetapi dengan apa penyelesaian perlu serasi.

Komunikasi teknikal yang langsung. Semakan kod, semakan seni bina dan perbincangan teknikal semuanya memerlukan keupayaan untuk memberi dan menerima maklum balas teknikal yang kritikal dengan jelas. Engineering culture yang telah mengamalkan norma maklum balas tidak langsung daripada sesetengah persekitaran korporat menghasilkan semakan kod yang sebenarnya tidak mengenal pasti masalah, perbincangan seni bina yang tidak membangkitkan kebimbangan sebenar dan insiden yang kelihatan kepada beberapa jurutera yang tidak berkata apa-apa. Engineering culture yang kukuh membangunkan norma komunikasi teknikal yang langsung dan spesifik yang tidak bersifat peribadi dan tidak dilembutkan sehingga tidak berguna.

Apa yang pemimpin kejuruteraan lakukan

Pemimpin teknikal dan kejuruteraan membentuk budaya melalui tingkah laku tertentu, bukan hanya melalui nilai yang mereka nyatakan.

Mereka memodelkan tingkah laku yang mereka mahu. Pemimpin kejuruteraan yang menulis kod pengeluaran, mengambil bahagian dalam semakan kod, menjalankan postmortem dengan rasa ingin tahu intelektual yang tulen tentang kegagalan dan mengakui ketidakpastian teknikal menetapkan templat tingkah laku yang dipelajari pasukan. Pemimpin yang mengatakan mereka menghargai kecemerlangan teknikal tetapi tidak melibatkan diri dengan kerja teknikal membiarkan budaya dibentuk oleh sesiapa yang paling berpengaruh dalam pasukan.

Mereka melindungi masa kejuruteraan. Salah satu aduan paling konsisten dalam organisasi kejuruteraan ialah mesyuarat yang berterusan, pertukaran konteks yang kerap dan keutamaan yang tidak jelas menjadikannya mustahil untuk melakukan kerja teknikal yang mendalam. Pemimpin yang melindungi blok masa yang tidak terganggu untuk kerja kejuruteraan, mengurangkan bebanan mesyuarat dan membantu jurutera mengurus kos pertukaran konteks menyampaikan bahawa kerja teknikal mendalam adalah kerja sebenar yang wajar dilindungi.

Mereka menjadikan hutang teknikal kelihatan dan boleh diurus. Hutang teknikal, kos terkumpul daripada jalan pintas dan pembetulan pantas yang lalu, adalah masalah kepimpinan sama seperti ia adalah masalah teknikal. Pemimpin kejuruteraan yang kukuh mengekalkan keterlihatan tahap hutang, membuat keputusan eksplisit tentang bila untuk menanggungnya dan bila untuk membayarnya, dan menentang corak organisasi untuk menganggap hutang teknikal sebagai tidak kelihatan sehingga ia menyebabkan insiden. Mod kegagalan klasik ialah "kita akan betulkannya nanti" yang diulang cukup kali sehingga nanti tidak pernah tiba.

Mereka mengambil dan mengembangkan pertimbangan kejuruteraan. Kemahiran teknikal adalah perlu tetapi tidak mencukupi untuk engineering culture yang kukuh. Pertimbangan, khususnya keupayaan untuk menilai trade-off, menyampaikan risiko teknikal dengan jelas dan membuat keputusan dalam keadaan tidak pasti, adalah sama penting dan lebih sukar untuk dibangunkan. Pemimpin yang mengambil pekerja semata-mata untuk keupayaan teknikal dan tidak melabur dalam membangunkan pertimbangan menghasilkan pasukan jurutera yang cemerlang secara teknikal yang membuat keputusan seni bina yang lemah dan berkomunikasi dengan lemah dengan bahagian organisasi yang lain.

Mereka membina jambatan kepada kepimpinan bukan teknikal. Masalah engineering culture sering diperburuk oleh pemisahan antara kejuruteraan dan fungsi perniagaan yang dilayaninya. Apabila pengurus produk, eksekutif dan jurutera tidak berkongsi pemahaman kerja tentang kekangan dan trade-off teknikal, hasilnya adalah keperluan perniagaan yang tidak realistik secara teknikal, kerja kejuruteraan yang melayani keutamaan yang salah dan ketegangan kronik antara fungsi. Pemimpin kejuruteraan yang membina jambatan ini, yang membantu pemimpin bukan teknikal memahami kos jalan pintas teknikal dan nilai pelaburan teknikal, mengubah input yang diterima pasukan mereka.

Engineering culture dalam konteks organisasi yang berbeza

Engineering culture kelihatan berbeza bergantung pada saiz organisasi, kematangan produk dan peranan yang dimainkan kejuruteraan dalam perniagaan.

Organisasi peringkat awal. Dalam syarikat permulaan, engineering culture sering merupakan engineering culture pengasas. Norma ditetapkan oleh beberapa jurutera pertama, dan keputusan yang mereka buat tentang kualiti kod, pengujian dan seni bina menjadi lalai yang diwarisi oleh pengambilan kerja seterusnya. Pemimpin kejuruteraan peringkat awal yang melabur dalam asas yang baik, walaupun di bawah tekanan untuk menghantar, menjimatkan kos pemulihan yang besar kemudian. Keputusan engineering culture yang paling mahal dibuat sebelum sesiapa mengenalinya sebagai keputusan budaya.

Organisasi yang berkembang. Apabila organisasi kejuruteraan berkembang daripada 10 kepada 100 kepada 1,000 jurutera, mekanisme tidak formal yang mengekalkan budaya pada awal hari menjadi tidak mencukupi. Pemindahan budaya melalui kedekatan dan konteks bersama terganggu apabila pasukan bertambah banyak dan tempoh perkhidmatan bertambah pelbagai. Pemimpin pada peringkat ini perlu menjadikan engineering culture secara eksplisit: mendokumentasikan piawaian, membina proses dan membangunkan lapisan pengurusan yang membawa dan memodelkan budaya dan bukannya mencairkannya.

Organisasi perusahaan. Organisasi kejuruteraan yang besar menghadapi kerumitan tambahan sistem warisan, budaya warisan dan cabaran mengekalkan relevansi apabila alat dan amalan baharu muncul. Pemimpin kejuruteraan dalam konteks ini sering beroperasi dalam ketegangan antara budaya yang dimiliki organisasi dan budaya yang diperlukan. Laluan praktikal biasanya adalah untuk membina budaya yang kukuh dalam unit terkandung (pasukan, kawasan produk) sambil bekerja secara berperingkat untuk mengubah syarat organisasi yang lebih luas.

Engineering culture dan hasil perniagaan

Hubungan antara engineering culture dan hasil perniagaan didokumentasikan dengan baik. Organisasi dengan engineering culture yang kukuh menghantar dengan lebih kerap, pulih daripada insiden dengan lebih pantas dan mempunyai kadar kegagalan perubahan yang lebih rendah. Jurutera mereka melaporkan kepuasan kerja yang lebih tinggi dan kekal lebih lama. Sistem mereka lebih boleh dipercayai dan lebih murah untuk diselenggara.

Tetapi hubungan itu tidak selalu jelas kepada pemimpin bukan teknikal, terutamanya apabila pelaburan budaya sedang dibuat dan hasilnya masih belum kelihatan. Pemimpin kejuruteraan yang paling kukuh dapat menjelaskan kes perniagaan untuk pelaburan budaya: kebolehpercayaan adalah kepercayaan pelanggan, kelajuan deployment adalah daya saing, dan hutang teknikal adalah liabiliti kunci kira-kira yang mengumpul faedah.

Soalan yang kerap ditanya

Soalan yang Kerap Ditanya tentang Engineering Culture

Apakah perbezaan antara engineering culture dan proses kejuruteraan?

Proses adalah struktur formal bagaimana kerja dilakukan: kitaran release, keperluan semakan kod, protokol tindak balas insiden. Budaya adalah set norma dan nilai yang menentukan cara jurutera berkelakuan dalam dan di sekitar proses tersebut. Proses yang kukuh dalam budaya yang lemah sering dimanipulasi atau diabaikan. Budaya yang kukuh dengan proses yang lemah boleh berfungsi tetapi kehilangan kecekapan dan konsistensi. Kedua-duanya penting; ia bukan pengganti antara satu sama lain.

Bagaimana pemimpin bukan teknikal mempengaruhi engineering culture?

Secara ketara. Pemimpin bukan teknikal mengawal keutamaan organisasi, peruntukan sumber dan tekanan perniagaan yang membentuk apa yang diminta pasukan kejuruteraan untuk dioptimumkan. CEO yang secara konsisten mengutamakan penghantaran ciri melebihi kebolehpercayaan mewujudkan tekanan engineering culture ke arah jalan pintas, tanpa mengira apa yang dikatakan pengurus kejuruteraan tentang kualiti. Pemimpin bukan teknikal yang membangunkan literasi teknikal yang cukup untuk memahami trade-off, dan yang membuat keputusan eksplisit mengenainya dan bukannya secara tersirat memaksa tangan pasukan kejuruteraan, mewujudkan keadaan untuk engineering culture yang lebih baik.

Bagaimana anda membina semula engineering culture selepas tempoh hutang teknikal yang tinggi atau amalan yang lemah?

Perlahan-lahan. Norma yang menghasilkan hutang teknikal tertanam dalam dalam gelung maklum balas yang telah diwujudkan organisasi. Pembinaan semula memerlukan perubahan gelung tersebut: mengutamakan kebolehpercayaan secara eksplisit melebihi ciri untuk tempoh yang ditakrifkan, menjalankan postmortem tanpa menyalahkan secara ketara, meraikan kualiti serta kelajuan dan memberi jurutera pengalaman bekerja secara berbeza dan mendapat hasil yang lebih baik. Beberapa suku tahun isyarat keutamaan yang konsisten boleh mengubah engineering culture dengan ketara, tetapi hanya jika tekanan perniagaan berubah untuk sepadan dengan nilai yang dinyatakan.

Adakah engineering culture harus sama merentasi pasukan kejuruteraan yang berbeza dalam organisasi yang besar?

Elemen asas harus konsisten: piawaian kualiti teknikal, keselamatan psikologi untuk perbezaan pendapat, semakan insiden tanpa menyalahkan dan pemilikan bersama terhadap kebolehpercayaan. Amalan khusus yang menyatakan elemen tersebut boleh berbeza mengikut pasukan, kawasan produk dan domain teknikal. Budaya pasukan mudah alih akan terasa berbeza daripada budaya pasukan platform, walaupun kedua-duanya berkongsi nilai asas yang sama. Memaksa keseragaman budaya dalam kawasan di mana kepelbagaian adalah sesuai menjejaskan autonomi yang menjadikan kerja kejuruteraan berfungsi dengan baik.

Engineering culture terbaik tidak dibina secara kebetulan. Ia dibina oleh pemimpin yang memahami bahawa gelung maklum balas yang mereka cipta, sama ada melalui insentif, tingkah laku atau keputusan di bawah tekanan, membentuk apa yang dilakukan jurutera dengan lebih kuat daripada mana-mana nilai bertulis. Lihat keselamatan psikologi untuk penyelidikan asas tentang mengapa keselamatan untuk bercakap penting bagi prestasi pasukan, dan kepimpinan kreatif untuk prinsip berkaitan tentang membina organisasi di mana penyelesaian asli boleh muncul.