
Musim panas lalu, kami meluncurkan kolom "10 Pertanyaan untuk Programmer", dan untuk 10 masalah itu cukup menyenangkan. Orang-orang baik yang tidak selalu memiliki akses ke audiens yang besar dapat berbicara. Seseorang menemukan pengertian, seseorang mendapat kritik.
Sebelum rilis ke-11, kami mengambil jeda singkat, yang terlalu lama. Kami mengoreksi, kami akan kembali. Sekarang Anda memiliki kesempatan untuk menceritakan tentang diri Anda dengan menarik. Formatnya hampir sama, kami hanya memperbarui sedikit pertanyaan, dan kami akan melakukan ini di setiap edisi berikutnya.
Jika Anda memiliki sesuatu untuk diceritakan tentang diri Anda atau pertanyaan yang kuat telah matang di mana seluruh komunitas akan mematahkan kepala Anda - menulis kepada saya di PM atau
baragol .
Dan dalam edisi pertama Dmitry Yavorsky (
ekabandit ) dari Yekaterinburg. Dia mengatakan bagaimana dia menyelamatkan Kereta Api Rusia dari virus WannaCry, menolak tawaran Sberbank dan, seolah-olah, secara legislatif mempengaruhi industri.
1. Ceritakan kisah kerja bahwa Anda akan dengan bangga menceritakan kembali kepada cucu Anda.
Selama sisa hidup saya, saya akan ingat bagaimana untuk pertama kalinya saya tetap bertindak sebagai kepala di Kereta Api Rusia - untuk mengelola 50 karyawan dari berbagai usia - tepat pada saat serangan virus Wannacry.
Itu Jumat malam. Saya sudah di rumah, saya baru saja membuka bir, ketika spam mulai di media tentang serangan virus di seluruh dunia. Kemudian informasi masuk ke dialog perusahaan. Saya segera menghabiskan botol dan pergi bekerja. Kami terputus dari Internet, tidak ada infeksi yang direkam. Setelah menghabiskan dua jam lagi di kantor, saya memutuskan bahwa tidak ada hal serius yang akan terjadi dan pergi tidur lagi.
Pukul tujuh pagi, kepala departemen keamanan sudah memberi saya daftar besar server di mana Anda perlu memperbarui Windows. Setelah 3-4 jam, Microsoft merilis pembaruan pada windows 2003, yang tidak didukung selama beberapa tahun. Daftar server yang perlu diperbarui telah meningkat secara signifikan, dan saya harus memanggil semua orang bebas. Pada saat itu, kami membatalkan upaya untuk menghidupkan kembali WSUS, yang karena beberapa alasan tidak berfungsi, dan mulai memperbarui server secara manual.
Kami memiliki akhir pekan yang menyenangkan sepanjang akhir pekan, dengan cepat dikerahkan dari awal 2-3 server yang menjadi biru setelah menginstal pembaruan, menonton hoki di proyektor (omong-omong, Rusia mengalahkan Slovakia 6-0 akhir pekan ini), menghapus lusinan server yang terlupakan.
Akibatnya - acara hebat untuk membangun tim, dan lebih dari satu infeksi server di pusat data Yekaterinburg.
Saya tahu dari sekolah bahwa saya akan bekerja di bidang TI - saya ingin mengikuti jejak orang tua saya. Terlepas dari kenyataan bahwa saya belajar di kelas sastra, kami memiliki guru yang kuat dalam ilmu komputer. Partisipasi dalam berbagai olimpiade memungkinkan untuk melewati kelas secara berkala. Di sana kami diajari menulis dalam bahasa Pascal. Saya ingat ayah saya memberi tahu saya tentang operator GOTO, untuk penggunaan yang saya terima secara teratur dalam pelajaran.
Guru pada waktu itu memiliki koneksi di Yandex dan menawarkan untuk magang atau belajar. Tetapi dengan maksimalisme muda saya, saya mengatakan kepadanya: "Saya tidak suka Yandex, saya menggunakan Google." Kembali dan tampar dirimu.
Setelah sekolah, saya memasuki universitas kereta api untuk tujuan itu (dengan pengembangan selanjutnya di Kereta Api Rusia) dalam spesialisasi "Sistem Informasi dan Teknologi." Saya berpikir bahwa saya akan terus berkembang dalam pemrograman, tetapi selama empat tahun (dan dua tahun setelah program magister), hanya ada satu semester pemrograman dalam bahasa assembly di daun dan satu semester Delphi.
Dari tahun ke-3 saya mulai bekerja di Kereta Api Rusia, di mana pada awalnya saya adalah seorang enekeyschik. Banyak waktu kerja dihabiskan untuk menyiapkan makalah dan bermain CS atau Warcraft. Setelah saya bekerja selama beberapa waktu, mereka mulai lebih mempercayai saya, dan kemudian saya berkenalan dengan dunia administrasi yang besar. Sebagian besar dari semua itu saya ketagihan oleh IBM WebSphere, kemudian saya bahkan bergabung dengan kelompok ahli di Russian Railways untuk produk ini.
2. Kasus Juni, yang masih memalukan
Saya ingat bahwa pada awal karier administrator, saya menggunakan server untuk beberapa kebutuhan saya dan memutuskan bahwa itu perlu memperbarui konfigurasi Apache Tomcat dari server yang produktif.
Setelah terhubung ke kedua server, saya melakukan yang sebaliknya - Saya memperbarui Tomcat pada server yang produktif. Setelah beberapa menit, ketika insiden itu datang, saya beralih ke cadangan, dan pada server yang produktif saya mengatur semuanya lagi. Saya berhasil melakukan semuanya dalam waktu sekitar sepuluh menit, menuduh sistem pemantauan positif palsu.
Penipuan saya terungkap enam bulan kemudian, ketika pengguna ditransfer ke server ini, dan tidak ada yang berhasil untuk mereka, karena saya lupa memperbaiki konfigurasi.
Sebagai pengembang, tidak ada kasus seperti itu. Meskipun dikabarkan bahwa server pemantauan yang saya tulis secara berkala menempatkan salah satu sistem penting Kereta Api Rusia karena banyaknya permintaan, tapi saya tidak percaya.
3. Yang paling menyakitkan dari masalah Anda saat ini, yang belum terselesaikan
Sekarang, sangat menyakitkan bagi saya untuk memahami Rx.js dengan Observable dan pipe nya. Bagi saya, ini adalah semacam warisan dari Angular. Di konferensi dan tutorial mereka mengatakan bahwa untuk memahami Rx.js Anda perlu mengubah pola pikir Anda, untuk memahami beberapa kebenaran tersembunyi. Tetapi sementara saya melakukan copy-paste dari bagian lain dari kode dan menggunakan redux-saga di proyek-proyek rumah.
Sekarang saya memiliki percobaan dengan Kereta Api Rusia. Saya belajar sesuai target dan pergi ke kursus, dan ini menyediakan pembayaran, jika Anda tidak bekerja beberapa tahun setelah belajar. Kereta Api Rusia tidak memberi saya rencana cicilan, yang menurut saya sesuai dengan dokumen peraturan mereka. Sangat disayangkan bahwa beberapa pemimpin individu tidak tahu bagaimana berpisah dengan karyawan. Ini adalah pendapat tentang seluruh perusahaan, meskipun selama bekerja saya berhasil mengenal orang-orang dari kota yang berbeda dan profesi yang berbeda, dan orang-orang di sana sangat keren. Secara umum, Kereta Api Rusia memiliki kebijakan kepemudaan yang sangat maju dan unit individu menginvestasikan banyak energi dalam pengembangan soft skill bagi karyawan.
4. Dengan prinsip apa Anda memilih pekerjaan
Saat memilih pekerjaan, saya hanya mempertimbangkan opsi pada tumpukan saya. Sekarang Bereaksi, Redux, dan dalam waktu dekat saya tidak berencana turun dari mereka.
Faktor penting kedua adalah tim. Saya lebih suka bekerja dengan rekan-rekan di atas saya dalam keterampilan yang harus banyak belajar. Baru-baru ini, saya mulai memperhatikan ukuran dan profil perusahaan. Jika besar, dan IT adalah profil utama, Anda tidak harus menjadi administrator sistem sebagai programmer.
Yah, saya pikir itu layak disebut - meskipun ini sudah menjadi standar bagi programmer - awal mengambang hari kerja, kemampuan untuk bekerja dari rumah atau mengambil cuti kapan saja. Sisanya adalah masalah uang.
5. Mengapa programmer yang baik menjadi sangat sulit ditemukan dalam beberapa tahun terakhir?
(Pertanyaan dari Ivan Shmakov ishmakov dari Voximplant)Saya melihat beberapa alasan:
- Sekarang konsep programmer yang baik dialihkan ke media.
- Pendidikan yang ada tidak memberi Anda kesempatan untuk mendapatkan posisi junior sekalipun. Selain itu, kesenjangan pengetahuan meningkat setiap tahun karena usangnya kurikulum dan perkembangan pesat bidang ini.
- Banyak orang menjadi pemrogram karena gaji yang relatif tinggi dan hanya sensasi besar dari industri.
- Sekali lagi, karena kurangnya programmer, sekarang bahkan di perusahaan-perusahaan top Rusia HR menggunakan perburuan aktif. Dan jika spesialisnya benar-benar baik, maka selain milik Anda, ia mungkin sudah memiliki 2-3 penawaran, dan ia bahkan mungkin tidak mencari pekerjaan.
6. Bayangkan bahwa kelulusan SMP, Menengah, Senior tidak ada. Skala apa yang harus diperkenalkan untuk menunjuk kompetensi pengembang? Di mana Anda menempatkan diri Anda di dalamnya?
(Pertanyaan dari Lisa Schvez Schvepsss dari Dodo Pizza)Apakah itu ada Tidak ada daftar keterampilan yang diterima secara umum untuk setiap kelas. Suka atau tidak suka, semuanya berganti nama untuk gradasi ini. Misalnya, jika Anda melihatnya dari sudut pandang seorang manajer, maka levelnya adalah sebagai berikut:
- Itu tidak akan menyelesaikan masalah besar sendiri.
- Ini akan menyelesaikan masalah sendiri, tetapi kualitas kode dan kecepatan menyisakan banyak yang diinginkan.
- Ini akan menyelesaikan masalah dengan baik dan cepat dengan kualitas kode yang dapat diterima.
- Antara lain, ia akan dapat mendiskusikan fitur tersebut dengan pelanggan (memompa soft skill + memahami proses bisnis).
Menilai diri Anda tidak terlihat cukup objektif, tetapi tetap menempatkan diri Anda pada tingkat ketiga.
Wawancara saya yang paling berkesan adalah di Sberbank di Middle Frontend pengembang (yaitu, Sberbank, bukan Sbertech). Ketika saya diundang untuk wawancara, saya sudah mendapat tawaran dari perusahaan lain, tetapi saya tetap memutuskan untuk pergi - mungkin lebih untuk pengalaman.
Semuanya berlangsung dalam beberapa tahap di sana. Awalnya saya menjawab pertanyaan tentang JS, setelah tiga hari saya berbicara dengan kepala unit. Kami berbicara dengannya tentang foto-foto saya di VK dari Sheregesh dan resor ski mana yang lebih baik untuk dikunjungi, tentang pengalaman saya berpartisipasi dalam proyek-proyek sebagai pemimpin, diploma, sertifikat.
Beberapa hari kemudian mereka mengirimi saya tawaran yang lebih rendah dari yang lain. Saya telah menolak. Kemudian pertemuan lain dengan pemimpin terjadi, dan saya disejajarkan dengan penawaran untuk jumlah rata-rata untuk tahun itu, dengan memperhitungkan premi triwulanan dan tahunan. Dalam percakapan telepon terakhir, saya diundang untuk berbicara dengan karyawan Sberbank, yang meninggalkan perusahaan tempat saya menerima tawaran itu. Mereka seharusnya menjelaskan kepada saya mengapa tidak layak pergi ke sana. Saya mengerti bahwa tidak ada cukup spesialis di pasar, tetapi ini adalah pintu belakang.
Setelah wawancara ini, saya menyimpulkan bahwa perusahaan besar lebih cenderung melihat ijazah, pengetahuan, dan sertifikat daripada keterampilan nyata.
7. Fitur apa yang harus ada dalam bahasa pemrograman / kerangka kerja / alat lain yang ideal dan apa yang seharusnya tidak ada?
"Fitur" ideal untuk bahasa ini adalah dokumentasi yang baik dari pencipta. Ambil Javascript sebagai contoh. Ada spesifikasi ECMAScript yang sangat terperinci, tentu saja cocok untuk memahami perilaku abnormal setiap bagian dari kode / fungsi, tetapi saya pikir itu tidak layak untuk belajar bahasa darinya.
Setiap bahasa baik selama itu memecahkan masalah Anda. Dengan munculnya bahasa yang ideal, pengembangan akan berhenti dan seseorang (mungkin perusahaan) akan muncul yang akan mengelola industri. Dan untuk pengembangan lebih lanjut, kompetisi penting.
8. Jika Anda memiliki kesempatan untuk mempengaruhi industri secara legislatif - apa yang akan Anda lakukan?
Saya akan memperkenalkan pajak untuk penciptaan kerangka kerja front-end. Lelucon.
Di Rusia, sebagai permulaan, saya akan meletakkan kode IP negara di opensource. Saya pikir komunitas akan memecahkan banyak masalah aksesibilitas dan bug dalam sistem pemerintah yang harus kita gunakan.
Saya akan membuka, di suatu tempat di selatan Rusia, zona khusus untuk pengembangan perusahaan IT dengan pengurangan pajak. Itu bisa saja seperti Lembah Silikon. Saya pikir ini adalah langkah yang baik dalam hal keterbukaan komunitas Rusia kepada dunia, retensi spesialis yang masuk akal di negara kita, dan sekali tren seperti itu telah berbaris, itu akan dilakukan substitusi impor.
9. Jika Anda memiliki sumber daya yang tidak terbatas (waktu, uang, kekuasaan, orang-orang), apa yang akan menjadi proyek pribadi Anda?
Saya akan mengembangkan kota yang cerdas. Saya akan mulai dengan Yekaterinburg, dengan masalah yang saya lihat dalam kehidupan sehari-hari sendiri. Misalnya jalan. Sekarang saya menggunakan mobil untuk bekerja 20 menit, kembali 60 menit, atau bahkan lebih. Saya akan menerapkan kecerdasan buatan, yang, tergantung pada lalu lintas dan pejalan kaki, mengatur lampu lalu lintas di seluruh kota.
10. Apa yang Anda katakan kepada AI yang telah menjadi lebih pintar dari Anda?
Saya akan memaksakan diri untuk mengajar. Atau mengundangnya untuk merancang kehidupan kota eksperimental di bawah kendali AI dan memberi tahu apa yang akan terjadi.