
Ada dua cara utama untuk menjadi manajemen puncak di perusahaan IT:
- Manajerial - ketika seorang manajer proyek mulai mengelola manajer lain.
- Tekhnarsky - ketika pengembang mulai mengelola pengembang lain dan jumlah staf yang ia kelola meningkat.
Cara pertama lebih alami, karena menyiratkan pengembangan kualitas dasar seorang manajer saat ia tumbuh. Bahkan, manajer tetap menjadi manajer, hanya menjadi spesialis di tingkat yang lebih tinggi.
Cara kedua lebih panjang dan tidak menjamin kesuksesan, karena itu bertentangan dengan esensi programmer introvert. Namun, di jalur ini saya ingin fokus dan berbagi pengalaman dan pengetahuan.
Perhatian, spoiler.
- Semua nama itu fiktif
- Narasi lebih berkaitan dengan pengembangan kebiasaan.
- Keterampilan, dan terutama soft skill, sulit untuk dievaluasi secara formal, semua grafik dalam artikel ini bersyarat dan mencerminkan pendapat pribadi saya
Awal jalur sang programmer
Jadi, kita berada di awal jalur programmer.
Bertemu: Nikolai (nama diubah). Nikolai adalah seorang programmer muda, ia belajar dengan baik di universitas dan telah mencoba untuk menulis situs web sederhana. Dia masuk ke studio untuk posisi front-end Juni, dia dimasukkan ke dalam proyek yang telah ditulis selama dua tahun menggunakan kerangka kerja Angular modern versi 1.5. Anak laki-laki Kolya tidak bekerja dengannya, tetapi dia melihat tanda dolar yang dikenalnya, dan dia sudah berhasil menulis beberapa plug-in untuk jQuery. Fakta ini mendorong Nicholas, tetapi kemudian kawan-kawan senior memberitahunya bahwa ini sama sekali bukan jQuery, dan, secara umum, Anda perlu menulis arahan di sini, tetapi di sini dua filter perlu dilakukan. Nikolay mengalami depresi, tetapi bertekad untuk bergabung dengan proyek ini.
Dan sekarang satu tahun telah berlalu, Nikolai mahir menulis arahan dan tidak lulus sehari tanpa modul baru. Kohl di atas kuda, optimisme ditambahkan kepadanya oleh fakta bahwa enam bulan yang lalu Juni muda ditanam padanya untuk sebuah proyek, dan dia bahkan tidak tahu apa arahan itu. Anak anjing! Nikolai berteman dengan kawan-kawan yang lebih tua, dan hanya seorang pria berusia 30 tahun di sudut yang selalu tidak puas dengan sesuatu.

Sebenarnya, pada grafik kita melihat keterampilan teknis untuk proyek dan semua keterampilan Nicholas yang dia miliki. Karena ini adalah proyek pertamanya, faktanya inilah yang diketahui Nikolai. Setelah beberapa saat, dia pergi ke pihak berwenang dan meminta dua kantong uang - karena dia dengan terampil membuat arahan proyek, dan secara umum, dia menganggap bahwa dia meninggalkan komentar dua kali lebih banyak di MR daripada pria berusia 30 tahun. Jelas, dia lebih baik dari pemimpin timnya. Dia menerima penolakan yang sepenuhnya masuk akal untuk ini dan mulai mencari pekerjaan baru, mungkin dia berpikir untuk pindah ke proyek lain atau ke tim lain. Bagaimanapun, ia dihadapkan pada situasi di mana pengetahuan yang baru diperoleh tidak lagi relevan dan ia perlu belajar lebih lanjut.

Ini adalah krisis pertama Nikolai, "Pengaruh Proyek Pertama".
Di tempat baru, Nikolai diberi proyek tentang Angular 5, yah, dia dengan terampil menulis arahan! Tapi di sana dia melihat beberapa permainan! Apa lagi TypeScript? Apa itu RxJ dan utas? Kawan-kawan yang lebih tua menertawakannya, dan pria berusia 30 tahun itu melemparkan pandangan tidak ramah. Saya melihat sejumlah besar bintang seperti itu dan banyak bintang jatuh, ketika pengembang menyadari bahwa ternyata dia masih tidak tahu apa-apa! Dan semakin cepat ini terjadi, semakin baik. Ini disebut Efek Dunning - Krueger - distorsi metakognitif, yang terdiri dari kenyataan bahwa orang-orang dengan tingkat kualifikasi rendah membuat kesimpulan yang salah, membuat keputusan yang gagal dan tidak dapat mengenali kesalahan mereka karena rendahnya kualifikasi mereka.

Juni, yang mengganti 3-4 proyek dalam setahun, jauh lebih disukai bagi majikan daripada Juni, yang duduk sendirian di proyek yang sama selama setahun, karena ia:
- Secara obyektif menilai pengetahuan dan keterampilan mereka.
- Terus berkembang
- Berkomunikasi lebih banyak dalam tim
- Dia lebih memahami harga kesalahan karena dia melihat tenggat waktu dan rilis lebih banyak.
Kolega yang berada pada tahap ini ingin mengucapkan yang berikut:
- Jangan berkecil hati saat Anda gagal
- Untuk terus belajar dan mempelajari perpustakaan dan teknologi baru
- Jangan bintang
Junior β Tengah β Senior
Nah, beberapa tahun telah berlalu dan apa yang kita lihat?

Nikolay telah menguasai beberapa kerangka kerja dan menyadari bahwa kerangka kerja hanyalah alat untuk memecahkan masalah tertentu. Dia tahan dengan kenyataan bahwa dia tidak tahu segalanya, tetapi pada saat yang sama dia berusaha untuk berkembang sepanjang waktu. Pada titik tertentu, ia mendatangi pemimpin tim berusia 33 tahun dan berkata: Dengar, Petya (nama berubah), beberapa dzhun telah mendatangi kami, mereka tidak tahu apa-apa dan perlahan-lahan melakukan tugas pada proyek. Biarkan saya memberi mereka beberapa kuliah atau kelas master sehingga mereka dapat dengan cepat bergabung dengan pekerjaan kami. Dan pada saat inilah Nikolai naik ke level berikutnya.
Sekarang ada divisi menjadi Junior, Middle, Senior. Middle berpikir bahwa untuk menjadi Signor, ia perlu menguasai bahasa pemrograman baru dan mengencangkan peralatannya. Ini tidak sepenuhnya benar. Pada awal pembangunan dalam negeri, ada posisi yang mirip dengan Signor, ia disebut programmer terkemuka - spesialis seperti itu tidak hanya tahu banyak, tetapi juga memimpin proyek atau tim. Signor tidak dapat menjadi tanpa soft skill yang sesuai.
Nikolay belajar menemukan pendekatan untuk semua anggota tim, ia terus mengembangkan dan mengembangkan sisanya. Dia sudah melihat "bintang-bintang dari proyek pertama", tetapi dia jauh lebih nyaman bekerja dengan profesional yang sama seperti dia. Bagaimanapun, mereka mengerti bahwa keberhasilan proyek adalah keberhasilan semua orang, dan tusukan satu anggota tim pada akhirnya mempengaruhi semua pesertanya.
Pada tahap ini, ada dua cara yang mungkin: menjadi pemain yang sederhana, tidak berusaha keras dan menyelesaikan tugas; yang kedua adalah mengembangkan ke arah programmer terkemuka, untuk mengambil tanggung jawab dan inisiatif.
Pada tahap pengembangan programmer ini, tim dan manajemen menghargai kualitasnya:
- Tanggung jawab
- Keandalan
- Kemasyarakatan
- Proaktif
Di mana itu layak untuk dikembangkan?
- Pemahaman mendalam tentang teknologi yang ia gunakan
- Memperluas cakrawala
- Bertanggung jawab atas proyek dan orang-orang
Selain itu, keterampilan dari paragraf terakhir harus dipompa jika ia ingin berkembang di sepanjang kurva ke kepala. Jika dia tidak tertarik, maka kita dapat berkonsentrasi pada keterampilan spesialis teknis.
Krisis teknologi
Pada titik tertentu, Nikolai ngeri menyadari bahwa tidak ada yang sudah menulis di JS, dan sebagian besar pengetahuannya tidak diperlukan oleh siapa pun. Inilah bagaimana krisis teknologi terjadi. Saya menemukan krisis dengan aplikasi desktop. Beberapa saat kemudian, coders tidak lagi dibutuhkan oleh siapa pun - render front-end mulai dibutuhkan di mana-mana. Kemudian PHP tiba-tiba menjadi ketinggalan zaman, dan pengembang JS menjadi dibutuhkan di pasar.

Ada tiga jalan keluar:
- Latih kembali untuk tumpukan baru
- Menjadi lebih baik di masa lalu dan meraih pesanan terakhir. Delphi yang sama masih diminati dalam lingkaran sempit dengan sejumlah besar kode warisan
- Tinggalkan manajemen dengan keterampilan yang tepat
Spesialis yang kuat akan selalu dibutuhkan, tetapi, dengan penurunan permintaan untuk teknologi tertentu, persaingan antara pelamar meningkat. Pengembangan kustom lebih banyak menderita daripada pengembangan produk. Setelah menetap di sebuah perusahaan grosir besar, seorang pengembang mungkin tidak takut dengan usia atau keusangan tumpukan teknologinya - ia akan diminati saat produk itu hidup. Menurut statistik saya, usia rata-rata pengembang di perusahaan makanan lebih tinggi daripada di studio.
TeamLead. Krisis usia
Nah, Nikolay mengubah tumpukan teknologi, dan semuanya tampak baik-baik saja, tetapi kita melihat bahwa keterampilan baru diberikan lebih lambat, dan generasi muda mengejar lebih cepat.

Di sinilah krisis terakhir - krisis usia.
Nicholas menjadi salah satu pemimpin tim yang dia pandang beberapa tahun yang lalu sebagai orang tua, selalu menggerutu dan tidak senang, tetapi sekarang dia mulai menulis lebih sedikit.
Anda mungkin berpikir bahwa jika Anda menulis lebih sedikit kode, Anda akan berkembang lebih lambat, dan orang-orang yang menulis lebih banyak akan berkembang lebih cepat, dan mereka akan segera menyusul Anda. Saya bertemu fobia semacam itu di antara para spesialis muda.
Opsi apa yang bisa ada:
- Jika Anda bekerja di perusahaan grosir, maka mungkin ini tidak begitu penting bagi Anda, dan Anda dapat meninggalkan semuanya apa adanya
- Pergi ke pelatihan, misalnya, untuk menjadi konsultan, arsitek, dll.
- Taki pergi ke manajemen
Mari kita beralih ke kurva
Kepuasan. Itu tidak selalu bisa di atas, proyek-proyek berkualitas tinggi tidak selalu ditemukan, dan tim yang ideal sulit untuk mengambil dan mendidik.

Saya yakin bahwa meskipun ada penurunan kepuasan, seseorang harus selalu tetap manusia. Saya mengatakan bahwa jika tenggat waktu proyek sudah dinyalakan dan semua orang berlarian di dalam sabun, maka terlalu gugup tidak akan membantu kasus ini. Tim akan jauh lebih nyaman bekerja dengan orang-orang yang tidak akan mengecewakan Anda pada saat-saat kritis.
Keterampilan teknis relatif cepat diperoleh dan bahkan lebih cepat dilupakan dan menjadi usang, jika dilihat dari samping.

Ternyata si programmer memiliki puncak perkembangannya, dan kemudian mulai βmenuaβ, dan pada titik tertentu sudah saatnya baginya untuk pensiun?
Ya dan tidak Bahkan, alih-alih satu grafik, Anda dapat menggambar 3 (sekali lagi IMHO, seperti nilainya).

- keterampilan teknologi - pengetahuan ini dalam teknologi, bahasa pemrograman, kerangka kerja. Apakah Anda ingat apa yang saya tulis sebelumnya bahwa pimpinan tim mulai menulis lebih sedikit kode dan lebih banyak kontrol? Keterampilan ini memiliki puncaknya tepat pada saat permintaan terbesar untuk spesialis dalam peran encoder.
- hard skill adalah kombinasi dari pengetahuan dan pengalaman pengembang, seiring waktu, pertumbuhan mereka menurun karena fakta bahwa pengetahuan lama sudah menjadi usang dan tidak diminati, tetapi residu keringlah yang tetap berguna.
- soft skill - ini adalah kualitas pribadi yang tidak dapat dihitung, tapi itu harus dikembangkan. Ini adalah kualitas yang selalu penting, tetapi untuk berbagai tingkatan diberikan kepada semua orang sejak lahir.
Tapi mari kita tambahkan grafik lain
value = (0,5*tech + 1*hard + 1,5*soft)/3

, , 10 .
, .
, ? Β« , β Β» , . , , , , . , , .
HR- . , . , . : , , , ( , ).
2
, :
Junior β Middle β Senior β TeamLead? β Project manager? β Head Of * β Chief * Officer
?
, : . , : , .

TechLead vs TeamLead
, (, ), .
TeamLead ( 1 ) β , . :
-
- ,
- ( )
- , .
- TechLead PM
TechLead ( 2 ) β . , TeamLead, , .. 2 .
β TechLead, TeamLead:
- , , ,
- β , , β
- ,
- PM
- TeamLead,
, , , ( ), .
β , , , , , , , - .
, , , , , . , .
( , , ) , , .
, :
, , , , - Β« Β». : , , .
/ , , : , ..
, β . , . ,
, , .