Bagaimana cara mengubah spesialisasi Anda menjadi seorang programmer?

Apakah Anda bosan dengan pekerjaan Anda? Tidak ada prospek? Mungkin baru memulai perjalanan Anda?

Dalam artikel ini, kami akan mempertimbangkan ke mana Anda harus pergi, berapa banyak waktu, tenaga, dan uang yang Anda perlukan dari awal untuk mencapai level ketika mereka akan mulai mengirimi Anda undangan untuk bekerja di luar negeri dengan kondisi yang sangat lezat.







Halo, nama saya Alexander Zelenin. Saya seorang programmer dengan pengalaman lebih dari 15 tahun. Selama waktu ini, saya berhasil bekerja di posisi mulai dari pengembang web hingga CTO, di perusahaan di berbagai tingkatan (mulai dari 5 orang hingga 2000+, perusahaan pemula, perusahaan), di berbagai negara dan kota. Saya juga mewawancarai lebih dari seribu orang sepanjang waktu, mengajar kursus pendidikan, membimbing, dan sebagainya.



*Artikel ini semata-mata pendapat saya. Itu tidak berpura-pura menjadi lengkap, benar mutlak, tidak ada kesalahan, ketidakakuratan. Gunakan akal sehat dalam setiap keputusan dan secara pribadi bertanggung jawab untuk itu.



- Apakah diperlukan pendidikan tinggi yang relevan?



Tidak. Itu tidak secara langsung mempengaruhi pekerjaan yang tersedia, upah, atau peluang. Diploma sedikit membantu dengan proses visa, tetapi tidak pernah menjadi penghenti. Sepanjang karir saya, saya diminta untuk diploma hanya ketika semuanya sudah ditandatangani dan perlu mengatur tempat tinggal di negara ini. Majikan selalu menemukan cara untuk menyelesaikan masalah ini.



- Namun, apakah lebih mudah dengan pendidikan tinggi?



Ya, karena banyak topik disentuh dengan satu atau lain cara selama pelatihan. Sekalipun semuanya dilupakan, maka akan lebih cepat mengembalikan ilmu. Lalu jika itu - bagus, tidak - yah, ara dengannya.



- Saya seorang introvert. Programmer adalah opsi paling keren untuk introvert, bukan?



Bagaimana mengatakan. Sampai saat tertentu, mungkin ya, tetapi setelah beberapa tahun, keterampilan komunikasi akan diperlukan untuk pertumbuhan. Anda dapat mengatasi masalah ini sesuai kebutuhan.



- Sulit belajar?



Ya sangat Tentu saja, ini semua individu, dan bagi seseorang itu sangat mudah (bagi saya pribadi, semuanya tampak sangat mudah, tetapi jalannya panjang), tetapi, pada dasarnya, semua orang yang dilatih kembali mengatakan bahwa itu sangat sulit.



Masalah utama adalah bahwa Anda mulai di bidang baru untuk diri sendiri (terutama ketika Anda adalah seorang ahli di bidang lain) dari bagian paling bawah. Perasaan terus-menerus bahwa Anda bodoh, Anda tidak cukup tahu, Anda memutuskan perlahan, dan sebagainya. Ini adalah tantangan serius. Jauh lebih serius daripada memenuhi mata.



- Apakah itu layak sama sekali?



Itu tergantung pada visi Anda tentang dunia, kondisi saat ini dan banyak faktor lain yang khusus untuk Anda.



Seorang profesional tingkat tinggi dapat menantikan hal-hal berikut (pada saat penulisan ini):



  • Untuk Federasi Rusia: gaji di wilayah 200.000 rubel putih, asuransi kesehatan sukarela (untuk keluarga), cookie, jadwal gratis, pembayaran untuk pendidikan / taman kanak-kanak untuk anak-anak, perjalanan ke konferensi khusus, stabilitas tinggi, tugas menarik, paket lengkap untuk pindah (apartemen selama sebulan, tiket, pengangkutan barang, bantuan untuk menemukan akomodasi, dll.)
  • Untuk Eropa: gajinya sekitar 5.000 euro, dan pada prinsipnya segala sesuatu yang lebih tinggi. Paket relokasi sering juga mencakup pembayaran satu kali di wilayah € 7.000. Seringkali, pensiun lokal mulai menetes dan ada kesempatan untuk mendapatkan izin tinggal / kewarganegaraan nanti
  • AS / Kanada / Swiss / Timur Tengah: gaji di wilayah $ 10.000, dan semua barang lebih tinggi


- Apa yang dimaksud dengan "spesialis tingkat tinggi"?



Merupakan kebiasaan untuk secara konvensional membagi spesialis menjadi 3 tingkatan. Persyaratan seringkali sangat berbeda, tetapi secara umum adalah sebagai berikut:



  1. Junior - dapat secara efektif menyelesaikan masalah, tetapi bantuan dari kolega yang lebih berpengalaman diperlukan ketika dihadapkan dengan ketidakpastian (tugas tidak jelas, tidak jelas bagaimana menyelesaikannya, tidak jelas siapa yang harus ditanyakan, dan sebagainya)
  2. Middle adalah unit independen yang dapat memecahkan masalah dengan sangat baik, dan mengumpulkan semua informasi itu sendiri dari sumber yang diperlukan
  3. Senior adalah seorang ahli yang tahu tidak hanya bagian perangkat lunak dengan baik, tetapi juga memahami bisnis di mana ia bekerja dan dapat menawarkan solusi pada tingkat yang sama sekali berbeda


- Oke, dan berapa lama untuk belajar untuk setiap level?



Tahap pertama mungkin yang paling sulit secara psikologis. Di Junior, Anda membutuhkan sekitar 1500 jam waktu bersih (ini setengah tahun, 8 jam setiap hari).



Setelah itu Anda akan bekerja sebagai junior selama sekitar 1,5 tahun.



Setelah itu, usia tengah masih dua tahun.



Jika Anda belum mengubah bidang subjek, maka selamat datang di manula (total 4-5 tahun).



- Tunggu, tunggu ... Saya sudah melihat kursus, ada 3 kali seminggu selama 2 jam dan dalam dua bulan mereka menjanjikan gaji 100.000 sebulan!



Nah, jika mereka berjanji, maka akan jadi (tidak).



Saya telah mengajar beberapa kursus ini hanya untuk kepentingan pribadi. Bahkan setelah meningkatkan beban kerja pada siswa dengan 2,5 kali (masing-masing 5 jam), pada akhir bulan kedua, “tinjauan umum” teknologi yang bagus diperoleh.



Nyaris tidak ada daya saing setelah kursus semacam itu. Ini tidak diperhitungkan sebagai "pengalaman". Baik itu Anda dapat menulis setidaknya 5 tahun pengalaman dalam resume Anda, tetapi ini tidak akan memberi Anda pengalaman.



- Oke, oke, apakah ada manfaat dari kursus berbayar?



Secara umum, ada, jika Anda tidak duduk dan menunggu cuaca di laut, tetapi secara aktif menggunakan kesempatan untuk berkomunikasi dengan seorang mentor dan asalkan selain kursus ini (yang seperti 6 jam seminggu), Anda juga menginvestasikan 34 jam Anda di atas.



- Kursus apa yang akan Anda rekomendasikan?



Gratis. Aku serius. Nilai utama dari kursus adalah komunikasi dengan seorang mentor. Di sinilah manfaatnya berakhir. Masalah dengan banyak platform seperti itu adalah: ada banyak peserta pada mereka dan perhatian mentor tersebar, mentor tidak berkualitas.



Seringkali platform menawarkan beberapa uang belaka untuk implementasinya, yang hampir segera mengecualikan penampilan spesialis yang baik yang siap untuk memimpin mereka (kecuali untuk yang ideologis, yang sedikit dan Anda akan menemukan buah ara).



- Eh, jadi bagaimana cara belajarnya?



  1. Anda pasti perlu menemukan mentor pribadi.

    Tanpa ini, seluruh proses akan diperlambat, atau Anda akan pergi, kehilangan banyak waktu. Bagaimana cara menemukan seorang mentor? Cara terbaik adalah di antara teman dan kenalan yang sudah menjadi programmer atau belajar (setidaknya enam bulan). Biasanya, programmer tidak keberatan berbagi pengetahuan dan bantuan.

    — . , . , . ( ) , .
  2. ,

    ,
  3. Buat rencana dan tentukan tenggat waktu. Seorang

    mentor akan membantu Anda membuat rencana. Itu tidak nyata pada Anda sendiri, karena Anda tidak tahu apa yang tidak Anda ketahui


- Mentor, mentor ... apa, sama sekali tidak ada tanpa dia?



Anda bisa melakukannya tanpa itu. Tetapi kemudian Anda harus membaca, melakukan lebih banyak, mencoba menavigasi dalam segala hal dan terus memeriksa ulang diri Anda.



Saya memiliki kesempatan untuk berkomunikasi dengan orang-orang yang memiliki pengalaman 10+ tahun, dan dalam hal pengetahuan mereka bahkan tidak mencapai Juns. Bagaimana ini keluar adalah pertanyaan yang sulit. Mengabadikan momen stagnasi tidaklah mudah.

Anda dapat memantau pasar, melihat teknologi apa yang mereka cari, melihat berbagai solusi segar, dan sebagainya.



Dan kemudian menemukan seorang mentor. Bahkan jika Anda sudah menjadi senior, itu selalu keren untuk mendapatkan saran dari seorang profesional yang lebih berpengalaman.



- Sebuah artikel, seperti, tentang cara "mengubah" spesialisasi, dan Anda mengatakan bahwa Anda perlu setengah tahun selama 8 jam. Bagaimana menggabungkannya dengan pekerjaan? Mungkin 4 jam setahun?



Tertangkap. Itu pertanyaan yang sangat sulit. Menurut pengalaman sebelumnya, mengurangi jumlah jam meningkatkan durasi pelatihan secara tidak proporsional (mis. 4 jam tidak akan menjadi tahun yang diharapkan, tetapi, katakanlah, 1,5-2). Juga, tergantung pada pekerjaan saat ini, asimilasi bahan kompleks mungkin tidak pergi dan hanya itu, yaitu, mungkin tidak bekerja untuk menggabungkan. Itu semua tergantung, semuanya individual.

Salah satu caranya adalah dengan mengumpulkan dana dan mencurahkan enam bulan untuk transisi semacam itu. Ini bisa sangat sulit ketika sudah ada keluarga atau persyaratan lain dalam bentuk hipotek dan sejenisnya. Dan ternyata juga sulit menemukan pekerjaan dengan cepat atau keadaan tidak terduga seperti coronavirus.



Cara lain adalah ... yah, cari tahu sepenuhnya. Apa yang kamu inginkan? :-D



- Teman saya menyelesaikan kursus dalam dua bulan dan mulai menerima $ 5000 per bulan segera setelah itu



Beberapa pilihan: apakah dia berbohong, atau dia jenius (dalam hal ini, tentu saja tidak ada hubungannya dengan itu, secara kebetulan), atau dia beruntung (seorang kenalan disewa secara licik, dll.), Atau ini adalah sesuatu yang sangat khusus dan dia menemukan celah. ... Biarkan dia memberi tahu Anda caranya. Itu juga terjadi ketika startup tidak tahu di mana harus menghabiskan uang dari seorang investor dan jelas membayar lebih. Di perusahaan pertama dengan perkembangan yang memadai, gambarannya akan sangat berbeda.



- Di mana mencari kerja?



Di ibukota atau, setidaknya, jutaan kota. Jika Anda tidak berada di Moskow, Kiev, Minsk atau di mana pun Anda berada - bersiaplah untuk pindah. Pasar lokal terlalu kecil dan tidak dapat memberikan lowongan yang cukup (terutama untuk pemula), peluang untuk pertumbuhan kecil, dan sebagainya. Secara umum, menghapus seluruh artikel dan hanya menyisakan rekomendasi ini akan menjadi salah satu keputusan karir terbaik (!, Tapi mungkin itu bukan yang terbaik untuk faktor Anda yang lain).



Ada pengecualian ketika beberapa perusahaan besar memiliki kantor pengembangan di kota-kota kecil. Jika Anda membidik perusahaan semacam itu, atau ada satu di kota Anda, disarankan untuk membandingkan semua opsi satu sama lain sebelumnya.



- Apakah mungkin mendapatkan pekerjaan segera?



Mungkin saja, akan lebih sulit, pertama-tama, untuk Anda. Bukan karena pekerjaan itu sendiri berbeda, tetapi karena jawaban atas pertanyaan akan ditunda, tidak mungkin bagi seseorang untuk datang dan menunjukkan dengan jari di mana apa dan mengapa. Ya, ada banyak alat sekarang (TV, obrolan, Skype, papan berbeda), tetapi dalam hal kenyamanan dan kecepatan komunikasi, itu berbeda. Jika Anda membidik kejauhan, maka Anda harus siap untuk mencari x2 dari norma untuk setidaknya mengikuti kecepatan yang memadai.



- Saya 45. Apakah mereka akan membawa saya Juniur tanpa pengalaman hidup?



Ya mereka akan. Usia bahkan akan menjadi nilai tambah bagi Anda, karena banyak pengalaman dari kehidupan ditransfer dengan baik ke teknologi. Dengan probabilitas tinggi, Anda akan melalui jalur ke seigneur jauh lebih cepat, tepatnya berkat pengalaman sehari-hari (yang mulai memainkan peran lebih besar dari tahap "menengah" daripada keterampilan teknis). Dengan relokasi ke beberapa negara mungkin akan lebih sulit jika usianya besar dan tidak ada menara, tetapi ini semua bisa dipecahkan.



- Bahasa apa yang harus dipelajari?



Tergantung pada apa yang ingin Anda lakukan. Jika Anda tidak ingin bermain lotre dan melewati jalan yang aman, Jawa adalah pilihan Anda. Bagaimanapun, itu akan memungkinkan Anda untuk pergi jauh-jauh tanpa perubahan teknologi yang kuat dan dengan bayaran yang sangat baik.



Jika Anda memiliki teman yang berjanji untuk mengatur Anda sebagai pengembang PHP dalam enam bulan, ini mungkin juga kandidat yang baik. Karena bahasanya tidak penting.



- Saya pikir Anda bercanda tentang bahasa Inggris. Perlu mengajarinya?



Tidak di awal. Terlepas dari kenyataan bahwa banyak dokumentasi, informasi, dan artikel dalam bahasa Inggris, semua ini dapat diserap melalui penerjemah. Anda akan membutuhkan bahasa Inggris saat Anda memutuskan untuk pindah. Waktu yang tepat untuk mulai belajar mungkin beberapa bulan setelah diterima sebagai Junior. Dan ya, Anda pasti perlu berkomunikasi dengan penutur asli - bersiaplah untuk berinvestasi dalam hal ini juga.



Tentang penerjemah, contoh kecil: baru-baru ini saya harus berurusan dengan perpustakaan yang dokumentasi sebenarnya hanya ada dalam bahasa Mandarin (MyBatis-Plus) - Terjemahan Google membantu saya mencari tahu apa yang terjadi tanpa banyak petualangan.



- Tunggu, katamu bahasa tidak penting ... apa?



Ini tidak sepenuhnya benar. Itu penting, tentu saja, tetapi setelah tahap tertentu (senior) Anda tidak akan peduli apa bahasa yang Anda tulis. Konsep di mana program ini dibangun ditransfer dari bahasa ke bahasa dan itu adalah studi mereka yang membutuhkan lebih banyak waktu.



Secara relatif, dapat dibayangkan bahwa seorang penulis profesional telah memutuskan untuk menulis sebuah cerita dalam bahasa lain dari bahasa miliknya - ceritanya tidak akan begitu ekspresif dan indah, tetapi ceritanya sendiri akan keren, karena dia sudah tahu cara menulis cerita yang keren. Bahasa hanyalah alat komunikasi.



- Oke, bisakah Anda memberi saya rencana untuk apa yang harus saya lakukan?



  1. Putuskan apa yang benar-benar Anda butuhkan. Apakah itu layak?
  2. Putuskan apa yang ingin Anda lakukan. Idealnya, buat daftar perusahaan tempat Anda ingin bekerja. Idealnya, pilih di mana Anda ingin berada dalam enam bulan, dua dan lima.
  3. , . , .
  4. , ( 2 3)
  5. , . . . . .
  6. . 1 , easy .
  7. . , . - - , .
  8. .


Terlepas dari bahasanya, daftar topik yang saya rekomendasikan untuk dimasukkan ke dalam rencana: kontrol versi (git, github), struktur dan algoritma (tahu semua yang umum, O besar, tahu bahwa "ada sesuatu seperti itu" dan dapat menemukan dengan cepat), IDE ( mengapa, cara mengaturnya), debugging dan profil (bagaimana menemukan kesalahan, breakpoint, dll), pengujian (menulis setidaknya tes paling sederhana dan memahami apa yang akan dimasukkan ke dalamnya), basis data (relasional, jaringan, berorientasi pada dokumen), mendokumentasikan (bagaimana tulis, mengapa), perencanaan dan penentuan prioritas (berapa lama, apa yang harus dilakukan dan kapan), pelajari Style Gudie sesuai dengan bahasa Anda, linux (pemahaman dasar tentang apa yang ada di sana, mengapa dan di mana, kemampuan untuk menjalankan kode Anda di sana), manajer paket (bagaimana menggunakan, mengapa bagaimana mempertahankan), versi semantik (mengapa, bagaimana mengikuti), kerangka kerja (dalam bahasa yang diinginkan,setidaknya untuk beberapa kenalan), alat untuk perakitan dan otomatisasi, kriptografi (dasar apa yang ada, bukan bagaimana melakukannya), otorisasi dan otentikasi (apa apa dan apa yang ada untuk ini).



Seberapa dalam untuk menggali ke dalam setiap topik tergantung pada kondisinya, apa yang Anda putuskan untuk pelajari, dan sebagainya. Untuk beberapa topik, 15 menit sudah cukup, untuk beberapa Anda dapat mengalokasikan satu atau dua bulan dari setengah tahun.



- Saya melihat bahwa perusahaan yang menarik bagi saya melatih dari awal dan mempekerjakan. Apa yang menangkap?



Dengan gaji rendah untuk satu atau dua tahun pertama. Tetapi secara umum, ini adalah pilihan yang cukup keren, karena dengan motivasi yang tepat, ini adalah pekerjaan yang terjamin, pengalaman langsung dan mentor yang termotivasi yang akan mengajarkan Anda apa yang dibutuhkan perusahaan. Secara teori, ini dapat mengurangi variasi setelah atau memperpanjang periode pertumbuhan, tetapi ini sangat tergantung pada perusahaan dan penawaran tertentu. Jika sebuah perusahaan dari daftar minat Anda memiliki magang yang sama dari awal, ada baiknya melihat lebih dekat pada mereka.



- Timah, semuanya rumit.



Iya dan tidak. Bagian tersulit adalah di awal. Selanjutnya, banyak konsep diingat dan tidak perlu diingat. Banyak hal google dalam 10 detik, asalkan Anda tahu apa yang harus google.



All Articles