OK sebagai petunjuk, itu tugas Anda untuk menyelesaikan proyek. Jadi, Anda harus menjadi orang yang menegakkan standar, ulasan kode, meminta laporan kemajuan dan semua hal itu ketika pengembang lebih suka Anda meninggalkannya sendirian. Hal-hal ini hanyalah persyaratan manajemen dan kecuali untuk tinjauan kode tidak benar-benar meningkatkan keterampilan karyawan.
Namun, Anda ingin membantu mereka tumbuh yang merupakan atribut hebat dalam diri seorang pemimpin.
Ulasan kode tentu saja merupakan langkah pertama, mereka akan membantu Anda melihat siapa yang kurang dari ketenaran bintang dan perlu peningkatan untuk bahkan memiliki kinerja satsifactory. Mereka akan membantu para pengembang melihat cara-cara lain untuk melakukan sesuatu dan untuk memahami bagian-bagian berbeda dari basis kode daripada yang mereka kerjakan secara pribadi. Menurut pendapat saya, tinjauan kode paling baik dilakukan secara langsung di ruang konferensi dengan pengembang dan peninjau (yang harus menjadi pengembang lain jika mungkin tidak selalu memimpin, meninjau kode orang lain juga merupakan keterampilan yang perlu dikembangkan) dan Anda sebagai seorang moderator. Anda harus mencatat apa yang perlu diubah untuk mengidentifikasi tren. Apa yang sebenarnya Anda cari bukanlah kesalahan atau perubahan (kode semua orang dapat ditingkatkan), tetapi kegagalan yang konsisten untuk belajar dari kesalahan. Jangan memberi tahu manajemen tingkat atas bahwa Anda menyimpan catatan ini atau Anda akan terpaksa menggunakannya sebagai ukuran dalam proses peninjauan kinerja yang dengan jujur mengalahkan tujuan tersebut. Jika beberapa pengembang membuat kesalahan yang sama, sesi pelatihan atau entri wiki tentang cara melakukan X mungkin berurutan.
Sekarang untuk tumbuh wakil sampai ke level minimal. Pertama, Anda perlu tahu keahlian apa yang dimiliki para pengembang dan keterampilan apa yang berguna bagi mereka dan apa yang mungkin menarik untuk mereka ketahui. Anda perlu berbicara dengan mereka dan meninjau resume mereka dan memahami apa yang mereka bohongi dan tidak suka melakukannya.
Jangan berikan semua tugas menarik hanya untuk yang paling terampil. Itu tidak membantu yang lain untuk mempercepat masalah dan teknologi baru. Anda tidak dapat beralih dari menjadi pria paling junior yang hanya mendapatkan tugas terkecil dan paling tidak penting untuk pria senior kecuali seseorang mengambil kesempatan dan memberikan pekerjaan yang lebih sulit kepada Anda. Yang mengatakan, yang kurang berpengalaman mungkin perlu ditugaskan terlebih dahulu untuk memasangkan program dengan senior untuk mendapatkan keterampilan yang lebih maju. Memasukkan junior dalam ulasan kode juga akan memaparkan mereka pada teknik yang lebih maju.
Pertama, beri mereka kesempatan untuk memecahkan masalah sendiri. Tetapi kadang-kadang orang terjebak dan tidak tahu harus mulai dari mana (keterampilan yang juga perlu Anda kembangkan terutama pada programmer baru) atau apa yang harus dilakukan untuk menyelesaikan masalah.
Jika Anda memberi mereka beberapa hari untuk meneliti sesuatu dan mereka masih belum memiliki arahan untuk bagaimana mereka akan melakukan sesuatu, maka Anda mungkin perlu melakukan intervensi dengan beberapa saran. Jika Anda teknis sendiri, Anda dapat memberi mereka beberapa ide tentang bagaimana menyelesaikan masalah. Jika tidak, pertemuan dengan beberapa orang tempat Anda bertukar gagasan dapat membantu jika orang tersebut macet. Atau meminta orang yang lebih berpengalaman untuk memberikan beberapa saran. Apa yang tidak ingin Anda lakukan adalah mengambil masalah dari mereka dan menyelesaikannya sendiri. Tetapi Anda harus menyeimbangkan menyelesaikan proyek dengan ego programmer dan kadang-kadang Anda perlu mengirim mereka ke arah tertentu. Jika ia memiliki solusi yang buruk dan itu perlu diperbaiki, hal terburuk yang dapat Anda lakukan adalah memberikannya kepada orang lain kecuali jika Anda berniat memecat programmer.
Saya telah melihat programmer yang buruk dimanja, di mana orang lain harus memperbaiki hampir semua yang mereka lakukan. Pemrogram lain membenci ini dan hanya ingin orang itu keluar dari kehidupan mereka. Coddling seorang programmer yang buruk menyebabkan programmer baik meninggalkan. Anda harus menemukan garis antara keterampilan memanjakan dan mengasah. Jika Anda memberi seseorang beberapa peluang dan dia tidak pernah menjadi lebih baik, maka potong dia.
Bagi para senior yang sudah kompeten dalam keahlian mereka saat ini, segalanya lebih mudah. Biasanya Anda hanya perlu memberi mereka kesempatan untuk melakukan sesuatu yang baru dan mereka melompat masuk dan mempelajarinya. Pastikan saja peluang menarik menyebar dan jangan semua pergi ke Joe the Wonder Programmer yang bisa memperbaiki apa pun. Anda ingin berakhir dengan sepuluh Joes bukan hanya satu.
Cara lain untuk mengembangkan keterampilan adalah memiliki sesi pelatihan 1 jam setiap minggu. Buat setiap devloper bertanggung jawab atas topik tertentu. Ini akan membantu mereka menjadi lebih baik dalam berkomunikasi, akan membuat mereka meneliti sesuatu secara mendalam dan akan memberi semua orang manfaat dari penelitian mereka. Beberapa topik harus diberikan kepada orang-orang yang tidak terbiasa dengan topik tersebut untuk memaksa mereka menumbuhkan pengetahuan di dalamnya dan beberapa harus ditugaskan kepada orang-orang yang Anda kenal adalah pakar lokal tentang topik itu. Topik harus merupakan kombinasi dari hal-hal yang Anda perlukan agar orang-orang pandai di bidang furture atau sekarang dan beberapa liputan teknologi mendatang yang tidak Anda gunakan saat ini tetapi orang-orang tertarik untuk belajar melihat apakah mereka bisa berguna. Tetapi semua orang termasuk yang paling junior harus diberi topik.
Bergantung pada bagaimana waktu pengembang Anda ditagih (ini lebih sulit dalam situasi penagihan pelanggan), biasanya layak bagi pengembang untuk memiliki 4-8 jam seminggu untuk mengerjakan proyek pribadi. Mereka akan senang melakukan ini. Orang-orang terbaik akan ingin bekerja di sana dan mereka akan belajar banyak yang akan berguna untuk masa depan. Sulit bagi penghitung kacang untuk memahami kebutuhan akan hal ini, tetapi kali ini akan dibayar kembali berkali-kali dalam kepuasan karyawan, fitur baru atau perangkat lunak yang tidak diperlukan oleh siapa pun (atau yang akan membantu mengotomatisasi beberapa pekerjaan yang membosankan) dan pengembangan yang lebih cepat karena teknik baru yang dipelajari. Beberapa pengembang akan menggunakan waktu ini secara ketat untuk proyek-proyek pribadi yang tidak terkait dengan apa yang Anda lakukan (dan itu bagus, mereka masih akan mendapatkan keterampilan dan senang atas kesempatan itu), tetapi banyak orang lain akan menggunakannya untuk menyelesaikan masalah yang terus-menerus itu, karena sifat dari bagaimana proyek dikelola, ndbody punya waktu untuk memperbaiki sebelumnya. Jadi, Anda mungkin mendapatkan refactoring yang menguntungkan semua orang; beberapa orang mungkin menulis tes untuk meningkatkan cakupan tes untuk membuatnya lebih mudah untuk refactor; beberapa yang lain mungkin menjelajahi beberapa fitur baru yang mungkin membuat perangkat lunak Anda lebih bermanfaat bagi pelanggannya. Secara umum, jika Anda dapat membujuk penghitung kacang, tidak ada cara untuk kehilangan dengan memberikan mereka kebebasan ini.
Anda harus belajar bagaimana menyeimbangkan dengan membiarkan orang lain mengembangkan keterampilan mereka dan menjaga proyek tetap pada jalurnya. Semakin kurang berpengalaman pengembang, semakin banyak seseorang yang perlu memeriksa kemajuan terutama pada tahap awal ketika mengubah arah lebih mudah. Orang yang tidak berpengalaman mungkin berjuang dan takut untuk berbicara. Orang-orang ini cenderung pergi tepat sebelum peluncuran dan Anda merasa bagian dari proyek mereka tidak mendekati selesai. Berhati-hatilah untuk memeriksa kemajuan pada siapa pun yang Anda miliki yang sering berganti pekerjaan (kecuali mereka adalah kontraktor karena itu adalah sifat kontrak).
Yang lebih berpengalaman umumnya dapat dipercaya untuk memberi tahu Anda ketika mereka kesulitan menemukan solusi dan membutuhkan bantuan dari seseorang yang memiliki lebih banyak pengetahuan di bidangnya atau mereka akan mencari orang itu dan mendapatkan transfer pengetahuan. Jadi mereka tidak perlu dipantau secara dekat dalam fase awal mempelajari keterampilan baru untuk suatu proyek. Mereka akan menemukan cara untuk menyelesaikan proyek. Mereka yang memiliki rekam jejak pengiriman biasanya dapat dibiarkan sendirian kecuali untuk laporan kemajuan minimal (Anda biasanya harus melaporkan kepada manajemen Anda juga dan dengan demikian memerlukan beberapa informasi).