Program Penduduk Yandex, atau Bagaimana Backender Berpengalaman Dapat Menjadi Insinyur ML

Program Penduduk Yandex, atau Bagaimana Backender Berpengalaman Dapat Menjadi Insinyur ML

Yandex membuka program residensi dalam pembelajaran mesin untuk pengembang backend berpengalaman. Jika Anda sudah banyak menulis dalam C++/Python dan ingin menerapkan pengetahuan ini ke ML, kami akan mengajari Anda cara melakukan penelitian praktis dan menyediakan mentor berpengalaman. Anda akan bekerja pada layanan utama Yandex dan memperoleh keterampilan di berbagai bidang seperti model linier dan peningkatan gradien, sistem rekomendasi, jaringan saraf untuk menganalisis gambar, teks, dan suara. Anda juga akan mempelajari cara mengevaluasi model dengan benar menggunakan metrik offline dan online.

Durasi program ini adalah satu tahun, di mana peserta akan bekerja di kecerdasan mesin dan departemen penelitian Yandex, serta menghadiri kuliah dan seminar. Partisipasi dibayar dan melibatkan kerja penuh waktu: 40 jam per minggu, mulai 1 Juli tahun ini. Aplikasi sekarang terbuka dan akan berlangsung hingga 1 Mei. 

Dan sekarang lebih detail - tentang audiens seperti apa yang kita tunggu, seperti apa proses kerjanya dan, secara umum, bagaimana seorang spesialis back-end dapat beralih berkarir di ML.

Directivity

Banyak perusahaan memiliki Program Residensi, termasuk misalnya Google dan Facebook. Mereka terutama ditujukan untuk spesialis tingkat junior dan menengah yang mencoba mengambil langkah menuju penelitian ML. Program kami ditujukan untuk audiens yang berbeda. Kami mengundang pengembang backend yang telah memperoleh cukup pengalaman dan mengetahui dengan pasti bahwa dalam kompetensinya mereka perlu beralih ke ML, untuk memperoleh keterampilan praktis - dan bukan keterampilan seorang ilmuwan - dalam memecahkan masalah pembelajaran mesin industri. Hal ini tidak berarti bahwa kami tidak mendukung peneliti muda. Kami telah menyelenggarakan program terpisah untuk mereka - premium dinamai Ilya Segalovich, yang juga memungkinkan Anda bekerja di Yandex.

Dimana warga tersebut akan bekerja?

Di Departemen Kecerdasan dan Penelitian Mesin, kami sendiri yang mengembangkan ide proyek. Sumber inspirasi utama adalah literatur ilmiah, artikel, dan tren di komunitas riset. Saya dan rekan-rekan menganalisis apa yang kami baca, mencari cara untuk meningkatkan atau memperluas metode yang diusulkan oleh para ilmuwan. Pada saat yang sama, kita masing-masing memperhitungkan bidang pengetahuan dan minatnya, merumuskan tugas berdasarkan bidang yang dianggap penting. Ide suatu proyek biasanya lahir dari persilangan antara hasil penelitian eksternal dan kompetensi seseorang.

Sistem ini bagus karena sebagian besar memecahkan masalah teknologi layanan Yandex bahkan sebelum masalah itu muncul. Saat suatu layanan menghadapi masalah, perwakilannya mendatangi kami, kemungkinan besar akan mengambil teknologi yang telah kami siapkan, yang tinggal diterapkan dengan benar pada produk. Jika ada sesuatu yang belum siap, setidaknya kita akan segera mengingat di mana kita bisa “mulai menggali” dan di artikel mana mencari solusinya. Seperti kita ketahui, pendekatan ilmiah adalah dengan berdiri di atas bahu para raksasa.

Apa yang harus dilakukan

Di Yandex - dan bahkan khususnya di manajemen kami - semua bidang ML yang relevan sedang dikembangkan. Tujuan kami adalah meningkatkan kualitas berbagai macam produk, dan ini berfungsi sebagai insentif untuk menguji segala sesuatu yang baru. Selain itu, layanan baru muncul secara berkala. Jadi program perkuliahan berisi semua bidang utama pembelajaran mesin (yang telah terbukti) dalam pengembangan industri. Saat menyusun bagian kursus saya, saya menggunakan pengalaman mengajar saya di Sekolah Analisis Data, serta materi dan karya guru SHAD lainnya. Saya tahu rekan-rekan saya juga melakukan hal yang sama.

Pada bulan-bulan pertama, pelatihan sesuai program kursus akan memakan waktu sekitar 30% dari waktu kerja Anda, kemudian sekitar 10%. Namun, penting untuk dipahami bahwa bekerja dengan model ML itu sendiri akan memakan waktu sekitar empat kali lebih sedikit dibandingkan semua proses terkait. Hal ini termasuk mempersiapkan backend, menerima data, menulis pipeline untuk pra-pemrosesan, mengoptimalkan kode, beradaptasi dengan perangkat keras tertentu, dll. Seorang insinyur ML, jika Anda mau, adalah pengembang tumpukan penuh (hanya dengan penekanan lebih besar pada pembelajaran mesin) , mampu memecahkan masalah dari awal sampai akhir. Bahkan dengan model yang sudah jadi, Anda mungkin perlu melakukan sejumlah tindakan lagi: memparalelkan eksekusinya di beberapa mesin, menyiapkan implementasi dalam bentuk pegangan, pustaka, atau komponen layanan itu sendiri.

Pilihan siswa
Jika Anda mendapat kesan bahwa lebih baik menjadi ML engineer dengan terlebih dahulu bekerja sebagai backend developer, ini tidak benar. Mendaftar di ShAD yang sama tanpa pengalaman nyata dalam mengembangkan layanan, belajar dan menjadi sangat diminati di pasar adalah pilihan yang sangat baik. Banyak pakar Yandex mendapatkan posisi mereka saat ini dengan cara ini. Jika ada perusahaan yang siap menawarkan Anda pekerjaan di bidang ML segera setelah lulus, Anda mungkin harus menerima tawaran tersebut juga. Cobalah untuk masuk ke tim yang baik dengan mentor yang berpengalaman dan bersiaplah untuk belajar banyak.

Apa yang biasanya menghalangi Anda melakukan ML?

Jika seorang backender bercita-cita menjadi seorang insinyur ML, ia dapat memilih dari dua bidang pengembangan - tanpa memperhitungkan program residensi.

Pertama, belajar sebagai bagian dari beberapa kursus pendidikan. Pelajaran Coursera akan membawa Anda lebih dekat untuk memahami teknik dasar, tetapi untuk membenamkan diri Anda dalam profesi ini sampai batas tertentu, Anda perlu mencurahkan lebih banyak waktu untuk itu. Misalnya lulusan ShAD. Selama bertahun-tahun, ShAD memiliki jumlah kursus langsung tentang pembelajaran mesin yang berbeda - rata-rata sekitar delapan. Masing-masing sangat penting dan bermanfaat, termasuk menurut pendapat para lulusan. 

Kedua, Anda dapat mengambil bagian dalam proyek pertempuran di mana Anda perlu mengimplementasikan satu atau beberapa algoritma ML. Namun, hanya ada sedikit proyek seperti itu di pasar pengembangan TI: pembelajaran mesin tidak digunakan di sebagian besar tugas. Bahkan di bank yang secara aktif menjajaki peluang terkait ML, hanya sedikit yang terlibat dalam analisis data. Jika Anda tidak dapat bergabung dengan salah satu tim ini, satu-satunya pilihan Anda adalah memulai proyek Anda sendiri (yang kemungkinan besar Anda akan menentukan tenggat waktu Anda sendiri, dan ini tidak ada hubungannya dengan tugas produksi tempur), atau mulai berkompetisi di Kaggle.

Memang benar, bekerja samalah dengan anggota komunitas lain dan cobalah sendiri dalam kompetisi relatif mudah - terutama jika Anda mendukung keterampilan Anda dengan pelatihan dan kursus yang disebutkan di Coursera. Setiap kompetisi memiliki tenggat waktu - ini akan menjadi insentif bagi Anda dan mempersiapkan Anda untuk sistem serupa di perusahaan IT. Ini adalah cara yang baik - namun, juga sedikit terpisah dari proses nyata. Di Kaggle, Anda diberikan data yang telah diproses sebelumnya, meskipun tidak selalu sempurna; jangan menawarkan untuk memikirkan kontribusi terhadap produk; dan yang paling penting, mereka tidak memerlukan solusi yang sesuai untuk produksi. Algoritme Anda mungkin akan berfungsi dan sangat akurat, tetapi model dan kode Anda akan seperti Frankenstein yang dirangkai dari bagian yang berbeda - dalam proyek produksi, seluruh struktur akan bekerja terlalu lambat, akan sulit untuk diperbarui dan diperluas (misalnya, algoritma bahasa dan suara akan selalu ditulis ulang sebagian seiring perkembangan bahasa). Perusahaan tertarik pada kenyataan bahwa pekerjaan yang tercantum dapat dilakukan tidak hanya oleh Anda sendiri (jelas bahwa Anda, sebagai pembuat solusi, dapat melakukan ini), tetapi juga oleh kolega Anda. Perbedaan antara program olahraga dan industri dibahas много, dan Kaggle mendidik para “atlet” dengan tepat - meskipun ia melakukannya dengan sangat baik, memungkinkan mereka memperoleh pengalaman.

Saya menjelaskan dua kemungkinan jalur pengembangan - pelatihan melalui program pendidikan dan pelatihan “dalam pertempuran”, misalnya di Kaggle. Program residensi merupakan kombinasi dari kedua metode ini. Ceramah dan seminar di tingkat ShAD, serta proyek yang benar-benar agresif, menanti Anda.

Sumber: www.habr.com

Tambah komentar