Walaupun saya menganggap diri saya tidak terlalu berpengalaman, saya tetap bekerja sebagai pemimpin (dalam hal ini saya adalah direktur teknologi perusahaan, di yang sebelumnya saya adalah kepala R&D).
Saya mengerti mengapa ini terjadi (saya memiliki seperangkat keterampilan tertentu, dan saya menggunakan beberapa bahasa pemrograman yang tidak umum), masalah saya adalah: Saya tidak dapat menemukan mentor ...
Saya tahu pasti ada hal-hal yang harus saya pelajari, dan saya perhatikan ketika saya bekerja selama bertahun-tahun bahwa saya perlahan-lahan belajar semakin banyak, tetapi saya percaya bahwa ada beberapa cara untuk menjadi lebih baik lebih cepat daripada hanya coding ...
Jadi, bagaimana saya meningkatkan diri ketika tidak ada orang lain di perusahaan yang mengajar saya, atau membaca kode mereka? (atau bahkan perbaiki kode mereka ...)
Saya pikir saya melampaui buku, tetapi jauh di bawah tingkat "master", jadi saya tidak tahu di mana harus belajar lebih banyak.
sumber
Jawaban:
Bagaimana dengan:
Lihat juga jawaban untuk Bagaimana Menguasai Bahasa Pemrograman
sumber
Beberapa petunjuk:
Pelajari bahasa lain. Kemudian bandingkan dengan bahasa yang sudah Anda kenal, dan cobalah untuk melihat cara Anda dapat meningkatkan keterampilan coding Anda dalam bahasa-bahasa tersebut dengan menggunakan hal-hal yang Anda pelajari dari bahasa lain. "Bebaskan pikiranmu" sebelum mempelajari bahasa-bahasa baru itu, dan jangan mencoba mengkloning konsep satu ke yang lain .
Baca kode Saya tidak tahu bahasa apa yang tidak biasa yang Anda gunakan dengan tepat di pekerjaan Anda, tapi saya cukup yakin Anda dapat menemukan kode sumber terbuka berkualitas tinggi yang ditulis dalam bahasa tersebut oleh pengembang yang sangat terampil.
Tetap bersama komunitas. Jika Anda tidak memiliki kolega yang menggunakan bahasa Anda di tempat kerja, itu bukan alasan untuk tidak membagikan pengetahuan melalui situs web seperti Stack Overflow, di mana ada pertanyaan dan jawaban bahkan untuk bahasa yang sangat tidak umum. Coba cari pertanyaan-pertanyaan itu dengan tag dan lihat apakah Anda memahami semua jawaban. Jika pertanyaan tidak dijawab, jawablah.
Mengajar. Ajari rekan kerja Anda. Tulis blog. Apa pun. Dengan menjelaskan sesuatu kepada orang lain, Anda akan mempelajarinya dengan lebih baik.
sumber
Solusi utama saya untuk itu selama 2 tahun terakhir adalah:
berjejaring sosial: Saya secara khusus menemukan bahwa meetup.com adalah cara yang bagus untuk menemukan grup pemrograman di daerah Anda. Twitter juga bagus untuk ini. Ketika Anda menemukan orang yang Anda sukai dan hormati, ikuti mereka.
Menggunakan http://www.stackoverflow.com Saya awalnya menggunakannya untuk pertanyaan sesekali. Sekarang adalah teman harian saya untuk memberi dan menerima saran. Juga gunakan situs saudara seperti /codereview//
Bekerja: Meskipun mungkin tidak berlaku untuk Anda (tetapi saran umum yang baik untuk orang lain) Jika Anda cukup baik untuk mendapatkan beberapa jenis pekerjaan di bidang yang Anda inginkan, cari orang-orang senior, bersikap baik kepada mereka dan mencoba membuat mereka untuk membimbing Anda .
Buku. O'Reilly, Pragmatic Programmer dan lainnya masih memiliki buku yang bagus dan Anda dapat memilih versi kertas dan / atau digital. Berikut adalah daftar yang benar-benar hebat: /programming/1711/what-is-the-single-most-influential-book-every-programmer-should-baca dengan beberapa 'klasik' terbaik di luar sana jika Anda belum membacanya. Saya dapat merekomendasikan kode bersih dan kode lengkap.
Tutorial Sekarang ada beberapa situs fantastis di internet seperti
http://www.codeschool.com ,
http://www.codeacademy.com
http://code.google.com/edu/
sumber
Hanya karena saya membaca sedikit hierarki dalam (untuk) pertanyaan Anda:
Belajarlah dari orang-orang di bawah Anda. Pengembangan perangkat lunak adalah tentang komunikasi, antar manusia, seringkali melalui media kode. Karena komunikasi yang baik harus berjalan dua arah, belajarlah dari orang-orang yang Anda programkan. (Asumsi saya adalah bahwa Anda tidak berada di perusahaan 1 orang)
sumber
Saya percaya bahwa Anda akan belajar banyak dengan mengajar mereka yang Anda pimpin. Anda akan mendapatkan pemahaman yang lebih kuat tentang apa yang Anda ajarkan kepada mereka karena Anda akan dipaksa untuk berpikir tentang mengapa / bagaimana hal-hal yang mudah bekerja (yang mungkin Anda hindari pada awalnya karena Anda hanya menginginkannya bekerja)
sumber
Mentoring Dapat Berfungsi Lintas
Mentor tidak selalu perlu menjadi ahli dalam apa yang Anda fokuskan. Jika Anda menggunakan bahasa pemrograman yang tidak biasa, itu masih menyisakan sekitar 99 topik non-bahasa dalam pengembangan perangkat lunak yang dapat Anda latih. Beberapa mentor saya baru-baru ini telah terlibat dalam pengembangan bisnis, perangkat keras, atau rekayasa sistem, meskipun saya terutama terlibat dalam perangkat lunak.
Banyak Jenis Orang Dapat Menjadi Mentor Anda
Suatu hal yang baik untuk dicari adalah seseorang yang sekarang di mana Anda ingin berada dalam lima tahun. Seorang mentor seperti ini tidak selalu tersedia, jadi alternatif lain termasuk orang bijak yang memiliki pengalaman jauh lebih banyak, tetapi mungkin tidak berada dalam peran kepemimpinan formal lagi, seorang mentor balik yang kurang berpengalaman (atau dilarang di surga, lebih muda) tetapi memiliki perspektif pada alat dan teknik yang bisa bermanfaat.
Apakah Mentor Anda Juga Sponsor Anda?
Selain mentor, terkadang sangat penting untuk memiliki sponsor. Jika Anda mencoba untuk naik dalam suatu organisasi, jika Anda memiliki seorang mentor yang memberikan nasihat besar tetapi tidak memengaruhi rantai komando Anda, Anda mungkin akan dirugikan jika dibandingkan dengan seseorang yang memiliki mentor yang mensponsori mereka sebagai pemimpin, pemilik proyek, atau manajer proyek yang memberi mereka peran atau promosi yang lebih berpengaruh.
Mentor dan Jejaring Lintas Perusahaan
Jika Anda sudah menjadi direktur teknologi, Anda mungkin perlu mencari mentor dari luar perusahaan Anda. Ada kekuatan dalam hal jumlah, jadi berjejaring dengan banyak orang dengan cara yang dangkal bisa sangat berharga. Saya umumnya berpikir bahwa untuk menjadi berharga, keterlibatan Anda dengan profesional lain perlu memiliki kedalaman yang berasal dari bekerja bersama atau hubungan yang luas, sering, atau panjang.
Seberapa Besar Kolam Anda?
Anda menyebutkan bahwa Anda telah menjadi kepala R&D dan direktur teknologi, tetapi Anda tidak merasa seperti Anda yang berpengalaman. Pengakuan baik untuk jiwa, jika bukan reputasinya. Saya memiliki pengakuan serupa.
Pada satu titik, saya menganggap karier saya telah dibagi menjadi dua bagian. Pada awalnya, saya bekerja di banyak tim di mana saya adalah satu-satunya pengembang perangkat lunak atau pengembang dengan perguruan tinggi terbanyak. Yang kedua dimulai ketika saya bekerja di perusahaan Fortune 100 dan bekerja dengan pengembang yang jelas-jelas lebih tinggi. Kontras pada dasarnya seperti menjadi ikan besar di kolam kecil menjadi ikan kecil di kolam besar.
Trading Up
Membuat perubahan dari perusahaan independen kecil berarti saya memiliki status yang jauh lebih sedikit dalam organisasi. Tetapi masih ada beberapa status. Pengembang masih dihargai baik dengan gaji yang lebih tinggi dan tingkat kontrol yang cukup tinggi atas pekerjaan. Saya juga bisa mempengaruhi sesama anggota tim (walaupun bukan dari atas). Ada banyak panutan. Memiliki banyak kompetisi memaksa saya untuk memperkuat secara teknis dan memahami bagaimana apa yang saya lakukan memberikan nilai bagi organisasi dan tim saya.
Saya sebelumnya mengabaikan insting saya tentang peran dan mentor dan membayar harga. Intuisi terkadang merupakan perasaan yang muncul dari sintesis pengalaman. Pilihan saya adalah jika rasanya salah, itu mungkin salah dan pantas diselidiki dengan saksama. Sepertinya Anda khawatir tentang pengalaman Anda dan kurangnya mentor, jelajahi pilihan Anda.
Apakah Anda mungkin menemukan pertumbuhan, kepuasan, dan manfaat lain dengan bermigrasi ke perusahaan yang lebih besar, lebih agresif? Lebih besar tidak selalu lebih baik, tetapi kadang-kadang memiliki keunggulan orang yang beragam yang menghasilkan hubungan kerja yang beragam, dan pengalaman proyek yang beragam. Banyak tokoh-tokoh Lembah Silikon telah atau telah bertindak sebagai mentor bagi orang-orang yang sebagai hasilnya dapat memetakan jalan mereka menuju sukses dengan lebih cepat dan efisien. Salah satu teman sekelas saya dari sekolah pascasarjana mengikuti panggilan untuk bergabung dengan Linked In dan mengalami budaya itu, memainkan permainan level yang jauh lebih tinggi.
Manfaat Mentor
Sementara seorang mentor bisa seperti seorang profesor, saya pikir kecuali Anda memiliki orang yang sering melihat produk pekerjaan Anda, atau melayani seperti master dalam hubungan master / magang, pelatihan keterampilan dan pendidikan profesional merupakan hal yang sekunder. Saya pikir hal terbesar yang dibagikan mentor termasuk nasihat tentang pertumbuhan, pemodelan peran keputusan yang baik dan keseimbangan antara nilai-nilai tempat kerja, dan penilaian yang mantap, obyektif dan sehat di saat krisis.
Sepotong nasihat yang diberikan kakek saya berkali-kali adalah bahwa orang hanya bisa diajar ketika mereka rendah hati. Hati-hati dengan pernyataan seperti "Saya jauh melampaui buku", dan cobalah belajar dari semua orang. Untuk membangun hubungan dengan seorang mentor, pastikan Anda menghargai dan menerima dan Anda menunjukkan penghargaan. Penting juga untuk mengikuti saran mereka karena kecuali mereka sangat sabar, mereka umumnya akan menginvestasikan waktu mereka di mana itu akan berubah menjadi tindakan.
sumber
Teman baikku
Izinkan saya memberi tahu Anda bahwa sangat jarang ditemukan bahwa seseorang mengajarkan nuansa pemrograman kepada orang lain. Pemrograman adalah sesuatu yang harus dipelajari sendiri. Jika Anda berkonsentrasi pada topik tunggal dan mencobanya dan bergabung dengan berbagai forum yang mendukung topik itu, maka cepat atau lambat Anda akan menjadi ahli topik itu. Mohon ingat bahwa Anda sendiri adalah orang terbaik untuk mengetahui seberapa baik Anda menjadi. Dalam jenis industri dan dunia kita, kita harus menjadi mentor kita sendiri, karena apa yang kita ajarkan akan tetap ada bersama kita untuk selamanya.
sumber
Ketika saya menggunakan sangat "alat khusus atau bahasa / kerangka kerja pemrograman yang tidak umum" maka saya mencari beberapa kelompok minat khusus. Tentu saja, ada komunitas online untuk sebagian besar teknologi / kerangka kerja yang saat ini digunakan. Jadi, saya menggunakan semua sarana komunikasi online untuk tetap terhubung dengan posting terbaru di:
Salah satu pendekatan terbaik untuk mempelajari praktik baik "bahasa pemrograman yang tidak umum" adalah dengan menemukan beberapa blog pengembang (lebih disukai 4-5) dan berlangganan untuk itu.
sumber
Di area apa? Apakah Anda ingin meningkatkan keterampilan pemrograman Anda, keterampilan rekayasa perangkat lunak Anda, keterampilan manajemen proyek Anda, sesuatu yang lain? Anda tidak menentukan dalam pertanyaan Anda.
Anda tidak ketinggalan buku jika Anda belajar memprogram / merekayasa proyek perangkat lunak / mengelola proyek sendiri. Anda juga tidak akan kembali ke sekolah. Kembali ke sekolah untuk gelar yang lebih tinggi, atau setidaknya mengambil beberapa kelas tingkat pascasarjana adalah salah satu opsi yang tidak boleh Anda singkirkan. Daerah apa? Itu tergantung pada apa yang ingin Anda tingkatkan, di mana Anda melihat karier Anda. Ada banyak yang bisa dikatakan untuk mendapatkan gelar MBA, misalnya. Orang-orang yang mahir dalam hal teknis dan bisnis sangat berharga. Banyak sekali. Beberapa mantan rekan kerja saya meraih gelar MBA. Saya jarang melihat mereka karena ketika mereka tidak bekerja mereka pergi ke surga tropis. Atau safari. Atau perjalanan akhir pekan ke pegunungan Alpen. Atau perjalanan ski musim panas ke Amerika Selatan.
Pilihan lain adalah bergabung dengan masyarakat teknis di bidang di mana Anda memiliki keahlian tetapi masih ingin meningkatkan. Yang lain adalah membuat majikan Anda mengirim Anda ke beberapa konferensi boondoggle di mana Anda dapat belajar dan membangun jaringan.
sumber