Kepemimpinan tim merupakan peran yang dapat menjadi jebakan bagi seorang pengembang, dan dapat memberikan peluang yang luar biasa untuk pengembangan perangkat lunak

Mari kita kembali ke dua tahun lalu ketika saya adalah seorang pengembang. Apa yang saya pikirkan? “Saya ingin menjadi pemimpin tim. Itu keren, dia menyelesaikan semua masalah, mendapat lebih banyak uang, mereka mengejar senior . " Maka tidak ada orang yang akan memberi tahu saya: ini umumnya tentang sesuatu yang lain. Saya harus belajar dari kesalahan saya.







Saya menjadi pemimpin tim dua kali



Saya memiliki ciri ini: mencoba menetapkan urutan sempurna dalam segala hal, mensistematisasi, membangun proses. Jadi saya selalu tertarik untuk melakukan lebih dari sekadar pengkodean. Startup pertama saya, sebut saja "T", mengalami kekacauan total dalam proses pengembangan.



Sekarang saya hampir tidak akan mulai bekerja di sana, tetapi kemudian sangat atmosfer. Hanya membayangkan. Banyak pelanggan paralel. Manajer pergi langsung (dan menunjuk) ke pengembang. Kami sering melewatkan tenggat waktu yang diumumkan dan duduk terlambat. Saya ingat bagaimana suatu hari bos menelepon pada pukul 20 dan memintanya untuk datang bekerja untuk menyesuaikan fitur bagi pelanggan, karena "dia mengumumkan tenggat waktu besok pagi." Tapi di T, kami adalah keluarga.







Dan mereka melakukan semuanya sendiri - sebaik mungkin. Saya ingat menginstal Ubuntu di server rak yang diberikan oleh salah satu investor kepada kami. Saat saya menyalakannya, terdengar suara helikopter lepas landas!



Di sana saya tumbuh dengan status seorang techdirector dan bekerja dengan tim yang terdiri dari 10 orang. Faktanya, yang pertama, secara spontan, pengalaman kepemimpinan tim terjadi di sana.



Di "D", di mana saya datang sebagai pengembang, segalanya berbeda - terutama dalam hal proses.



Perusahaan telah menerapkan Scrum klasik: sprint yang jelas, grafik burndown, demo, perencanaan, poin cerita, perawatan untuk mempersiapkan sprint masa depan. Saya kagum dengan kualitas prosesnya, menulis kode dengan tenang dan mengamati bagaimana semuanya bekerja. Kemudian dia berteman dengan Scrum Master dan mulai melontarkan pertanyaan padanya. Dia dengan bersemangat menjawab dan membagikan buku-buku keren.





Saya terutama mengingat "Scrum dan XP: Catatan dari Garis Depan" oleh Henrik Kniberg. Proses dalam "D" dibangun dekat dengan metodologi ini: sebagai hasilnya, semua manajemen dan staf penjualan tahu betul kapan hasilnya akan terjadi.



Saya juga bergabung dengan Skyeng sebagai pengembang. Tidak seperti perusahaan saya yang lain, integrasi berkelanjutan diterapkan dengan sangat baik di sini: fitur setiap hari dirilis untuk produksi. Di tim saya, prosesnya paling mirip dengan Kanban.



Kami memiliki pemimpin tim yang luar biasa, Petya. Pada panggilan satu-satu, kami dapat mendiskusikan segalanya: dari masalah tidak memenuhi tenggat waktu hingga pengaturan pelacak tugas. Terkadang saya hanya memberi umpan balik, terkadang saya menyarankan sesuatu.



Jadi Petya memahami saya dan belajar tentang pengalaman mengelola tim di T dan pembelajaran jarak jauh Scrum di D.



Pada titik tertentu, dia menyarankan agar saya mengadakan stand-up.





Operasi "penerus" dalam kasus saya terlihat seperti ini dan memakan waktu 6 menit)



Dan seminggu kemudian ternyata arah baru sedang dibuka di perusahaan, dan Petya dengan sebagian tim pergi ke proyek itu. Orang-orang yang tersisa membutuhkan petunjuk baru.



Semuanya terjadi dengan sendirinya, seolah-olah Hukum Ketertarikan yang tak terlihat mendorong Anda ke arah kepemimpinan tim.



Ketika sebuah perusahaan membutuhkan seorang pemimpin tim dan semua orang berpikir "Di mana saya bisa mendapatkannya?", Mereka sering mengambil dari orang-orang yang:



  • lebih terorganisir
  • dengan cepat terlibat dalam proses dan ide tim,
  • termotivasi dan mendapatkan kredibilitas di mata sesama pengembang.


Orang-orang seperti itu dengan cepat dicatat dalam manajemen, pada kenyataannya, oleh karena itu, ketika ada lowongan muncul, mereka pergi ke mereka. Jadi itu berhasil untuk saya dan setidaknya untuk beberapa kolega dari perusahaan lain yang berbicara dengan saya tentang topik ini. Dan lucu bahwa setiap orang mencatat bahwa transisi tidak harus berusaha keras.



Di sini perlu dijelaskan siapa pemimpin tim dalam kasus kita.
, (, - , ). : , . , .



Skyeng :







Namun, menjalankan tugas seorang pemimpin tim adalah satu hal, dan mengatasinya adalah hal lain.



Apa yang berubah dan bagaimana saya menghadapinya



Beberapa hari pertama Anda hidup dengan perasaan euforia, kemenangan dan kegembiraan. Tetap saja: Anda memimpin seluruh tim, taruhan telah diletakkan pada Anda, Anda memiliki lebih banyak peluang dan tanggung jawab! Beberapa tahun telah berlalu sejak meninggalkan T, saya memperoleh pengalaman, menganalisis kesalahan saya, melihat proses dan metodologi yang canggih dan mengatasinya. Semua ini memberi saya kekuatan dan kepercayaan diri untuk entri kedua dalam kepemimpinan tim.



Namun seiring berjalannya waktu, perasaan euforia pun berlalu, dan kehidupan sehari-hari pun dimulai. Inilah yang saya perhatikan.



Anda harus siap secara mental untuk berpisah dengan "Zen setiap malam" ... dan berteman dengan "triwulanan". Hasil kerja pemimpin tim biasanya tidak terlihat dalam satu hari atau bahkan seminggu. Ini adalah plus dan minus.





Dalam laporannya, "Kerusakan dan kerusakan selama transisi dari insinyur menjadi pemimpin tim", Artem Kalichkin secara langsung mengatakan bahwa "programmer adalah salah satu orang yang paling bahagia di dunia."



Saat Anda adalah seorang pengembang, setiap hari Anda memiliki build yang dikompilasi, tugas yang diselesaikan, fitur baru dalam produksi - dan ada kesenangan tertentu di dalamnya. Semacam Zen: Saya telah melakukan pekerjaan itu, Anda dapat pergi beristirahat di malam hari dengan ketenangan pikiran.



Pimpinan tim jarang memiliki apa pun untuk dibagikan saat berdiri: karena kemarin Anda "melakukan perencanaan, melakukan panggilan telepon, membaca email dan menambahkan tugas ke backlog". Hasil seperti bagian baru di situs atau fitur besar dalam aplikasi terdiri dari langkah-langkah kecil yang Anda dan tim Anda lakukan setiap hari. Selama waktu ini, Anda tidak boleh menulis satu baris kode pun, tetapi secara umum Anda akan menyeret volume pekerjaan yang tidak akan pernah Anda kuasai selama ini.



Misalnya, tim saya membuat bagian Topik Studi untuk aplikasi Skyeng di iOS dan Android: kami menerapkan peta level latihan, skala energi untuk berbagai kategori siswa, tujuan harian, pelacak kemajuan tugas, mekanisme berbeda untuk kartu tugas, akting suara, dan lainnya.







Bagian yang sama di lampiran.
Anda dapat memperkirakan jumlah layar dan mekanisme satu pelajaran pada GIF: gerakan dipercepat




Ini sebagian besar adalah cerita tentang pendelegasian. Anda perlu melawan kebiasaan melakukan semuanya sendiri. Pada dasarnya, untuk menjadi pemimpin tim yang nyata, Anda harus belajar cara memprogram dengan tangan pengembang tim Anda.



Pemimpin tim yang tidak berpengalaman dapat dengan mudah menjadi "penghambat" tim . Semakin sedikit pengembang yang terganggu dari pekerjaannya, semakin ideal hasil dan timnya. Oleh karena itu, ia memiliki banyak tugas dengan prioritas, stand-up stand, dan beberapa pertemuan lainnya dalam seminggu. Dan jika Anda perlu merencanakan fitur baru untuk bekerja, ditemukan bug kritis, kerusakan, atau tim memiliki pertanyaan, mereka menarik pemimpin tim. Agar semuanya dan semua orang bekerja, Anda harus banyak berkomunikasi.



« -» — , - .



Di sini saya ingin mengucapkan halo untuk mengucapkan terima kasih yang tulus untuk produk saya. Melihat masalah ini, dia mengirim saya untuk membaca "Jedi Techniques" oleh Dorofeev, "Time Management" oleh Arkhangelsky, serta mempelajari saluran dan obrolan untuk pimpinan tim, rekaman dari konferensi, dan sebagainya.



Praktik yang saya pelajari membantu menghilangkan pengaburan. Saya memperingatkan semua orang bahwa saya akan memeriksa pesan masuk 1-2 kali sehari, mulai mengatur hari tanpa rapat dan panggilan telepon, merencanakan hari kerja saya secara tertulis (saya bahkan mencoba memperkenalkan praktik ini di tim, tetapi pengembang tidak menyukai ini). Saya mengubah prioritas hanya jika sesuatu yang sangat kritis terjadi. Alhasil, hal-hal yang saya rencanakan tidak lagi tertunda.



Secara umum, saya harus menghentikan kebiasaan saya dan segera menguasai banyak teknik yang berguna.



Keterampilan yang dibutuhkan pemimpin tidak dikembangkan selama pengembangan. Sebagai pemimpin tim, Anda menjadi peserta aktif dalam hubungan perdagangan antara bisnis dan pengembangan. Tujuan dari perusahaan mana pun adalah keuntungan, sehingga pelanggan ingin mendapatkan banyak fitur berkualitas tinggi dari pengembangan dalam waktu singkat. Pengembang berusaha keras untuk melakukan kualitas, tetapi tidak terburu-buru. Dalam gambar ini, pemimpin tim harus menjaga keseimbangan yang tepat antara kualitas, kecepatan, dan volume tugas yang harus diselesaikan.



Untuk melakukan ini, Anda harus membangun hubungan saling percaya dengan pelanggan sehingga dia memahami apa yang dilakukan tim, berapa lama waktu yang dibutuhkan untuk menghentikan fitur ini atau itu, apakah kita punya waktu atau tidak, apa yang harus dilakukan agar punya waktu. Anda perlu mengembangkan "soft skill" itu dan pada saat yang sama mempertahankan posisi dan prinsip tim dengan teguh. Dan juga pikirkan tentang proses, format, arsitektur pipeline: bagaimana tugas datang kepada Anda, bagaimana dieksekusi, bagaimana diperbaiki, bagaimana mereka menuju produksi.



Tentu saja, keterampilan itu sendiri bisa dikembangkan. Tetapi Anda perlu bersiap bahwa ini akan mengarah pada transformasi kepribadian tertentu.



Tidak ada lagi pemimpin tim: bagaimana tidak kehilangan diri Anda dan menemukan diri Anda lagi



Dua tahun lalu, saya percaya bahwa pimpinan tim adalah langkah selanjutnya dalam evolusi seorang programmer. Sekarang saya pikir ini adalah cabang perkembangan paralel lainnya. Hasil transisi sangat tergantung pada masing-masing orang - dan Anda tidak akan tahu sampai Anda mencobanya.



Peran ini perlu diuji. Dan bukan sebulan, bukan dua. Setidaknya enam, saya pikir. Bahkan lebih baik - satu atau dua tahun. Ada kemungkinan besar bahwa itu akan sulit, Anda ingin kembali tanpa mencapai hasil. Saya akan menyarankan Anda untuk menetapkan tenggat waktu bagi diri Anda sendiri dan berkata: “Saya tidak menarik kesimpulan menengah sampai akhir tenggat waktu ini. Saya akan mengujinya, dan pada akhirnya saya akan membuat keputusan, apakah itu milik saya atau bukan. " Secara pribadi, saya melakukan itu.



Setelah bekerja sebagai pemimpin selama satu setengah tahun (dari September 2018 hingga Februari 2020), saya secara sadar memutuskan untuk meninggalkan peran ini dan kembali ke pengembangan. Pada saat yang sama, pemimpin tim, saluranyang saya baca tumbuh sebagai CTO di perusahaan saya.







Kami selalu jauh, komunikasi utama ada di Slack: jadi "semua gerakan dicatat." Semuanya ternyata seperti pada gambar: kolega yang saya usulkan mencoba dirinya sendiri sebagai pemimpin tim, dan saya menikmati "malam zen" dalam kerangka tim lain.



Dan musim panas ini, beberapa pria lain yang telah menempuh jalan yang sama dan saya mengadakan pertemuan internal tentang pengalaman kami. Dan pertanyaan terpenting yang muncul di antara para pendengar: oke, bagaimana memahami, ketika Anda berpikir tentang ke mana harus berkembang lebih jauh, peran ketua tim ada di tangan Anda atau tidak?



Maka muncullah ide untuk membahasnya dalam format publik dengan:



  • Egor Tolstoy (Podlodka podcast dan kursus) - dia membuat pilihan yang mendukung manajemen produk dan akan berbicara tentang momen ketika dia menyadari bahwa dia lelah dengan kepemimpinan pengembangan,
  • Vadim Martynov (Kontur dan komunitas RndTech) - dia kembali ke pengembang dan akan menceritakan bagaimana dia berlatih ulang untuk menulis kode dan bagaimana semua ini mempengaruhi keuangan,
  • dan Eugene Kot (Wrike dan kuliah yang sama tentang kesulitan memimpin tim) sebagai moderator.


Semuanya akan berlangsung online Rabu depan (2 September) pukul 7 malam Moskow / Kiev / Minsk di YouTube: pemirsa akan memiliki obrolan dan kesempatan sederhana untuk menghidupkan dengan suara. Dan jika Anda masih memiliki kekuatan, mari kita bicara tentang zoom.





Di sini Anda dapat menambahkan pengingat ke kalender Anda .



Bergabunglah dengan diskusi "MoreNeTimlead" atau tonton di rekaman. Semoga pengalaman kami bermanfaat bagi Anda, karena dua tahun lalu saya juga berpikir bahwa ...



All Articles