Bagaimana mengelola pengembang yang memiliki keterampilan komunikasi yang buruk

52

Saya mengelola tim kecil pengembang pada aplikasi yang berada di titik tengah siklus hidupnya, dalam sebuah perusahaan besar. Sayangnya ini berarti umumnya ada pemisahan tugas Pemrograman 30/70 menjadi "pekerjaan teknis lainnya". Pekerjaan ini meliputi:

  • Bekerja dengan tim DBA / Unix / Jaringan / Loadbalancer pada berbagai tugas
  • Menempatkan dan mengelola pesanan untuk perangkat keras atau infrastruktur di berbagai wilayah
  • Menjalankan tes yang belum dimigrasi ke CI
  • Analisis
  • Dukungan / Investigasi

Cukup adil untuk mengatakan bahwa semua Pengembang lebih suka menjadi pengkodean, daripada melakukan tugas yang lebih biasa ini, jadi saya mencoba membagikan pekerjaan pemrograman yang menyenangkan secara merata di antara tim.

Sebagian besar tim dipekerjakan karena, meskipun mereka mungkin tidak memiliki keterampilan pemrograman elit untuk menulis kompiler / mesin permainan / sistem perdagangan frekuensi tinggi dll., Mereka adalah komunikator yang baik yang "dapat menyelesaikan pekerjaan", bekerja dengan tim lain , dan sedikit menavigasi birokrasi yang kompleks di sini. Mereka adalah pengembang yang baik, tetapi mereka juga staf teknis serba baik.

Namun, salah satu anggota tim mungkin memiliki keterampilan pengkodean di atas rata-rata, tetapi keterampilan komunikasi di bawah rata-rata. Secara tradisional, Manajer Pengembangan sebelumnya cenderung memberinya tugas Pemrograman dan bukan tugas yang lebih biasa yang tercantum di atas. Namun, saya tidak merasa bahwa ini adil untuk anggota tim lainnya, yang telah menunjukkan bakat untuk mengembangkan keterampilan yang menyeluruh yang biasanya diperlukan dalam departemen TI bisnis besar.

Apa yang harus saya lakukan dalam situasi ini? Jika saya terus memberinya lebih banyak pekerjaan pemrograman, saya tahu bahwa itu akan dilakukan lebih cepat (dan sebaliknya, saya berharap dia menyelesaikan pekerjaan lain lebih lambat). Tapi itu bertentangan dengan prinsip saya, dan mempromosikan ide bahwa Anda dapat mengukir "ceruk nyaman" untuk diri sendiri hanya dengan menjadi buruk pada tugas yang tidak Anda sukai.

Saya ingin mengklarifikasi bahwa saya tidak mencoba untuk mengatasi masalah ini karena dendam, atau bahwa saya memiliki "chip di bahu saya" seperti yang disebutkan. Saya mencari saran tentang cara mempertahankan tim yang berpengetahuan luas, yang senang dan termotivasi. Dengan mengamati beragam jawaban untuk pertanyaan ini, sepertinya ada banyak pendapat berbeda tentang bagaimana mencapainya.

djcredo
sumber
15
Apakah Anda tahu semua orang di staf Anda lebih suka pemrograman daripada tugas-tugas lain? Saya tahu di perusahaan tempat saya bekerja dulu, kami memiliki beberapa yang lebih suka men-debug aplikasi yang ada sementara yang lain lebih suka menulis kode baru. Kemudian beberapa lebih suka bekerja di aplikasi web kami sementara yang lain lebih suka bekerja di sistem lawas kami.
programmer
12
Bagaimana ia menunjukkan keterampilan komunikasi yang buruk? Dengan tidak pas ke cetakan Anda?
James
5
@EvanPlaice Sekali lagi, ada apa dengan serangan "masalah pribadi"? Saya telah mengatakan dalam pertanyaan "Ini adil untuk mengatakan bahwa semua Pengembang lebih suka menjadi pengkodean". Mungkin kalimat ini tidak cukup jelas dan menimbulkan keraguan jadi izinkan saya mengklarifikasi - Saya sudah berbicara dengan para devs secara individual, dan mereka mengatakan kepada saya bahwa mereka menikmati mengerjakan tugas pemrograman lebih dari tugas lainnya. Jika ini tidak terjadi, saya jujur ​​tidak perlu menanyakan pertanyaan ini.
djcredo
2
@djcredo Saya tidak bermaksud sebagai serangan. Saya katakan, saya pikir Anda mengajukan pertanyaan yang salah. Berusaha untuk membuat hal-hal lebih setara sesuai dengan standar pribadi Anda dari tim 'ideal' adalah melapiskan kehendak Anda pada tim. Orang-orang, terutama programmer yang berbakat (baca kemauan keras) tidak suka dipermainkan. Jika, seperti yang Anda katakan, Anda bekerja dengan orang-orang yang terampil / berbakat maka pendekatan top-down mungkin menjadi bumerang. Alih-alih memutuskan untuk tim mengapa tidak meminta mereka secara langsung apa yang perlu diubah untuk memungkinkan komunikasi yang lebih baik di antara tim.
Evan Plaice
6
Mengapa "mengukir ceruk untuk diri sendiri" adalah hal yang buruk? Apakah Anda menginginkan ahli bedah saraf terbaik yang bisa Anda dapatkan untuk mengambil tumor otak Anda dan ahli jantung terbaik yang dapat Anda temukan untuk memperbaiki aorta Anda yang membesar, atau apakah Anda menginginkan pria yang sama yang baik-baik saja di kedua bidang tetapi tidak baik dalam melakukan kedua hal tersebut untuk kamu?
GordonM

Jawaban:

77

Sepertinya Anda terlalu banyak berusaha untuk memiliki individu yang berpengetahuan luas dan tidak cukup upaya untuk memiliki tim yang berpengetahuan luas .

Tidak ada yang salah dengan menjadi pandai dalam sesuatu - pada kenyataannya, mungkin itulah sebabnya ia dipekerjakan! Anda harus bersyukur memiliki seseorang yang pandai pemrograman sejak awal.

Anda menyatakan:

... itu bertentangan dengan prinsip saya, dan mempromosikan gagasan bahwa Anda dapat mengukir "ceruk nyaman" untuk diri sendiri hanya dengan menjadi buruk pada tugas yang tidak Anda sukai.

Jika dia adalah seorang programmer yang biasa-biasa saja, maka saya akan setuju. Tapi kamu tidak mengatakan itu. Anda bilang dia programmer yang bagus. Dia tidak buruk dalam tugas-tugas lain untuk keluar dari mereka - dia hanya memfokuskan upayanya untuk menjadi programmer yang lebih baik. Tidak ada yang salah dengan itu.

Sebagai seorang manajer, bukan tugas Anda untuk memastikan bahwa semua orang "berpengetahuan luas". Adalah tugasmu untuk memastikan bahwa pembunuhan itu selesai. Dan kamu tidak melakukan itu. Bahkan, Anda membuat keputusan yang menghentikan pekerjaan.

Apa pun masalah yang Anda miliki, Anda harus mengatasinya - Anda membuat tim Anda kurang produktif.

Stargazer712
sumber
22
Jadi, jika programmer ranger sendirian ditabrak bus, lebih baik Anda pastikan keterampilan komunikasinya cukup baik untuk mendokumentasikan apa yang ia lakukan dan di mana dalam proyeknya ia berada.
programmer
8
@JasonHolland, ada perbedaan antara "Bagus" dan "Cukup Baik." Selama dia cukup baik, tidak ada alasan untuk mendorong masalah ini. Op serius mempertimbangkan merusak produktivitas timnya karena dia tidak berpikir itu "adil." (Ingatkan saya lagi, siapa bilang dunia ini adil?)
riwalk
14
@JasonHolland, op juga mengatakan, "Jika saya terus memberinya lebih banyak pekerjaan pemrograman, saya tahu itu akan dilakukan lebih cepat ..." Itu memberitahu saya bahwa orang itu perlu pemrograman. Op memiliki chip di bahunya, dan itulah masalah sebenarnya di sini.
riwalk
10
Tidak ada chip di pundak saya - Saya hanya meminta beberapa saran manajemen di bidang yang saat ini saya lemah. Saya kira saya berusaha mengusahakan keadilan untuk mempromosikan moral tim dalam jangka panjang, bahkan jika ini berarti mengorbankan beberapa dari potensi pengiriman jangka pendek. Anda membuat poin yang sangat baik bahwa berinvestasi untuk menjadi programmer yang sangat baik, ia harus dihargai atas usahanya, jadi saya menerima jawaban ini.
djcredo
10
@ Stargazer712, "op memiliki chip di bahunya, dan itulah masalah sebenarnya di sini." Itu mungkin benar, tetapi lihatlah dari sudut pandang programmer "rata-rata" yang sedang dikerahkan ke tugas-tugas non-pemrograman karena satu orang yang memiliki keterampilan pemrograman "di atas rata-rata". Saya berpendapat bahwa manajer ini tidak melakukan pekerjaan pengembangan profesionalnya untuk yang lain. Mungkin "di atas rata-rata" lebih terampil karena dia melakukan lebih banyak pemrograman? Mungkin programmer "rata-rata" lainnya akan menjadi "di atas rata-rata" jika diberi lebih banyak pekerjaan pemrograman, proyek masa depan akan dilakukan lebih cepat.
programmer
39

Anda mendapatkan sedikit panas di sini di jawaban lain untuk keputusan Anda untuk "melakukan sesuatu" tentang orang ini, tapi saya sepenuhnya mengerti apa yang Anda katakan. Jika anggota tim yang lain "lebih suka menjadi pengkodean, daripada melakukan tugas-tugas yang lebih biasa ini" maka mereka akan kesal karena Anda menghargai kinerja buruk komunikator yang buruk dengan memberinya hanya tugas-tugas yang diinginkan semua orang.

Bayangkan Anda adalah salah satu dari "komunikator yang baik" di tim yang keterampilannya sebanding dengan dev yang bersangkutan. Anda menangani panggilan, bekerja dengan staf non-IT lainnya yang nyaris tidak mengenal mouse dari keyboard, menulis rencana untuk pengguna sign-off, dan banyak lagi, semua karena atasan Anda mengatakan untuk melakukannya. Sementara itu, dev yang pemarah, karena ia memiliki "keterampilan komunikasi yang buruk", bisa duduk santai di dalam kubusnya sepanjang hari dengan mengabaikan para pengguna yang hanya mengerjakan hal-hal yang "menyenangkan".

Sekarang Anda mengatakan bahwa dev pemarah memiliki keterampilan "di atas rata-rata", tetapi Anda tidak mengatakan dia adalah yang terbaik. Ini berarti bahwa mungkin 1/3 dari tim Anda, para komunikator yang baik dev yang tingkat keahlian dev kasar atau di atas, semua merasa kesal.

Apakah perlu kehilangan beberapa produktivitas dari STAF PERFORMING TERBAIK Anda karena mereka terganggu dengan dev-pemarah? Anda harus memutuskan.

Kecuali Anda ingin memecat orang itu, saya sarankan Anda mengambil salah satu dari pendekatan ini:

1) Bimbing dia untuk menjadi komunikator yang lebih baik. Hanya Anda yang tahu apakah ini layak. Anda mungkin menemukan hanya memegang tangannya sedikit lebih mungkin membantu. Beberapa orang hanya takut dengan interaksi bisnis formal dan mengungkapkannya dengan kesal ketika diminta untuk melakukannya.

2) Beri insentif pada "komunikasi yang baik", baik dengan uang atau manfaat lainnya. Jelaskan bahwa Anda benar-benar menghargai komunikator yang baik dan kemudian devs Anda tidak akan begitu jengkel, tetapi hadiahnya harus nyata & bermakna. "Makan siang dengan manajer distrik" tidak akan memotongnya. Tidak akan ada penghargaan "pemain bintang / pujian / attaboy" yang hanya selembar kertas. Itu pasti berupa uang tambahan, cuti ekstra, waktu fleksibel, pengakuan serius dengan atasan yang mengontrol kenaikan gaji, dll.

Graham
sumber
11
Dia sebenarnya menyebutkan bahwa komunikator yang buruk adalah pemain yang lebih baik. Mengapa Anda menganjurkan Menghargai kinerja orang ini dengan pekerjaan yang kurang cocok? Saya seorang penganjur besar konsep bahwa setiap orang memiliki kekuatan mereka dan harus bermain untuk mereka. Jika saya lunak di satu bidang, saya berharap manajer akan memiliki kemampuan untuk melengkapi tim dengan seseorang yang kuat di bidang itu, dan kemudian BUKAN kita beralih pekerjaan!
Bill K
3
@ BillK, "Namun, satu anggota tim mungkin memiliki keterampilan pengkodean di atas rata-rata". Dia tidak mengatakan dia adalah yang terbaik. Saya mengambil tikaman dan mengatakan bahwa dia lebih baik dari 2 / 3rds dari devs lainnya. Itu menyisakan 1/3 dari para devs yang sama-sama baik atau lebih baik daripada lelaki ini, yang harus melakukan pekerjaan ekstra yang tidak semenyenangkan apa yang dia lakukan sepanjang waktu ("semua lebih suka menjadi pengkodean"). Bagaimana Anda akan menyukainya jika salah satu rekan kerja Anda berkata, "Saya tidak suka menjalankan Tes Unit sehingga Anda harus menjalankan semua milik saya untuk saya"? Anda cepat kesal. Sikap buruk orang ini adalah memberinya hadiah (dikurangi tugas non-coding).
Graham
9

Pertama-tama, menyalahkan anggota tim Anda ... menunjukkan keterampilan manajerial yang buruk.

Maksudku, jika dia benar-benar memiliki keterampilan komunikasi yang buruk, aku sangat menyesal untuk kehidupan sosialnya, tapi sungguh, di tempat kerja ini tidak sebanyak masalahnya seperti milikmu . Dan mari kita hadapi itu, dia sebenarnya bisa saja bosan dengan pengaturan kerja Anda yang membosankan, atau memiliki masalah pribadi yang mempengaruhi kinerjanya, atau secara diam - diam berencana untuk membunuh kalian semua.

Komunikasi membutuhkan setidaknya dua, dan bagaimanapun, yang memiliki keterampilan orang miskin bisa jadi Anda. Tidak pernah melupakan anggota tim yang rukun, mereka semua bisa memberikan kompensasi (bahkan tanpa sadar) untuk beberapa kekurangan komunikasi yang Anda miliki dan sangat diabaikan.

Lagi pula, jangan berkeliling bertanya di internet tentang orang-orang yang duduk tiga meja dari Anda, pergi ke chap dan bertanya kepadanya apakah benar-benar ada sesuatu yang salah dan apakah itu bisa diselesaikan. (atau sesuatu yang membosankan yang dapat dioptimalkan atau ditingkatkan)

Mungkin dia hanya membenci posisi mejanya (apakah dia menghadapi toilet?) Dan ini membuatnya sedih.

Petunjuk: dengarkan jawabannya, seperti dia manusia yang hidup, bukan sumber daya manusia.

(mis: coba jelaskan kepadanya secara terperinci kebutuhan praktik tertentu dan makna keputusan tertentu, beberapa orang menggali detail, karena mereka memberi mereka perasaan memiliki kapten yang tidak mengarahkan kapal ke tebing)

ZJR
sumber
9
-1: Dia tidak menyalahkan siapa pun. Dia mengidentifikasi bahwa seorang pria lebih buruk dalam berkomunikasi, dan akibatnya dia berhasil menghindari beberapa pekerjaan yang lebih membosankan yang harus dilakukan orang lain. Saya tidak yakin bagaimana Anda menyimpulkan bahwa ini menunjukkan manajemen yang buruk, atau perjuangan OP untuk berkomunikasi ... Yang mengatakan, saya sepenuhnya setuju bahwa berbicara dengan pria yang dimaksud harus menjadi bagian dari solusi apa pun.
cjmUK
1
@ cjmUK Yang ditunjukkan oleh penjawab ini adalah karena tidak memiliki semua informasi, sulit untuk menentukannya. Sebagai contoh, istri saya dulu bekerja untuk seseorang yang mengira istri saya mengerikan, sekarang istri saya bekerja dengan orang-orang dan dianggap berkinerja tinggi. Jadi apakah istri saya masalahnya, atau rekan kerjanya masalahnya?
Paul
3
-1 Saya pikir tidak perlu dikatakan saya memiliki keterampilan manajemen yang buruk karena saya menyalahkan orang. Dia pria yang baik dan mungkin ada alasan bagus mengapa dia kurang komunikatif. Tindakan saya dalam menangani masalah ini ada dua kali lipat - a) berusaha memperbaiki situasi dengannya, dan b) memutuskan bagaimana mengalokasikan pekerjaan berdasarkan kinerja tim di masa lalu. Saya "meminta internet" untuk bantuan dengan opsi b)
djcredo
2
+1 "Petunjuk: dengarkan jawabannya, seperti dia manusia yang hidup, bukan sumber daya manusia." Kalau saja lebih banyak manajer berpikir seperti ini ... huh.
demongolem
8

Orang berbeda. Sebagai seorang manajer, Anda perlu memperlakukan orang secara berbeda (tetapi adil!) Untuk mendapatkan hasil maksimal dari tim Anda.

Yang mengatakan, itu mungkin baik untuk pengembang dengan soft skill yang buruk untuk mengerjakannya. Saya akan mencari tahu apa hal non-coding yang dinikmati pengembang (atau ingin dilakukan) yang melibatkan lebih dari soft skill itu. Buat mereka terlibat dalam tugas itu, dan idealnya mereka akan meningkatkan soft skill sebagai efek samping.

Orang sering tidak buruk dalam sesuatu untuk keluar dari pekerjaan; mereka buruk karena mereka tidak menikmatinya atau memiliki bakat untuk itu. Anda tidak dapat membantu yang terakhir, jadi kerjakan yang pertama.

Telastyn
sumber
6

Perpecahan 30/70 mungkin merupakan awal dari semua masalah Anda. Saya belum pernah melihat pengembang senang dengan perpecahan seperti itu.

Saya telah melihat pengembang merasa nyaman dengan 10, 15% pekerjaan lain (dan senang sendiri karena menyenangkan ketika dosisnya tepat) tetapi 30% terlalu banyak. Saya lebih suka berpikir anggota tim lain memilih untuk tidak berbicara pikiran mereka daripada hanya ada satu yang tidak suka "30% pekerjaan lain".

Saya juga berpikir penting untuk menyesuaikan "matematika produktivitas" Anda dengan angka yang lebih realistis. Itu tidak akan pernah menambahkan hingga 100% karena kerugian yang tak terhindarkan di "konteks switch".

  • 30 + 70, menjumlahkan produktivitas hingga 100% ketika beralih antara pemrograman dan pekerjaan lain , tidak akan pernah terjadi di kehidupan nyata; lebih mungkin sekitar 20 + 50 atau bahkan 20 + 40. Sakelar konteks sangat menyakitkan bagi pengembang perangkat lunak - jika Anda tertarik, periksa artikel ini untuk penjelasan yang bagus tentang alasannya: JANGAN BANGUN PROGRAMER!
    Programer yang menghargai produktivitas mereka tentu tidak akan senang dengan kerugian seperti itu.

Sedangkan untuk menjalankan tes bagian dari pekerjaan, apakah Anda mempertimbangkan untuk menyerahkannya kepada penguji? Fakta bahwa programmer dapat melakukannya (saya pikir setiap programmer berpengalaman harus mampu melakukan itu) tidak berarti mereka harus melakukannya . Penguji dapat melakukannya juga, dan mereka melakukannya dengan lebih baik, dan mereka tidak akan mengalami kerugian produktivitas di "switch konteks".

Poin lain yang membuat saya bertanya-tanya bagaimana Anda memanfaatkan sumber daya QA adalah Anda menyebutkan Dukungan / Investigasi . Penguji profesional yang saya gunakan untuk bekerja cenderung memiliki "kata pertama" dalam hal-hal seperti itu.

  • Sebagai seorang mantan penguji sendiri, saya memahaminya dengan cukup baik - masalah-masalah produksi bagi saya (sebagai penguji) merupakan sumber data yang sangat berharga untuk belajar tentang cakupan pengujian ("apakah masalah ini telah dicakup dengan baik oleh pengujian saya?") Dan untuk prioritas cacat ("oke itu sudah dicakup oleh tes dan dilaporkan sebelum rilis, tetapi apakah saya menetapkan prioritas / keparahan yang sesuai saat itu?").

Sangat mudah bagi penguji yang baik untuk mengetahui kapan harus lulus penyelidikan masalah dukungan kepada pengembang, dan ini tidak sering terjadi. Alasan untuk membebani pengembang dengan ini hanya luput dari pikiranku. Seperti yang sudah saya tulis, mereka tentu bisa melakukan itu (saya biasanya mengharapkan pengembang senior tahu bagaimana melakukan apa pun yang dilakukan QA) tetapi itu tidak berarti mereka harus melakukannya .

agas
sumber
4

Saya punya 2 hal untuk dikatakan tentang ini

  1. Sudahkah Anda merekrut seorang pembuat kode atau pengembang perangkat lunak?
    Ketika Anda mempertimbangkan pengembang perangkat lunak, semua hal yang telah Anda sebutkan adalah bagian tak terpisahkan dari pengembangan perangkat lunak. Anda tidak dapat mengabaikan semua ini kecuali Anda telah merekrut hanya untuk tugas tertentu. IMO 50% dari total pengembangan perangkat lunak adalah pengodean sisanya semua adalah desain, analisis, pengujian, dokumentasi, dll.

  2. Tidak ada yang terlahir sempurna.
    Tidak mungkin Anda dapat menemukan orang yang baik dalam segala hal. Anda harus membuat mereka berjuang dan membuat mereka belajar banyak hal.

Sebagai manajer Anda harus mendapatkan yang terbaik dari mereka, saya setuju, tetapi dalam menjalankan jangka panjang Anda mungkin menghadapi masalah. Tugaskan mereka tugas-tugas ringan sehingga mereka cenderung memahami hal itu. Keluarkan mereka perasaan bahwa saya tidak pandai dalam hal ini / saya tidak mampu melakukan ini . Kebanyakan dari semua memperlakukan semua orang sama yang akan mendapatkan hasil paling efisien dari tim Anda.

Shirish11
sumber
+1 - Saya setuju dengan kedua poin. Pengembang harus berpengetahuan luas. Dan dengan dukungan dan dorongan yang tepat, mungkin tidak ada alasan mengapa pria itu tidak bisa melanjutkan permainannya.
cjmUK
Ya, "coder" vs "software dev" adalah cara yang bagus untuk membingkainya. Tentu saja kita semua hanya ingin menulis kode yang menyenangkan. Tetapi melakukan semua hal lain yang menyertainya sebenarnya adalah mengapa sebagian besar dari kita dibayar. Saya bisa lepas pantai coders langsung. Off-shoring para pengembang perangkat lunak yang memahami domain bisnis yang ada jauh, jauh lebih sulit.
Graham
@ Graham itulah yang mungkin membuat Anda menjadi aset perusahaan
Shirish11
4

Jika setiap orang di staf Anda memiliki judul / deskripsi pekerjaan yang sama dan deskripsi pekerjaan mencakup semua yang Anda daftarkan maka programmer ini perlu memiliki keterampilan lain yang dipertajam dengan mendapatkan lebih banyak tugas non-programmer lainnya. Demikian juga staf Anda yang lain tidak akan memiliki keterampilan pemrograman mereka dipertajam jika mereka terus-menerus harus bekerja pada tugas-tugas non-pemrograman (gunakan atau hilang itu).

Tetapi saya masih berpikir bahwa prioritas utama Anda mungkin harus memenuhi tenggat waktu Anda (yang mungkin masih dapat Anda lakukan saat mendistribusikan pekerjaan secara merata).

EDIT: Jika Anda memiliki tim kecil, mungkin masuk akal untuk memiliki semua anggota dapat memakai beberapa topi. Jika Anda memiliki tim yang cukup besar, mungkin masuk akal untuk memiliki kelompok yang berspesialisasi dalam bidang yang berbeda. Dari pos Anda, sepertinya Anda tidak memiliki tim yang cukup besar untuk memiliki kelompok spesialis.

Jason Holland
sumber
4

Tidak jelas dari pos asli Anda apa yang sebenarnya kurang tentang keterampilan komunikasi dev ini. Kurangnya minat menghadiri rapat atau melakukan pekerjaan perencanaan / koordinasi (misalnya) tidak selalu menunjukkan keterampilan komunikasi yang buruk. Mungkin dev hanya merasa bahwa jenis pekerjaan ini adalah pekerjaan manajer dan memotong produktivitasnya sebagai dev? Atau mungkin dia merasa bahwa ada terlalu banyak overhead organisasi dan ini adalah bentuk protes terhadap apa yang dia rasakan hanya menghabiskan waktu secara keseluruhan? Lagi pula, masalah yang berlawanan di mana orang berbicara sepanjang hari dan tidak pernah menyelesaikan sesuatu juga cukup umum di kantor.

Sangat penting bagi Anda untuk berbicara dengan dev ini dengan cara yang tidak konfrontatif dan mencoba mencari tahu mengapa dia menghindari tugas-tugas non-pemrograman. Itu mungkin bukan alasan tunggal, ia mungkin memiliki banyak alasan berbeda karena ada berbagai jenis tugas. Pastikan dia mengerti bahwa tujuan dari percakapan ini adalah agar Anda dapat belajar bagaimana secara efektif meningkatkan produktivitas tim dan kepuasan kerja untuk semua anggota tim (Anda tidak ingin mendapatkannya). Ini adalah waktu bagi Anda untuk mendengarkan, dan tidak untuk berdebat atau mencoba mengatasi kekhawatirannya dengan reaksi spontan. Anda mungkin juga harus bertemu dengan anggota tim lain, mungkin mereka benar-benar baik-baik saja dengan membiarkan orang ini melakukan pekerjaan dev yang berat sementara mereka fokus pada sisi profesi yang lebih chattier.

Setelah pertemuan ini, luangkan waktu untuk memikirkan percakapan yang Anda lakukan dan cobalah untuk mempertimbangkan perspektif karyawan ini dengan pikiran terbuka. Mungkin perasaan awal Anda benar dan dia kekurangan beberapa keterampilan penting yang harus Anda dorong untuk berkembang. Atau mungkin dia membuat beberapa tantangan yang valid untuk asumsi Anda. Mungkin Anda dapat bekerja dengan tim lain untuk memformalkan beberapa proses dan mengurangi kebutuhan akan komunikasi yang berlebihan. Mungkin tim lain tidak tertarik dan Anda perlu mengobrol ramah dengan manajemen mereka . Ada banyak kemungkinan yang mungkin tidak Anda pertimbangkan.

Akhirnya, dan yang paling penting, lakukan percakapan lanjutan dengan individu, atau pertemuan tim jika sesuai. Jika Anda telah mengidentifikasi masalah organisasi yang nyata yang dapat Anda pengaruhi, beri tahu karyawan Anda tentang tindakan yang akan Anda ambil untuk memperbaiki situasi kerja mereka. Jika Anda masih percaya bahwa karyawan itu salah, duduklah bersamanya dan jelaskan perubahan apa yang Anda butuhkan darinya dan mengapa. Pengembang cenderung merespons penjelasan logis / praktis dengan baik. "Tidak adil bagi teman-temanmu untuk memberimu semua pekerjaan yang menyenangkan. Kami ingin kalian semua menjadi devs murni, tetapi itu bukan realitas situasinya, jadi kami harus berbagi beban pekerjaan buruk itu."

Tentu saja, jika orang ini hanya brengsek, menolak untuk memberi tahu Anda mengapa dia tidak bahagia, tidak akan menanggapi alasan, dan tidak dihormati oleh teman-temannya ... well ... saatnya untuk Rencana Peningkatan Kinerja.

bau
sumber
2

Meskipun Anda mencoba untuk mengelola tim dan ingin membuat semua orang termotivasi (memiliki rasa keadilan membantu), tetapi apakah Anda mengorbankan proyek dengan tidak memiliki pemrograman programmer terbaik Anda? Maksud saya, ini intinya bukan.

Apakah Anda tidak takut kurang dimanfaatkan dan / atau berisiko kehilangan pengembang terbaik Anda? Tugas Anda adalah mencoba dan melepaskan tugas-tugas semacam ini dari semua orang.

Diperlakukan sama tidak berarti Anda memperlakukan semua orang sama. Jika yang lain ingin mengendurkan tugas-tugas non-pemrograman agar dapat ditugaskan tugas pemrograman yang lebih banyak, bukankah mereka menjalankan risiko menjadi baik pada keduanya?

EDIT: Selain perasaan pribadi Anda, Anda belum mengidentifikasi masalah. Di beberapa titik, kurangnya komunikasi menghalangi seorang programmer. Orang lain akan menunjukkan kebencian dan pekerjaan mereka mungkin menderita. Sejauh ini, Anda tampaknya menjadi satu-satunya yang memiliki masalah. Kecuali ada hal lain yang tidak Anda bagikan?

EDIT 2 Akhirnya, semua orang akan meminta bantuan khusus. Orang ini kurang berkomunikasi dan lebih banyak pengkodean (yang harus dia lakukan dengan semua akun). Orang lain ingin datang sedikit kemudian. Yang lain harus melewati rapat untuk memenuhi tenggat waktu. Seseorang grafis mendapat monitor yang lebih besar. Ketika Anda terlalu menekankan pada menjaga skor, Anda lupa apa yang penting.

JeffO
sumber
Tidak ada yang mengatakan dia adalah programmer terbaik . Dan bahkan jika dia, tidak ada yang mengatakan bahwa mengharuskan dia memenuhi peran yang lebih luas adalah salah. Saya setuju bahwa bersikap adil tidak selalu berarti memperlakukan semua orang sebagai klon - tetapi mungkin ada jalan tengah, di mana orang diberikan tugas yang sesuai dan menarik bagi mereka, tetapi di mana mereka semua terlibat dengan tugas-tugas yang kurang glamor sampai batas tertentu.
cjmUK
1
@ cjmUK - dan tidak ada yang mengatakan anggota tim lain memiliki masalah dengan ini. Lihat Edit 2.
JeffO
2
@ Jeff O "Ini adil untuk mengatakan bahwa semua Pengembang lebih suka menjadi pengkodean". Maaf, tetapi jika para pengembang lainnya tidak memiliki masalah dengan pria yang dimaksud sekarang, mereka pada akhirnya akan melakukannya. djcredo bersikap proaktif dalam mencoba mengendalikan ini sebelum melewati rute itu.
Graham
2

Saya admin linux pemarah yang melakukan banyak scripting, dan telah diketahui bahwa saya memiliki keterampilan komunikasi yang buruk. Saya terdengar sangat mirip dengan pria Anda. Bahkan, itulah satu-satunya bidang yang saya dapatkan dalam ulasan kinerja. Di sisi lain, saya terus memimpin tim saya dalam inovasi dan penyelesaian masalah, dan telah menciptakan dan memimpin jalan ke platform baru yang kami luncurkan dan telah menyelamatkan banyak waktu tim saya dan perusahaan saya banyak uang dengan diizinkan menjadi diriku sendiri.

Mantan bos saya diminta keluarganya / istri DAN manajemen senior perusahaan kami untuk meninggalkan posisinya .... secara bersamaan. Dia bekerja tanpa lelah untuk menyeimbangkan tanggung jawab secara adil dan mengambil banyak beban sendiri. Selama setiap interaksi dengan siapa pun di luar departemen, jika ada kesalahpahaman komunikasi yang kembali kepadanya, dia cepat, ah, benar-benar memperbaikinya. Dia buruk dalam "mengelola ke atas," sehingga tim kami adalah yang terakhir untuk mendapatkan sumber daya sampai keadaan darurat, dan kemudian perusahaan membayar terlalu banyak vendor dengan penawaran penjualan yang licin untuk perangkat keras yang belum diuji tanpa berkonsultasi dengan tim yang akan menggunakan alat-alat itu. Dalam upaya untuk menciptakan tim yang "seimbang", ia mengatur secara mikro daftar tugas kami dan mencoba menyeimbangkan tugas sehingga anggota tim dapat meningkatkan keahlian mereka di bidang-bidang di mana mereka tidak hebat, yang menghasilkan BANYAK kode rusak atau implementasi arsitek yang buruk. Sementara orang selain penulis secara khusus ditugaskan tugas dukungan untuk kode yang rusak sehingga mereka bisa "belajar" - implementasi, kode, dan tes yang tidak dirancang dengan baik menciptakan banyak itikad baik antara anggota tim dan sebenarnyapeningkatan kejadian "game menyalahkan", yang merupakan rute cepat ke keadaan tim beracun.

Bos saya saat ini adalah individu yang tenang dan terkumpul yang datang dari peran admin junior dan telah bekerja keras. Dia membuat keputusan yang baik dan sangat bergantung pada anggota tim untuk menetapkan prioritas mereka sendiri. Dia adalah seorang komunikator yang sangat baik dan bereaksi dengan tenang dan bersama dengan atasannya untuk setiap masalah komunikasi, ide atau kebutuhan yang diungkapkan oleh tim saya. Dia "bekerja ke atas" tanpa lelah. Dia lambat untuk membuat perubahan arsitektur besar, dan berkonsultasi secara menyeluruh dengan seluruh tim sebelum membuat perubahan pada lingkungan kita dan merasa nyaman dengan mengandalkan spesialisasi anggota tim kami.

Di bawah manajer baru, waktu henti kami telah turun ke hampir nol (yang juga telah menurunkan persentase waktu yang kami habiskan untuk tugas-tugas pendukung dari sekitar 40% menjadi sekitar 10%), kepuasan tim kami telah meningkat, dan kami pada jalurnya telah pindah dari 'menghancurkan bank pada perangkat keras baru setiap tiga hingga lima tahun' ke rencana akuisisi berkelanjutan yang akan menyelamatkan perusahaan sekitar sejuta juta setahun selama lima tahun. Rencana itu adalah program akar rumput yang tidak akan pernah terjadi di bawah manajer sebelumnya tetapi secara aktif didorong ke manajemen senior oleh manajer baru dan bergantung pada menemukan BANYAK sinergi dalam rangkaian keterampilan tim. Kami telah diberitahu secara informal oleh CIO bahwa kami sekarang adalah satu-satunya tim di perusahaan yang benar-benar "memiliki masalah mereka bersama" dan bahwa ia Kami akan mengganggu lingkungan kerja kami sesedikit mungkin dan mengocok sumber daya sebanyak-banyaknya ke area masalah yang kami identifikasi mungkin. Ini benar, dan itu membuat "biaya" dukungan kami lebih rendah, meskipun telah mengganggu beban kerja beberapa tim lain - tetapi itu mendorong "biaya" dukungan tim tersebut lebih rendah juga.

Lihat, tempat bagi pengembang untuk meningkatkan keahlian mereka ada di sekolah atau pada waktu mereka sendiri. Tempat bagi mereka untuk menghasilkan barang ada di waktu perusahaan Anda. Cara terbaik untuk menghasilkan sesuatu adalah dengan menghasilkan apa yang paling mereka ketahui. Ketika bekerja di area di mana satu pengembang tidak nyaman, mereka harus menarik pengembang kedua yang khusus dan bekerja sebagai tim, atau pengembang khusus harus menulis kode dan menghasilkan dokumentasi dan diagram. Rute tugas dukungan ke orang-orang yang menulis kode. Ya, ini meningkatkan apa yang kami sebut "faktor bus" Anda - kemungkinan departemen Anda menabrak polisi tidur jika spesialis itu tertabrak bus. (Atau diberhentikan, atau berganti pekerjaan, atau ...) Yang benar adalah bahwa hilangnya produktivitas Anda dari ketakutan itu adalah urutan besarnya lebih tinggi daripada kerugian sebenarnya ketika "peristiwa bus" terjadi Apa yang umumnya terjadi selama "peristiwa bus" adalah bahwa pewaris pekerjaan spesialis membuatnya kembali dalam gambarnya sendiri sehingga ia dapat mendukungnya secara paling efektif, umumnya memecahkan banyak masalah dan menurunkan waktu yang dihabiskan untuk dukungan lebih jauh, dan kehidupan berjalan lebih jauh. di.

Tetapkan hal-hal kepada orang-orang yang dapat melakukan yang terbaik. Buat mereka mendukung dan mendokumentasikan pekerjaan mereka. Pupuk kreativitas mereka dan biarkan mereka fokus tanpa gangguan atau manajemen mikro. Yang lainnya adalah BS manajemen-sekolah, yang sayangnya terdengar seperti perusahaan Anda berenang. Itu tidak berarti bahwa tim Anda perlu berenang di dalamnya juga.

Dari sudut pandang perusahaan, manajer yang baik mempromosikan nilai-nilai perusahaan sambil menjalankan tugas sesuai dengan nilai-nilai itu. Dari sudut pandang seorang karyawan TI, seorang manajer yang baik memungkinkan tim melakukan apa yang benar untuk dilakukan secepat dan sebersih mungkin dan bertindak sebagai penghalang kotoran terhadap manajemen senior yang mendorong nilai-nilai yang mereka pelajari di kelas MBA akhir pekan ke tenggorokan bawahan. Anda menjadi karyawan perusahaan, dan itu mungkin bukan yang terbaik untuk tim Anda. Orang-orang dengan keterampilan komunikasi "baik" terlalu sopan untuk mengatakannya.

Karl Katzke
sumber
0
  • Pastikan karyawan tahu betapa pentingnya keterampilan komunikasi bagi uraian tugasnya. Bekerja dengannya untuk meningkatkan.
  • Jangan bersikeras bahwa mereka harus sebagus anggota tim lainnya dalam tugas seperti itu.
  • Tetapkan tugas sesuai dengan prinsip-prinsip yang Anda yakini. Temukan keseimbangan antara penugasan tugas yang efisien untuk keterampilan, dan keadilan / kesenangan.

Ini hanya ide-ide ringkasan, semoga seseorang akan mencuri poin-poin ini dan melipatnya menjadi salah satu jawaban lain. ;-)

Chris Quenelle
sumber
0

Kinerja adalah segalanya. Beri dia tugas pemrograman. Bicarakan hal ini dengan seluruh departemen. Opsional ajak seseorang untuk melakukan tugas-tugas com atau tugas-tugas seseorang saja di com. Jangan memikirkan pemrograman bersenang-senang. Semuanya "menyenangkan" dari POV Anda.

Jika tidak, Anda akan menciptakan situasi yang sangat sulit untuk dikelola dan kurang efektif daripada yang seharusnya.

Lodewijk
sumber
0

Sungguh pertanyaan yang hebat, itu adalah hal yang harus dipikirkan oleh semua pemimpin tim, penyelia, manajer teknologi. Saya suka pendekatan Anda, semua orang harus mendapatkan tugas yang 'menyenangkan'. Membawa lebih jauh memiliki tim yang dapat mengambil tugas yang berbeda dan dilatih secara silang mencegah Prinsip Peterbilt dari menyebabkan malapetaka 'anggota tim yang tidak dapat ditahan meninggalkan tim atau bahkan mengambil liburan yang terengah - engah '.

Sekarang, seperti yang ditunjukkan oleh banyak posting, pekerjaan itu tidak adil dan tidak seharusnya. Manajer diukur pada seberapa banyak pekerjaan yang berharga dilakukan.

  • Manajer mencocokkan tugas dengan individu berdasarkan keterampilan.
  • Manajer yang baik mencocokkan tugas berdasarkan keterampilan, pertumbuhan, minat, dan peningkatan produktivitas tim.
  • Manajer hebat membuat tim mereka melakukan ini dengan sedikit bantuan dan bimbingan. Yaitu tanpa manajer menghabiskan sepanjang hari untuk itu.

Bicaralah dengan programmer baik Anda, tanyakan padanya apakah ada hal-hal yang ingin ia pelajari. Apa tugas lain yang akan dia terima ... bahkan apa yang paling tidak menyenangkan baginya. Bisakah dia membantu anggota tim lainnya dengan pemrograman mereka ... membimbing mereka. Ya saya tahu komunikasi adalah masalah, jadi mungkin dia harus mengerjakannya.

Cara lain untuk mengemas ini adalah memiliki daftar tugas dan membiarkan setiap anggota staf mengambil sesuatu. Biarkan programmer yang baik Anda memilih terlebih dahulu. Jika Anda memperingatkannya terlebih dahulu dan menunjukkan kepadanya daftar tugas lebih baik.

Jika Anda mendapat perlawanan, yang hampir selalu Anda lakukan dengan perubahan, temukan nilai jual, sesuatu yang bernilai baginya, mengapa dia mendapat manfaat. Terakhir, Anda bisa menyuruhnya melakukannya untuk tim.

Juga mengharapkan kesalahan dan produktivitas yang lebih rendah untuk memulai, itu pertanda orang belajar. Proyek ini mungkin menderita, tetapi selanjutnya akan lebih baik.

Sebagai penutup, itu adalah tugas Anda untuk memastikan hal-hal dilakukan, tetapi demikian juga menumbuhkan staf Anda dan jika Anda dapat melibatkan mereka dalam proses lebih baik. Beberapa mungkin mengatakan cara terbaik untuk memastikan hal-hal dilakukan adalah tim yang tahu apa yang perlu dilakukan dan memiliki hasilnya.

Sunting: Oh dan terus berusaha, saran di atas berasal dari kesalahan bertahun-tahun, tetapi saya selalu tahu saya ingin membantu tim saya tumbuh, dan saya tahu produktivitas adalah raja, jadi saya terus mencoba hal-hal baru ketika upaya terakhir gagal.

MarcLawrence
sumber
0

Jawaban terbaik telah diterima, tetapi saya terkejut tidak ada yang mengatakan bahwa "penugasan tugas" bukanlah satu-satunya hal yang dapat dilakukan manajer. Memiliki "programmer rata-rata di atas" yang juga memiliki "di atas keterampilan komunikasi rata-rata" harus (semua hal lain dianggap sama) menjadi pengembang yang dibayar lebih tinggi / lebih senior daripada seseorang dengan keterampilan pemrograman yang sama dan keterampilan komunikasi yang lemah. Ini dapat membantu mengimbangi "favoritisme" apa pun yang dirasakan dari tim. (Dalam beberapa organisasi, memiliki keterampilan rata-rata di atas dalam "Analisis Kebutuhan" dan keterampilan di bawah rata-rata di bidang lain mungkin jauh lebih berarti bagi perusahaan karena jenis pekerjaan yang dilakukan. Sebagai seorang manajer, Anda perlu memutuskan bagaimana menangani ini .)

Satu hal lain yang harus diperhatikan: memberikan orang tersebut pertanyaan apa pun kecuali tugas pemrograman akan menyebabkan isolasi jangka panjang. Pastikan untuk terus memberi mereka beberapa tugas lain (tapi yang bisa mereka lakukan dengan baik, jangan mengaturnya untuk umpan balik negatif !!) sehingga mereka berdua terlihat dan memiliki visibilitas dengan departemen / tim lain.

Akhirnya ... memeriksa dengan anggota tim lain jika mereka melihat setiap ketimpangan dalam tugas tim secara berkala. Ini mungkin menjadi masalah besar bagi Anda, tetapi # 15 dalam daftar orang lain.

Al Biglan
sumber
1
Sayangnya, ia memiliki keterampilan komunikasi yang kurang dari rata-rata.
Matthieu M.
-1

Karena dengan evaluasi Anda sendiri, programmer yang satu ini adalah yang terbaik di tim, dengan cara itu "adil" untuk memberi orang itu pekerjaan yang diinginkan (sebagai hasil dari menunjukkan kemampuan terbaik untuk melakukannya). Bagaimanapun, mungkin ada orang-orang yang ingin bekerja di perusahaan ini tetapi tidak dipekerjakan sama sekali - tetapi tidak ada yang akan mengatakan itu tidak "adil" bagi mereka bahwa mereka tidak bisa melakukan pengkodean ini.

Saya pikir pendekatan yang adil adalah untuk memberitahu anggota tim yang kurang terampil lainnya yang ingin melakukan lebih banyak pengkodean: "kami membiarkan (begitu-dan-begitu) yang memimpin ini. Mungkin Anda bisa memimpin hal berikutnya yang muncul, jika Anda dapat menunjukkan telah belajar keterampilan x dan y. "

gcbenison
sumber
2
"Namun, satu anggota tim mungkin memiliki keterampilan pengkodean di atas rata-rata". Dia bukan yang terbaik. Dia di atas rata-rata. Mungkin ada sekitar 1/3 dari tim yang lebih baik dalam coding.
Graham
-1

Seperti beberapa orang lain yang menjawab, saya memahami posisi Anda, dan saya akan memiliki ambisi yang sama.

Sementara itu adalah kasus untuk mengatakan bahwa masuk akal untuk memberikan tugas kepada orang-orang yang paling siap untuk melaksanakannya, ada juga arti dalam memperluas keterampilan masyarakat untuk menyediakan tim yang dinamis dan fleksibel.

Jika orang ini diminta untuk melakukan elemen non-coding dalam perannya, tetapi keterampilan komunikasinya lebih buruk daripada yang benar-benar dibutuhkan, ia perlu ditingkatkan. Dengan asumsi bahwa Anda memiliki semacam sistem penilaian / penilaian pengembangan, inilah saatnya untuk mengangkat masalah tersebut.

Masalah utama adalah memetakan dengan jelas apa yang Anda butuhkan darinya, menilai apakah ia memiliki keterampilan untuk mematuhinya, dan menyusun rencana pelatihan untuk memungkinkannya. Pelatihan tidak harus formal, tetapi Anda harus membantunya mendapatkan keterampilan yang diperlukan.

Jika dia tidak bisa diganggu, maka pada akhirnya akan menjadi masalah disiplin. Jika dia tidak memiliki kemampuan, meskipun telah mencoba dan didukung oleh Anda, maka mungkin ada langkah-langkah disipliner yang tersedia (yang saya berpendapat akan keras dan kontra-produktif) tetapi sama-sama Anda hanya bisa menerima bahwa dia tidak cocok untuk tugas-tugas tertentu.

Berbicara dengan pria itu akan menjadi salah satu porta panggilan pertama Anda . Anda mungkin menemukan bahwa dia kurang percaya diri atau wawasan. Anda mungkin juga menemukan bahwa dia sangat responsif dan akan menghargai kesempatan untuk memperbaiki dirinya sendiri.

cjmUK
sumber
-1

Anda harus menyewa junior untuk melakukan semua pekerjaan kasar, dan biarkan semua orang tahu bahwa mereka perlu membantunya dengan apa pun yang dia minta bantuan.

Mereka akan lebih cenderung mengganggu pembuat kode "di atas rata-rata" karena kemampuan mereka dan anggota tim lainnya mendapat antek baru. Junior belajar dari bawah ke atas dan perusahaan pada akhirnya memiliki karyawan yang berpengetahuan luas.

Douglas
sumber
1
Harap pertimbangkan pengerjaan ulang jawaban ini agar mengalir sedikit lebih lancar untuk menunjukkan hubungan programmer baru, termasuk di mana kami mendapatkan uang untuk membayar gerutuan baru (awalnya, saya pikir itu dengan menyingkirkan komunikator yang buruk). Dalam jawaban Anda, apakah bekerja dengan pria baru itu merupakan cara bagi pria yang ada untuk membangun keterampilan komunikasi? Pria mana yang akhirnya bulat?
PengembangDon
-2

Mengharapkan bahwa setiap orang akan memiliki keterampilan komunikasi yang sama rasional seperti mengharapkan Anda akan mengajar orang lumpuh untuk berlari secepat anggota tim lainnya.

Orang berbeda, mereka memiliki keterampilan dan kelemahan yang berbeda. Memecat programmer yang hebat hanya karena dia tidak bisa mengejar ketinggalan dengan yang lain dalam keterampilan komunikasi akan seperti memecat seorang pria yang lumpuh karena dia tidak bisa berjalan secepat yang lain. Akan tidak adil dari sudut pandang etika dan itu akan bertentangan dengan kepentingan ekonomi Anda sendiri - untuk menyelesaikan pekerjaan.

Anda harus pada awalnya, jika Anda gagal melakukannya di masa lalu, baca tentang sindrom Asperger . Keterampilan sosial yang buruk adalah indikator utama sindrom itu.

Kedua, Anda dapat merekrut dan memecat siapa pun yang Anda inginkan, tetapi jika Anda gagal mengatasi kekuatan dan kelemahan karyawan Anda, Anda akan berakhir dengan sekelompok programmer rata-rata, karena yang terbaik akan pergi (jika tidak dipecat terlebih dahulu) .

Ada sebuah film, Adam , di mana programmer genetika dipecat hanya karena dia telah menulis sesuatu yang tidak diharapkan. Idenya dapat membawa banyak uang kepada majikan, tetapi dia tidak dapat menggunakan kesempatan itu karena dia berkonsentrasi pada "prinsip" -nya.

Tuan-tuan
sumber
1
Untuk memperjelas - tidak ada yang dipecat di sini. Kita semua bekerja bersama dengan sangat baik, dan dia adalah anggota tim dev yang sangat berharga. Saya sedang berbicara tentang cara menetapkan pekerjaan masa depan, dan bagaimana meningkatkan kinerja dan moral tim secara keseluruhan.
djcredo