Scrum Development Team — The Expert

Melengkapi pembahasan saya tentang role-role yang ada pada Scrum sebelumnya — Scrum Master dan Product Owner, sekarang saya ingin membahas tentang Development Team dalam Scrum.

Programmer ya?

Terlalu sempit jika kita hanya menilai bahwa Development Team isinya hanya programmer. Dalam Scrum juga tidak ada istilah Analis, QA, Arsitek, Designer, atau bahkan Programmer. Bukannya tidak ada, hanya saja mereka semua disebut sebagai Developer. Semua sama. Memiliki tujuan yang sama — menghasilkan produk yang berkualitas.

The Development Team consists of professionals who do the work of delivering a potentially releasable Increment of “Done” product at the end of each Sprint.
Development Team

Tidak ada pengkotak-kotakan. Yang banyak kejadian ketika terjadi pengkotak-kotakan adalah saling menyalahkan. Gak bener nih ngetestnya, analisanya salah, atau codingnya banyak salah. Ya kan?

Increase team recognition over self-recognition

Scrum tidak pernah mendefinisikan role secara spesifik kecuali Development Team dan siapapun yang terlibat dalam pembuatan dan pengembangan perangkat lunak / software ada di dalam Development Team — analisa, desain, coding, dokumentasi maupun testing.

Self-Organization dan Cross Functional

Nobody but nobody, tell them what to do. They decide on how they build it.

Dalam pengerjaannya, Development Team melakukannya tanpa harus disuruh dan juga tidak ada tekanan atau kontrol dari siapapun.

Kenapa?

Untuk memudahkan pemahaman, mari kita sebut Development Team sebagai Team of Experts. Sekumpulan orang-orang pinter. Para ahli dibidangnya. Mereka adalah para pekerja intelektual, bukan kuli yang harus kerja sesuai dengan instruksi. Development Team berkomitmen untuk selalu mengedepankan kualitas.

Setiap developer dalam Development Team saling bahu-membahu dalam mewujudkan visi dari Product Owner yang tertuang kedalam Product Backlog. Tujuannya hanya itu. The one and only.

Setiap Developer tidak terpaku terhadap skill set yang dimilikinya saja. Jadi, diharapkan developer yang tergabung dalam Development Team adalah T-Shaped Person atau mungkin lebih.

Maksudnya ada gitu orang yang bentuknya kayak huruf “T” ?

Bukan. Yang dimaksud dengan T-shaped Person adalah orang-orang yang memiliki karakteristik sesuai dengan pemahaman yang dia miliki terhadap bidang tertentu — dalam hal ini terkait software development.

Sebagai contoh, I-Shape person adalah seseorang yang memiliki pemahaman yang dalam terhadap (hanya) satu buah skill set. Dia tidak memiliki pengetahuan / pemahaman lain selain selain yang ia miliki.

Contoh I-shaped Person

Sedangkan T-Shape person adalah seseorang yang memiliki pemahaman yang dalam terhadap sebuah skill set dan juga memiliki kemampuan terhadap skill set yang lain walaupun tidak secara mendalam.

Contoh T-shaped Person

Tujuannya adalah agar pada pelaksanaannya tidak ada saling tunggu menunggu. Mindset seperti programmer baru kerja klo udh ada requirement, tester baru kerja klo udh deployment itu dirasa kurang efektif. Development Team akan berusaha bekerja seefisien mungkin. Berkolaborasi, karena menunggu itu melelahkan ;)

Maaf, masih belom nangkep. Tujuan sebenernya buat apa ya?

Ok, mari kita analogikan Development Team seperti tim sepak bola. Para pemain yang tergabung kedalam tim tersebut memiliki skill set yang berbeda — tergantung posisinya. Kiper memiliki tanggung jawab menjaga gawang (boleh pake tangan), Pemain Belakang memiliki tanggung jawab untuk menjaga pertahanan, Pemain Tengah memiliki tanggung jawab untuk menjaga irama permainan, dan yang terakhir Penyerang yang memiliki tanggung jawab untuk mencetak angka.

Saat pertandingan berlangsung ketika tim sedang menyerang, tidak hanya penyerang saja yang ikut menyerang. Pemain tengah — dan terkadang pemain belakang pun ikut menyerang walaupun bukan tanggung jawab mereka dan mereka tidak memiliki kemampuan (skill set) yang mendalam. Begitu pula sebaliknya — ketika sedang bertahan. Atau bahkan bertukar posisi ketika ada pemain yang di kartu merah.

Mereka berkolaborasi. Self Organize dan Cross Functional

Semua pemain memiliki mindset yang sama. Berusaha untuk menang. Tim tidak akan menyalahkan pemain belakang atau kiper ketika kebobolan dan seluruh pemain ikut berselebrasi ketika seorang penyerang menyarangkan bola ke gawang lawan.

Ketika pertandingan (Sprint) telah selesai, tim akan introspeksi dan belajar dari pertandingan tersebut. Hal-hal apa saja yang baik dan mana saja yang kurang baik (Retrospektif). Sehingga mereka bisa lebih baik dan menang di pertandingan selanjutnya.

Susah kali punya tim kayak gitu..kesannya gak realistis.

Tidak mudah memang, tapi bukan berarti tidak mungkin. Tidak bisa instan tetapi bertahap. Butuh proses.

ScrumAnd — Development Team

Dengan memegang teguh nilai-nilai Scrum, diharapkan tim bisa lebih mandiri. Peka terhadap masalah yang muncul. Dapat menyelesaikan masalah yang muncul dengan cepat — tanpa bergantung kepada orang lain. Berkembang dengan cara iteratif. Membentuk tim menjadi lebih baik. menjadi pribadi yang lebih baik.

Pertanyaan yang harus kita tanyakan kepada diri kita adalah sudahkah kita memiliki integrigas terhadap pekerjaan kita ? ataukah kita hanya bekerja hanya sesuai perintah ?

Apakah kita adalah Intelectual Worker atau hanya sekedar kuli ?

Kita hanya bisa menemukan jawabannya ketika kita bisa jujur terhadap diri sendiri.