5 alasan kenapa mengukur produktifitas software developer adalah sebuah kebodohan

(5 reasons why measuring software developer’s productivity is a stupidity)

Konten tentang Scrum
Modern Management

--

Pada kala itu kami berenam duduk di sebuah kafe yang konon sangat terkenal di kota asalnya setelah jam kantor. Tiga orang manajer dan dua orang technical leader dari sebuah perusahaan e-commerce terkemuka di Indonesia tertarik untuk membicarakan mengenai organisational agility karena mereka telah membaca Buku Manajemen Modern dengan Scrum. Setelah kami lama berbincang-bincang mengenai Scrum muncullah satu topik mengenai KPI apa yang digunakan untuk mengukur produktifitas software developer dalam tim Scrum.

KPI yang memiliki kepanjangan Key Performance Indicator dan temannya Annual Performance Review adalah sebuah monster yang mengerikan di dalam industri software development yang telah membodohi cara manajer mengelola organisasinya yang secara tidak langsung telah menghasilkan banyak perilaku negatif (dan seringkali perilaku yang tidak etis) orang-orang yang bekerja di dalamnya.

Saya sebenarnya agak malas untuk membicarakan topik yang satu ini karena membicarakan topik ini sering kali berujung pada perdebatan tanpa akhir, apalagi bila membicarakannya dengan manajer yang masih memiliki dogma dari era Karl Marx. Tapi kali ini saya coba untuk menuangkan isi kepala saya dalam bentuk tulisan kenapa saya menganggap kalau KPI individu dan proses performance review tahunan dalam konteks industri software development adalah sebuah pembodohan masal untuk orang-orang yang bekerja di industri ini (termasuk manajer-manajernya).

Apa itu bekerja dan apa itu pekerjaan?

Sebelum kita melihat kenapa saya menganggap Key Performance Indicator (KPI) individu dan Performance Review dalam konteks industri software development adalah kebodohan korporat, mari kita belajar mengenai tata bahasa terlebih dahulu.

Tidak banyak kata di kamus yang memiliki konotasi negatif dan positif pada saat yang bersamaan seperti kata “kerja”. Bila “istirahat” memiliki konotasi yang positif, namun apakah kata “pensiun” memiliki konotasi yang positif adalah sesuatu yang patut dipertanyakan. Kata “main” memiliki konotasi positif, baik bila itu dilakukan oleh orang dewasa maupun anak-anak tetapi “tidak main” bukanlah sesuatu yang bersifat negatif. Dalam lingkungan kantor “tidak kerja” dianggap sebagai sesuatu yang negatif karena pelakunya dianggap sedang tidak menghasilkan/memproduksi apapun (idle) sehingga masyarakat sering kali menyamakan “tidak kerja” dengan “tidak produktif”. Dalam masyarakat kita “pemutusan hubungan kerja (PHK)” atau “tidak memiliki pekerjaan” dipandang sebagai sesuatu yang negatif. “Kerja” juga bisa dipandang sebagai sebuah “kutukan” bila kita pandang “kerja” sebagai sebuah “tuntutan hidup” manusia untuk bisa bertahan hidup, namun di sisi lain “kerja” juga bisa dipandang sebagai sebuah “anugrah" bila kita pandang sebagai aktifitas untuk memenuhi hasrat hidup atau tujuan tertinggi (purpose) manusia sebagai mahluk ciptaan Tuhan dan sebagai sebuah kesempatan membawa dampak bagi umat manusia.

Setelah mempelajari bahasa kita dapat melihat kalau “kerja” adalah sebuah kata yang konotasinya bersifat kompleks. “Kerja” adalah sesuatu yang terintegrasi erat dengan kehidupan masyarakat modern, sesuatu yang melibatkan emosi pelakunya, sesuatu yang menentukan status sosial pelakunya di tengah masyarakat ataupun komunitas di mana dia berada, dan sesuatu menentukan kepuasan pribadi pelakunya. Hal mendasar ini penting untuk diketahui oleh manajer.

Hal pertama yang harus diketahui oleh manajer adalah pemahaman bahwa “pekerjaan” dan “bekerja” adalah hal yang berbeda, walaupun keduanya saling berkaitan, yang satu adalah kata sifat yang lainnya adalah kata kerja. Pekerjaan membawa manfaat bagi pihak yang akan menggunakan hasil pekerjaan tersebut. Berbeda halnya dengan permainan dimana hasil permainan bersifat subyektif dan membawa kepuasan bagi yang memainkannya bukan yang melihatnya. Seorang anak kecil yang bermain layang-layang akan merasakan kepuasan tersendiri, namun orang-orang yang menontonnya tidak akan merasakan kepuasan yang sama. Demikian juga dengan orang-orang yang memainkan sebuah game di telepon genggamnya akan merasakan kepuasan tersendiri dibandingkan yang hanya memperhatikannya.

“Pekerjaan” adalah sebuah obyek, yang memiliki runutan dan alur logika, bersifat independen dan tidak terkait dengan subyek yang mengerjakannya. Namun “bekerja” memiliki sebuah dinamika tersendiri dan terkait dengan emosi subyek atau pekerja yang mengerjakannya. Bekerja harus menghasilkan ‘sense of achievement’, sedangkan pekerjaan harus menghasilkan produktifitas. Dalam lingkungan kerja manajer bertanggung-jawab untuk membuat pekerjaan produktif dan pada saat yang bersamaan pekerja puas menyelesaikannya. Bekerja bersifat pribadi dan berhubungan dengan dimensi pekerja yang mengerjakannya oleh karena itu pekerja harus merasakan kepuasan ketika mereka bekerja. Banyak manajer yang tidak mengerti mengenai batasan ini.

Karena tidak adanya pemahaman yang benar, manajer berpikir bahwa mereka bertanggung-jawab untuk membuat pekerja produktif (atau selalu bekerja), oleh karena itu muncullah paradigma kalau manajer bertanggung-jawab untuk mengukur pekerja menggunakan Key Performance Indicator (KPI) yang telah ditentukan. Muncullah pemahaman apabila ukuran dari seorang pekerja berada di bawah tolak ukur yang telah ditentukan maka mereka tidak produktif. Dalam software development manajer seharusnya mengukur produktifitas pekerjaan tanpa harus mengukur dan mengaitkan dengan pekerjanya. Dan oleh karena itu kita memiliki banyak manajer dan pimpinan perusahaan di Indonesia yang belum bisa keluar dari pikiran era Karl Marx di abad 21 ini.

Pekerjaan perlu dilakukan oleh pekerja namun membuat pekerjaan produktif dan pekerja puas dan sukses mengerjakannya adalah dua hal yang berbeda. Pekerjaan yang tidak produktif dihasilkan oleh pekerja yang merasa puas bukanlah sesuatu yang positif. Di lain sisi pekerjaan yang produktif namun pekerja yang tidak puas adalah sebuah kegagalan juga.

Tipe pekerja dan pekerjaan

Tidak ada industri yang lebih membingungkan lagi di generasi milenial seperti industri software development. Pemahaman yang tepat mengenai industri ini akan mempengaruhi cara kita mengelola para pekerja yang bekerja di industri ini. Cara mengelola yang tepat akan menentukan hasil yang akan kita dapatkan dari para pekerja yang bekerja di industri ini.

Hingga hari tulisan ini ditulis masih banyak manajer di Indonesia yang memandang industri software development seperti industri manufaktur atau industri konstruksi bangunan karena mereka tidak memiliki imajinasi yang cukup tinggi untuk melihat lebih jauh dari itu. Karena imajinasi mereka yang sangat rendah mereka memandang software developer tidak lebih dari buruh atau kuli kode.

Software developer berada dalam kategori pekerja yang sama dengan dokter dan pilot, kategori knowledge worker. Berbeda dengan factory worker, seorang knowledge worker tidak menghasilkan sebuah produk yang bersifat tangible, mereka bekerja untuk menghasilkan knowledge yang akan digunakan oleh pihak lain. Software developer menggunakan kreatifitasnya untuk menghasilkan knowledge berupa algoritma yang digunakan untuk memudahkan pekerjaan orang lain.

When you give smart talented people the freedom to create without fear of failure, amazing things happen.
— Gabe Newell

Namun yang membuat keadaan lebih kompleks lagi adalah software developer bukan hanya seorang knowledge worker, mereka juga termasuk creative worker sama seperti musisi, penulis buku maupun pelukis. Mereka adalah seorang software craftsman. Mereka bekerja sebagai sebuah kesatuan dengan software developer lainnya seperti sebuah orkestra, mereka menuangkan isi kepalanya menjadi dalam bentuk kumpulan kode seperti penulis buku. Text editor adalah kanvas lukis mereka.

Software developer harus dapat berimajinasi di luar kotak untuk dapat menerjemahkan keinginan yang ambigu dari pengguna software menjadi bahasa yang hanya dimengerti oleh mesin dan memastikan semua imajinasi ini terintegrasi dengan imajinasi-imajinasi software developer kreatif lainnya di bawah tekanan jarum jam yang terus berputar. Untuk melakukan semua hal ini bukan hanya membutuhkan intelegensia yang tinggi namun juga kreatifitas untuk dapat berpikir di luar kotak. Software developer harus berimajinasi untuk membuat keajaiban-keajaiban kecil setiap harinya. Semua ini mereka lakukan demi mempermudah pekerjaan umat manusia yang sering kali tidak tahu apa yang mereka inginkan.

Kenapa ada KPI individu dan Performance Review tahunan

KPI individu digunakan oleh manajer untuk mengetahui individu mana yang memiliki performa tinggi. Di banyak korporasi, proses untuk mengukur individu mana yang memiliki performa tinggi dilakukan secara tahunan lewat sebuah acara yang bernama Performance Review atau Performance Appraisal. KPI biasanya dikaitkan dengan kenaikan jabatan maupun bonus yang akan didapatkan oleh individu setiap tahun. KPI individu dan proses Performance Review yang dilakukan oleh banyak korporasi di Indonesia memiliki banyak cacatnya dan tidak relevan untuk pekerjaan software development. Dengan memonitor KPI individu perusahaan berharap mereka dapat mengoptimalkan kinerja perusaaan secara keseluruhan.

When manager don’t know what to manage, they will manage their people. When managers don’t know what to measure they will measure their people.

Mengukur ataupun memberlakukan ukuran adalah sesuatu yang dilematis dalam manajemen software development. Anggapan banyak manajer adalah bila mereka tidak mengukur maka mereka tidak melakukan pekerjaannya sebagai manajer dengan baik. Tetapi di sisi lain, bila mereka mengukur hal yang salah dan/atau dengan satuan ukuran yang salah mereka juga bukan manajer yang baik. Namun paradigma kebanyakan manajer adalah lebih baik mengukur walaupun yang diukur dan satuan ukurannya salah.

KPI yang biasanya digunakan untuk mengukur software developer di Indonesia adalah jumlah fitur yang dapat diselesaikan dalam satuan waktu yang telah ditentukan dengan jumlah defect seminimal mungkin. Sekarang mari kita lihat kenapa KPI yang biasa digunakan oleh banyak perusahaan ini adalah satuan ukuran yang tidak tepat dan lebih sering tidak ada gunanya.

1. Tidak relevan dengan sifat pekerjaan software development

Seorang knowledge worker berbeda dengan buruh pabrik karena perusahaan tidak membayar knowledge worker untuk tangannya mengetik kode namun lebih dari itu yakni untuk ide dan kreatifitas yang dihasilkan oleh otaknya. Sama seperti Stephen Hawking yang dihargai karena ide yang keluar dari otaknya walaupun badannya lumpuh.

Kita dapat mengukur produktifitas seorang buruh pabrik sepatu berdasarkan jumlah sepatu yang ia hasilkan dalam sehari, karena pekerjaannya bersifat repetitif dan mekanis dan produk yang dihasilkan bersifat tangible. Namun untuk knowledge worker seperti software developer, produktifitas mereka tidak bisa diukur karena mereka tidak membuat sesuatu yang tangible atau produk komoditas seperti sepatu. Factory worker membuat (make/assemble), software developer menciptakan (innovate).

Dalam pekerjaan pabrik pekerjaan dan material yang digunakan seragam dan distandarisasikan, dalam software development keseragaman jusrtru akan membatasi inovasi dan kreatifitas. Henry Ford pernah mengatakan: “kostumer boleh memesan mobil dalam warna apapun asalkan warnanya hitam”, karena Henry Ford ingin mengurangi variabilitas dalam produksi. Variabilitas rendah dalam proses produksi artinya proses produksi akan lebih terprediksi. Dalam pekerjaan inovatif seperti software development variabilitas justru diharapkan karena inovasi berasal dari variabilitas.

Fear is altogether incompatible with the production of knowledge. It may produce efforts and anxieties. It will not produce results.
— Peter Drucker

Knowledge work seperti software development bersifat intangible dan tidak memiliki alur logika pengerjaan yang dapat diprediksi karena ide-ide untuk menulis algoritma baru dapat muncul bahkan pada saat penulisan kode. Keluaran dari software development adalah buah pikiran dalam bentuk algoritma yang memudahkan penggunanya dalam melakukan pekerjaannya. Untuk dapat menghasilkan algoritma yang efisien dan efektif bukan hanya memerlukan kecerdasan, kreatifitas dan ketelitian namun software developer juga tidak boleh merasa takut dan terbatasi oleh ukuran apapun.

Bila kita mengukur produktifitas software developer berdasarkan berapa banyak fitur yang ia dapat hasilkan dalam satuan waktu tertentu apakah software developer yang menghabiskan 5 jam hanya untuk menghasilkan 5 baris kode algoritma yang efisien kurang produktif dibandingkan software developer yang menghasilkan ratusan baris kode namun memiliki banyak duplikasi, tingkat maintainability index yang rendah dan cyclomatic complexity yang tinggi? Apakah kita mengukur produktifitas seorang pilot berdasarkan jumlah pesawat yang bisa mereka terbangkan dalam sebulan? Tentu tidak karena bila itu dilakukan pilot dapat letih dan bila ia letih maka bisa menimbulkan kecelakaan. Selain itu ada faktor eksternal lainnya seperti keadaan cuaca yang berada di luar kendali mereka.

Musisi juga tidak pernah diukur berdasarkan jumlah lagu yang mereka dapat hasilkan dalam satuan waktu tertentu karena apa gunanya menghasilkan banyak lagu yang tidak enak didengar? Software developer bekerja seperti penulis lagu yang dapat menghabiskan waktu berbulan-bulan merevisi partitur hanya untuk menghasilkan satu lagu yang indah yang dapat laku keras di pasaran.

Memberlakukan KPI terhadap software developer justru akan menggiring mereka ke cara berpikir kuli kode bukan sebagai seniman kode atau inovator. Jangan bermimpi industri software development di Indonesia bisa seperti di Silicon Valley bila manajemen dan pimpinan perusahaan di Indonesia masih memiliki pola pikir untuk memperlakukan software developer seperti kuli kode.

2. Tidak manusiawi

Bekerja bukan hanya melibatkan dimensi psikologi namun juga dimensi fisiologi karena manusia tidak bekerja seperti mesin. Mesin bekerja secara optimal bila hanya mengerjakan pekerjaan sederhana berulang kali dalam ritme dan kecepatan yang sama.

Sayangnya manusia tidak dirancang sama seperti mesin. Kalaupun manusia mau dipandang seperti mesin, ia adalah mesin yang memiliki banyak ketidak-sempurnaan. Untuk satu pekerjaan yang sama dilakukan secara berulang dia bisa merasa letih, kekurangan stamina dan tidak bisa konsentrasi. Namun di lain sisi manusia sangat optimal dalam melakukan koordinasi dan interaksi, menghubungkan tindakan dengan persepsi. Manusia bekerja secara optimal bila keseluruhan jiwa, otot, naluri, emosi, indera dan pikirannya bekerja terintegrasi secara kesatuan.

One cannot “hire a hand”, the whole man always comes with it.
— Elton Mayo

Bila pekerja yang lebih banyak menggunakan otaknya dan lebih sering menatap layar komputer seperti software developer melakukan operasi yang sama secara repetitif maka mereka akan cepat merasa letih, bukan hanya letih secara psikologis (atau bosan) namun juga letih secara fisiologis karena asam laktat akan menumpuk di dalam otot mereka dan ketajaman visual mereka akan menurun. Berbeda dengan mesin, knowledge worker seperti software developer justru bekerja secara optimal dalam tingkat kecepatan dan ritme yang variatif.

Bila kita mengukur software developer berdasarkan seberapa cepat dia menghasilkan fitur software tentunya hal ini sangat tidak manusiawi karena ada software developer yang secara alami memiliki otak yang dapat memproses masalah dengan cepat namun ada juga software developer yang menjadi software developer hanya karena dahulu orang tuanya tidak memiliki biaya untuk menyekolahkan dia ke Fakultas Kedokteran.

Tidak ada yang namanya satu ukuran “kecepatan kerja” atau “ritme kerja” yang benar bila kita memandang knowledge worker seperti software developer dari sudut pandang fisiologi dan memandang mereka sebagai seorang inovator. Setiap software developer memiliki kecepatan kerjanya sendiri dan caranya sendiri untuk memvariasikan ritme kerjanya.

Humans are the learning organism par excellence. The drive to learn is as strong as the sexual drive — it begins earlier and lasts longer.
— Edward Hall

Proses performance review yang dilakukan di banyak korporasi Indonesia beranggapan kalau semua software developer itu memiliki kemampuan yang sama dan kecepatan kerja yang sama. Proses performance review saat ini menganggap kalau semua software developer bukan bagai manusia melainkan bagaikan kuda delman, kalau mereka memiliki performa di bawah standar maka mereka harus dipecut. Dunia korporat beranggapan kalau manusia tidak mau belajar dan tidak termotivasi bila tidak ada tolak ukur yang diberlakukan terhadap mereka. Ini adalah paradigma bodoh tingkat akut dari seorang manajer.

3. Tidak adil

KPI individu yang ada di banyak korporat seringkali dikaitkan dengan bonus akhir tahun yang akan didapatkan oleh individu terkait. Bonus dibagikan berdasarkan berapa besar jumlah kenaikan pendapatan perusahaan pada tahun berjalan. Namun yang tidak adil adalah tingkat kenaikan pendapatan perusahaan ditentukan oleh pimpinan perusahaan yang seringkali tidak transparan. Misalnya: kenapa KPI-nya harus berdasarkan kenaikan tingkat penjualan sebesar 10%? Apakah karena pimpinan perusahaan ingin pendapatan pribadinya naik 10% dibandingkan tahun lalu? KPI dari pimpinan perusahaan ini lalu dilanjutkan sebagai KPI departemen dan KPI individu. Karena seringkali bersifat sepihak dan tidak transparan KPI individu tidaklah adil dan sebuah pemanipulasian pikiran yang dilakukan oleh manajemen tingkat atas, pekerja dipaksa untuk mencapai target angka yang mereka tidak pernah mengerti dari mana asalnya.

Management by numerical goal is an attempt to manage without knowledge of what to do, and it is usually management by fear.
— W. Edwards Deming

Inovasi dalam perusahaan, peningkatan produktifitas dan peningkatan pendapatan seringkali berkaitan dengan software karena perusahaan yang ingin kompetitif di abad 21 ini harus dapat mengoptimalkan penggunaan software. Oleh karena itu software developer pun memiliki nasib yang lebih buruk lagi dibandingkan orang-orang dari departemen lain karena departemen lain akan berlomba-lomba untuk meminta fitur-fitur dalam software untuk diselesaikan dalam jangka waktu tertentu yang harapannya dapat memenuhi target KPI mereka yang biasanya tidak jauh dari “jumlah inisiatif” yang mereka bisa hasilkan dalam setahun. Namun siapa yang menentukan tanggal dan jumlah fiturnya? Bagaimana kita tahu kalau inisiatif tersebut penting dan dapat meningkatkan pendapatan perusahaan? Kenapa KPI dari departemen lain harus dikaitkan dengan jumlah inisiatif yang dihasilkan dalam setahun? Dan kenapa inisiatif-inisiatif ini sering kali harus berhubungan dengan software? Tidakkah mereka mengerti kalau bonus software developer juga bergantung pada keputusan dan inisiatif-inisiatif yang mereka buat yang seringkali bodoh?

Bekerja di sebuah perusahaan sama seperti menjalin hubungan rumah tangga. Dalam setiap hubungan perlu ada sebuah kesepakatan. Sama seperti hubungan rumah tangga dalam hubungan kerja juga perlu ada sebuah kesepakatan karena kalau tidak namanya adalah perbudakan. Karena bekerja adalah sesuatu yang dinamis dan bersifat personal, perlu ada persetujuan mengenai apa yang akan dilakukan dan ukuran yang akan diberlakukan. The work relationship has to be based on mutual respect.

Sifat dari software selain intangible, software juga bukanlah produk komoditas melainkan produk inovasi. Karena sifat pekerjaan software development yang berbeda, proses dan cara pengerjaannya tidak bisa didisain oleh orang yang tidak mengerjakannya namun harus didisain sendiri oleh orang-orang yang mengerjakannya. Oleh karena itu ukuran yang akan diberlakukan dalam industri software development tidak bisa bersifat sepihak. Model kerja dalam software development yang dilakukan di Indonesia beranggapan bos tahu ukuran apa yang patut diberlakukan dan software developer adalah sekumpulan orang bodoh yang membiarkan dirinya diukur lewat ukuran yang mereka tidak pernah mengerti asal muasalnya.

KPI individu dan performance review dijadikan alasan untuk memberi jenjang karir dan bonus kepada software developer. Namun pemikiran ini banyak cacatnya karena software developer tidak harus berkarir dalam struktural jabatan sama seperti dokter dan pilot. Pemikiran ini juga tidak tulus karena kenapa pemberian bonus harus didasari oleh ukuran yang sudah banyak cacatnya dan tidak jelas asal muasalnya terhadap individu yang berkaitan? Paradigma seperti ini seolah-olah beranggapan: “kalau kamu berbuat baik maka kamu akan mendapatkan bonus”.

4. Bersifat parsial

Tujuan dari performance appraisal adalah untuk meningkatkan performa perusahaan dengan cara meningkatkan performa masing-masing departemen yang ada di dalamnya secara terpisah. Namun manajemen dengan pola pikir seperti ini seringkali menyebabkan konflik antar departemen maupun antar individu.

Individually smart people who are working in silos can do collectively stupid things.

Contoh konflik antar pihak yang dimunculkan oleh KPI adalah antar departemen sales dengan departemen software. KPI yang ditetapkan untuk sales adalah jumlah penjualan ataupun pendapatan yang ia bisa hasilkan untuk perusahaan dalam setahun. Tetapi seringkali orang-orang yang ada di dalam sales memberi janji palsu berupa tanggal delivery yang lebih cepat agar ia bisa mendapatkan kontrak dari kostumer tanpa lebih dahulu meminta kesepakatan dari tim software development.

Belum lagi ditambah konflik antara departemen software development dengan departemen quality assurance (QA). KPI untuk pekerja di dalam departemen software development adalah minim bugs namun KPI untuk pekerja di dalam departemen quality assurance (QA) adalah menemukan bugs sebanyak mungkin. Dua KPI yang saling konflik ini sering kali menyebabkan perilaku yang tidak etis.

Software development adalah pekerjaan kolektif yang mengharuskan setiap anggota tim berkolaborasi untuk berpikir bersama ibarat para pemain musik dalam sebuah orkestra yang harus berkolaborasi ke satu tujuan untuk menghasilkan sebuah lantunan musik yang indah. Bila kita lihat dalam sebuah orkestra, sangat mungkin pemain harpa jarang memainkan harpanya dibandingkan pemain biola memainkan biola. Apakah dengan demikian kontribusi pemain harpa tidak patut diperhitungkan dan tidak penting dibandingkan pemain lainnya dalam orkestra.

Managers who are obsessed with KPI believe that what can be measured is more important than what can’t be measured.

Untuk meningkatkan performa perusahaan secara keseluruhan kita tidak dapat mengukur bagian-bagian dari perusahaan secara terpisah. Bila kita ingin mengurangi angka tindakan kriminal di sebuah kota apakah kita menambah jumlah personil di kepolisian atau meningkatkan kesejahteraan rakyat hingga tidak ada lagi yang hidup di bawah standar kehidupan layak? Kita harus melihat sebuah sistem secara keseluruhan dan bukan secara parsial lalu berharap performa perusahaan adalah gabungan dari masing-masing departemen di dalam perusahaan.

5. Mendorong software developer untuk berperilaku tidak etis

Sebelum kita melihat bagaimana software developer berperilaku negatif akibat performance review, mari kita lihat contoh knowledge worker dalam hal ini dokter. Bila kita menggunakan logika yang sama dalam mengukur software developer terhadap dokter, bagaimana kita bisa tahu dokter mana yang memiliki performa yang baik?

  • Apakah jumlah pasien yang mereka disembuhkan dalam sehari? — kalau demikian KPI yang diberlakukan terhadap dokter maka mereka akan fokus untuk melayani pasien dengan penyakit-penyakit ringan. Bagaimana apabila ada pasien yang memiliki penyakit kritis yang membutuhkan perhatian lebih lama?
  • Atau seberapa cepat mereka dapat menangani masing-masing pasien sebagaimana dilakukan di call centre? — kalau demikian KPI yang diberlakukan terhadap dokter maka akan banyak pasien yang tidak terawat secara optimal karena setiap pasien unik dan membutuhkan jenis perawatan yang berbeda-beda.
  • Atau jumlah keuntungan yang dihasilkan oleh rumah sakit dalam sehari lewat dokter yang bersangkutan? — kalau demikian KPI yang diberlakukan terhadap dokter maka hal ini sangat tidak etis dan tidak manusiawi karena hal tersebut akan membuat dokter hanya fokus melayani pasien-pasien dengan penyakit yang akan melibatkan biaya tinggi untuk menyembuhkannya. Selain itu hal ini dapat mendorong dokter untuk memberikan beragam macam obat yang sebenarnya tidak dibutuhkan oleh pasien.

Kalau Rumah Sakit dikelola seperti pabrik ataupun call centre maka akan banyak terjadi malpraktik yang akan dilakukan oleh dokter.

Whenever there is fear, you will get the wrong numbers.
— W. Edwards Deming

Lalu bagaimana perilaku negatif yang akan dihasilkan oleh software developer akibat ukuran yang diberlakukan terhadap mereka? Salah satu kejadian yang paling popular adalah yang skandal yang terjadi pada Volkswagen di akhir tahun 2015 dimana software developer membuat agar software bisa membuat mobil lulus uji emisi pada saat mobil berjalan dalam keadaan normal. Kejadian ini telah merugikan Volkswagen dimana harga saham Volkswagen langsung jatuh setelah berita ini beredar. Lalu apa hubungannya dengan KPI yang ditetapkan oleh manajer? Secara singkat CEO Volkswagen pada waktu itu menetapkan KPI agar mobil-mobil Volkswagen bermesin diesel lulus uji emisi. Namun pada waktu itu kepala tim software development mengatakan kepada CEO kalau ia tidak tahu bagaimana melakukannya dengan hardware yang mereka miliki. CEO Volkswagen pada saat itu dengan otoritas mengatakan kalau tim software development tidak tahu bagaimana mengerjakannya maka ia akan mencari software developer yang bisa melakukannya. Akibat gaya manajemen yang menimbulkan rasa takut ini software developer melakukan hal yang tidak etis.

Banyak lagi kejadian horor dimana software developer melakukan hal yang tidak professional selain yang terjadi di Volkswagen. Dan hal ini bukan hanya terjadi di luar negeri namun juga di Indonesia. Kita bisa lihat dari beberapa aplikasi buatan software developer Indonesia (yang nama-namanya tidak bisa saya sebut disini) yang pada jam-jam tertentu tidak bisa diakses. Hal tersebut karena softwarenya memiliki banyak kode sampah dan tidak memiliki automated tests sehingga performa softwarenya di lingkungan produksi tidak stabil. Anak-anak muda yang baru lulus kuliah pun bermimpi software developer miliarder tanpa mengerti apa yang perlu dilakukan untuk menjadi seorang professional software developer karena mereka tidak melihat adanya role model seorang professional software developer. Akhirnya sering kali kita temukan software developer sering kali mendapatkan sumpah serapah dari para pengguna karena softwarenya tidak dibagun lewat cara yang professional.

Pada akhirnya profesi software development dianggap tidak lebih dari tukang sampah, sebuah profesi murahan yang tidak bergengsi. Dan Universitas pun mendoktrin mahasiswanya untuk tidak lama-lama menjadi software developer dan segera menjadi manajer proyek. Dan manajer proyek banyak berasal dari software developer yang tidak professional dan akhirnya ia kembali mengelola software developer dengan pola pikir perbudakan tanpa peduli untuk mengedukasi software developer untuk menjadi seorang professional software developer. Sebuah lingkaran setan yang telah terjadi berulang-ulang selama satu dekade belakangan di industri software development Indonesia.

KPI individu dan proses performance review dalam konteks software development tidak ada manfaatnya karena:

  • mendorong software developer untuk berperilaku tidak professional;
  • membuka celah kepada software developer untuk memanipulasi angka-angka KPI ini;
  • membuat software developer menjadi individualis dan hanya memikirkan ruang lingkup pekerjaan mereka saja;

Berangkat dari pemahaman ini kita dapat melihat dalam industri software development tanggung-jawab seorang manajer adalah membuat sebuah lingkungan kerja agar pekerja dapat bekerja secara produktif bukan membuat pekerja produktif karena pekerja tidak bisa dibuat produktif bila lingkungan kerja dimana dia berada membatasi produktifitas kerja dia.

Managing software developers should focus on the future rather than on the past because they create the future. Rather than undoing problems, see problems as opportunities to innovate. Managing software developers requires imagination, courage, humility and servant leadership.

Setelah mengerti kenapa KPI individu dan performance review dalam konteks software development tidak berguna, jangan lagi mau dibodohi, jangan biarkan rekan kerjamu dibodohi, jangan mau software developer di Indonesia dibodohi oleh manajer-manajer dan pimpinan perusahaan yang masih memiliki pola pikir dari era Karl Marx. Jangan mau dihakimi lewat ukuran-ukuran yang tidak jelas dan tidak manusiawi karena setiap individu unik dan tidak bisa disama-ratakan lewat ukuran apapun juga.

Seperti biasa, silahkan sebarkan artikel ini di forum, sosial media, milis kantor, dsb tanpa meminta ijin kepada saya. Kita sudah lama merdeka, kalau ingin industri software development di Indonesia menjadi maju maka jangan mau pikiranmu dijajah oleh manajer-manajer dan pimpinan perusahaan yang masih membiarkan dirinya terjebak dalam kubangan berpikir dari era Karl Marx . Salam Manajemen Modern. KPI individu dan performance review adalah sebuah pembodohan yang harus segera dihentikan dan jangan kita lanjutkan ke generasi Indonesia berikutnya.

Masih bekerja di perusahaan yang terobsesi mengukur software developer? Beli buku “Manajemen Modern dengan Scrum” di toko buku terdekat untuk mendapatkan pola pikir yang modern dalam mengelola software development. Buku dapat dipesan lewat websitenya atau di toko buku terdekat.

--

--

Konten tentang Scrum
Modern Management

Bukan hanya konten tentang Scrum, tapi disini kita akan ngobrolin Scrum yang efektif agar kostumer happy dan para pegawai juga happy dan menghasilkan cuan.