
Sekitar satu setengah tahun yang lalu, saya mulai berpartisipasi dalam hackathons. Selama periode ini, saya berhasil mengambil bagian dalam lebih dari 20 acara dari berbagai skala dan tema di Moskow, Helsinki, Berlin, Munich, Amsterdam, Zurich dan Paris. Dalam semua peristiwa, saya terlibat dalam analisis data dalam satu atau lain bentuk. Saya suka datang ke kota-kota baru untuk diri saya sendiri, membuat kontak baru, datang dengan ide-ide segar, mewujudkan ide-ide lama dalam waktu singkat dan adrenalin selama pidato dan pengumuman hasil.
Posting ini adalah yang pertama dari tiga posting tentang subjek hackathon, di dalamnya saya akan memberi tahu Anda apa itu hackathon, mengapa Anda harus mulai berpartisipasi dalam hackathon. Pos kedua adalah tentang sisi gelap dari peristiwa ini - tentang bagaimana penyelenggara membuat kesalahan selama pelaksanaan, dan apa yang mereka tuju. Posting ketiga akan dikhususkan untuk jawaban atas pertanyaan tentang topik dekat-hackathon.
Apa itu hackathon?
Hackathon adalah acara yang diadakan selama beberapa hari, yang tujuannya adalah untuk memecahkan masalah. Biasanya ada beberapa masalah pada hackathon, masing-masing diwakili sebagai trek yang terpisah. Perusahaan sponsor memberikan deskripsi tugas, metrik keberhasilan (metrik dapat bersifat subyektif, seperti "kebaruan dan kreativitas," atau tujuan, keakuratan klasifikasi pada dataset yang ditangguhkan) dan sumber daya untuk sukses (API perusahaan, kumpulan data, perangkat keras). Peserta dalam waktu yang ditentukan harus merumuskan masalah, mengusulkan solusi dan menunjukkan prototipe produk mereka. Solusi terbaik menerima hadiah dari perusahaan dan kemungkinan kerjasama lebih lanjut.
Tahapan Hackathon
Setelah tugas diumumkan, para peserta hackathon bergabung dalam tim: masing-masing "penyendiri" menerima mikrofon dan berbicara tentang tugas yang dipilih, pengalamannya, gagasan, dan spesialisnya tentang rencana apa yang perlu diimplementasikan. Terkadang sebuah tim dapat terdiri dari satu orang yang mampu melakukan semua pekerjaan pada proyek mereka sendiri pada tingkat yang cukup tinggi. Ini relevan untuk hackathon analisis data, tetapi sering dilarang atau tidak diinginkan untuk acara grosir - penyelenggara ditujukan untuk kelanjutan lebih lanjut pekerjaan pada proyek, tetapi sudah ada di perusahaan; tim yang dibentuk memiliki sejumlah keunggulan dibandingkan peserta yang ingin membuat produk sendiri. Tim yang optimal biasanya terdiri dari 4 orang dan meliputi: frontend, backend, tanggal Ilmuwan dan pelaku bisnis. Ngomong-ngomong, pemisahan data / hackathon makanan cukup sederhana - jika Anda memiliki dataset dengan metrik dan leaderboard yang jelas, atau Anda bisa menang dengan kode di jupyter notebook, ini adalah data hackathon; segala sesuatu yang lain - di mana Anda ingin membuat aplikasi, situs web atau sesuatu yang lengket - bahan makanan.
Biasanya, dimulainya pekerjaan pada suatu proyek dimulai pada jam 9 malam hari Jumat, dan batas waktu - jam 10 pagi hari Minggu. Sebagian dari waktu ini harus diambil untuk tidur (bukan untuk tidur dan untuk kode - ini adalah cara pasti untuk gagal, saya memeriksa), yang berarti bahwa para peserta tidak punya banyak waktu untuk melakukan sesuatu yang berkualitas tinggi. Untuk membantu peserta, perwakilan perusahaan dan mentor hadir di lokasi.
Pekerjaan pada proyek dimulai dengan komunikasi dengan perwakilan perusahaan, karena mereka lebih memahami secara spesifik tugas, metrik, dan kemungkinan besar mereka akan menilai pekerjaan Anda pada akhirnya. Tujuan dari komunikasi ini adalah untuk memahami bidang mana yang paling relevan, dan apa yang layak untuk memfokuskan perhatian dan waktu Anda.
Pada satu hackathon, tugas regresi ditetapkan pada dataset dengan data tabular dan gambar dan metrik yang jelas - RMSE. Setelah saya berbicara dengan pusat data perusahaan, saya menyadari bahwa mereka tidak memerlukan regresi, tetapi klasifikasi, tetapi hanya seseorang dari manajemen yang memutuskan bahwa masalahnya sebaiknya diselesaikan dengan cara ini. Dan mereka tidak perlu klasifikasi untuk mendapatkan peningkatan dalam metrik uang, tetapi untuk memahami parameter mana yang paling penting ketika membuat keputusan dan kemudian memprosesnya secara manual. Artinya, tugas awal (regresi dengan RMSE) berubah menjadi klasifikasi; prioritas penilaian berubah dari akurasi yang diperoleh menjadi kemungkinan untuk menjelaskan hasil. Ini pada gilirannya menghilangkan kemungkinan menggunakan algoritma susun dan kotak hitam. Dialog semacam itu menyelamatkan saya banyak waktu dan meningkatkan peluang saya untuk menang.
Setelah Anda memahami apa yang perlu Anda lakukan, pekerjaan langsung pada proyek dimulai. Anda harus menetapkan check-pony - waktu yang dibutuhkan untuk menyelesaikan tugas; Sepanjang jalan, senang untuk terus berkomunikasi dengan mentor - perwakilan perusahaan dan pakar teknis - ini berguna untuk menyesuaikan rute proyek Anda. Pandangan yang segar pada masalah mungkin menyarankan solusi yang menarik.
Karena sejumlah besar pemula berpartisipasi dalam hackathon, dari pihak penyelenggara nada yang baik adalah mengadakan kuliah dan kelas master. Biasanya ada tiga kuliah - tentang bagaimana mempresentasikan ide Anda sebagai sebuah produk, ceramah tentang topik teknis (misalnya, tentang menggunakan API terbuka dalam pembelajaran mesin sehingga Anda tidak harus menulis speech2text Anda dalam dua hari, tetapi menggunakan yang sudah jadi), kuliah tentang pitching (bagaimana mempresentasikan produk Anda, bagaimana melambaikan tangan Anda di atas panggung dengan benar sehingga pendengar tidak bosan) Ada berbagai kegiatan untuk menghibur peserta - sesi yoga, sepak bola meja dan tenis, atau bermain di konsol.
Pada hari Minggu pagi Anda harus memberikan hasil pekerjaan Anda kepada juri. Di hackathons yang baik, semuanya dimulai dengan keahlian teknis - apakah yang Anda klaim benar-benar berfungsi? Tujuan dari tes ini adalah untuk menyingkirkan tim dengan presentasi dan kata kunci yang indah, tetapi tanpa produk dari orang yang benar-benar melakukan sesuatu. Sayangnya, keahlian teknis tidak ada di semua hackathon dan ada kasus ketika sebuah tim dengan 12 slide dan pola pikir "... blockchain, komputasi kuantum, dan kemudian AI akan menyelesaikannya ..." memenangkan tempat pertama. Preseden semacam itu tidak begitu sering, tetapi karena mereka paling diingat, banyak orang berpikir bahwa presentasi yang baik adalah kemenangan 99% di hackathon. Omong-omong, presentasi itu benar-benar penting, tetapi kontribusinya tidak lebih dari 30%.
Setelah kinerja para peserta, juri memutuskan untuk memberikan penghargaan kepada para pemenang. Ini melengkapi bagian resmi hackathon.
Motivasi untuk berpartisipasi dalam hackathons
Pengalaman
Dalam hal pengalaman yang diperoleh, hackathon adalah peristiwa unik. Di alam, tidak ada banyak tempat di mana Anda dapat mewujudkan ide dari ketiadaan dalam 2 hari dan mendapatkan umpan balik instan tentang pekerjaan Anda. Selama pemikiran kritis hackathon, kerja tim, manajemen waktu, kemampuan untuk bekerja dalam situasi yang penuh tekanan, kemampuan untuk mempresentasikan hasil pekerjaan mereka dengan cara yang dapat dimengerti, keterampilan presentasi dan banyak lainnya dipompa. Itulah sebabnya hackathon adalah tempat yang tepat bagi orang-orang dengan pengetahuan teoretis yang ingin mendapatkan pengalaman nyata.
Hadiah
Biasanya, kumpulan hadiah hackathon adalah sekitar 1,5k - 10k euro untuk tempat pertama (di Rusia - 100-300 ribu rubel). Manfaat yang diharapkan (nilai yang diharapkan, EV) dari partisipasi dapat dihitung dengan menggunakan rumus sederhana:
EV = Prize * WinRate + Future_Value - Costs
di mana
Hadiah adalah ukuran hadiah (untuk kesederhanaan kami menganggap bahwa hanya ada satu hadiah);
WinRate - probabilitas kemenangan (untuk tim pemula nilai ini akan terbatas pada 10% di atas, untuk tim yang lebih berpengalaman - 50% ke atas; Saya bertemu orang-orang yang meninggalkan setiap hackathon dengan hadiah, tetapi ini lebih mungkin merupakan pengecualian dari aturan dan winrate mereka akan menjadi jarak yang jauh. di bawah 100%);
Future_Value - nilai yang menunjukkan keuntungan masa depan dari berpartisipasi dalam hackathon: itu bisa menjadi keuntungan dari pengalaman yang diperoleh, hubungan yang mapan, informasi yang diterima, dll. Nilai ini hampir tidak mungkin untuk ditentukan secara tepat, tetapi harus diingat;
Biaya - biaya transportasi, akomodasi, dll.
Keputusan untuk berpartisipasi dibuat atas dasar membandingkan hackathon EV dengan kegiatan EV yang ingin Anda lakukan jika Anda tidak memiliki hackathon: jika Anda ingin berbaring di sofa untuk akhir pekan dan memilih hidung Anda, maka Anda mungkin harus berpartisipasi dalam hackathon; jika Anda menghabiskan waktu bersama orang tua atau anak perempuan - kemudian bawa mereka ke tim untuk hackathon (hanya bercanda, putuskan sendiri), jika Anda freelance - bandingkan dolar-jam.
Menurut perhitungan saya, saya dapat mengatakan bahwa di Rusia, untuk pusat data tingkat menengah junior, berpartisipasi dalam hackathons adalah sepadan dengan keuntungan moneter dari hari kerja normal, tetapi ada juga nuansa (ukuran tim, seperti hackathon, kumpulan hadiah, dll.). Secara umum, hackathons saat ini bukan bonanza, tetapi mereka dapat memberikan dorongan yang bagus untuk anggaran pribadi Anda.
Perekrutan dan jaringan perusahaan
Untuk sebuah perusahaan, hackathon adalah salah satu cara untuk merekrut karyawan baru. Akan lebih mudah bagi Anda untuk menunjukkan bahwa Anda adalah orang yang cukup dan tahu cara bekerja di hackathon daripada di sebuah wawancara, memutar-mutar pohon biner di atas papan (yang, omong-omong, tidak selalu sesuai dengan apa yang akan Anda lakukan pada karya nyata dari pusat data, tetapi tradisi harus dihormati). Tes semacam itu dalam kondisi "pertempuran" dapat menggantikan hari ujian.
Saya mendapat pekerjaan pertama saya berkat hackathon. Di hackathon, saya menunjukkan bahwa lebih banyak uang dapat diambil dari data, diceritakan bagaimana saya akan melakukannya. Saya memulai proyek di hackathon, memenangkannya, kemudian melanjutkan proyek yang sudah ada di perusahaan sponsor. Itu adalah hackathon keempat dalam hidupku.
Kemampuan untuk mendapatkan dataset unik
Ini adalah item yang sangat relevan untuk tanggal Hackathon, pentingnya yang tidak semua orang mengerti. Biasanya perusahaan sponsor memberikan set data nyata selama acara. Data ini bersifat pribadi, ini berada di bawah NDA, yang tidak berhenti menunjukkan bukti konsep pada dataset nyata, dan bukan pada mainan raksasa. Di masa depan, hasil seperti itu akan sangat membantu dalam mencari pekerjaan di perusahaan ini atau perusahaan pesaing atau dalam memperkuat proyek serupa. Setuju bahwa, ceteris paribus, setelah menyelesaikan proyek yang dievaluasi secara positif lebih baik daripada tidak memilikinya. Secara umum, proyek yang dilaksanakan seperti itu memainkan peran yang sama dengan medali dan status batuk, tetapi untuk industri nilainya lebih jelas.
Kiat
Secara umum, bekerja di hackathon adalah pengalaman yang agak beragam dan sulit untuk merumuskan daftar aturan. Namun, di sini saya ingin memberikan daftar pengamatan yang dapat membantu pemula:
- Jangan takut untuk pergi ke hackathon bahkan jika Anda tidak memiliki pengalaman atau tim. Pikirkan tentang apa yang mungkin berguna bagi Anda. Misalnya, Anda mungkin memiliki ide yang menarik atau apakah Anda bagus di bidang apa pun? Anda dapat menggunakan pengetahuan domain Anda untuk merumuskan masalah dan menemukan solusi non-sepele. Atau mungkin Anda yang mampu terbaik untuk google? Keahlian Anda akan menghemat banyak waktu jika Anda dapat menemukan implementasi yang sudah jadi di github. Atau apakah Anda pandai mengatur parameter lightgbm? Dalam hal ini, jangan pergi ke hackathon, tetapi buktikan dalam kompetisi kagla.
- Taktik lebih penting daripada manuver. Tugas Anda di hackathon adalah untuk menyelesaikan masalah. Kadang-kadang untuk menyelesaikan masalah, itu perlu diidentifikasi. Pastikan masalah yang Anda identifikasi benar-benar relevan untuk perusahaan. Periksa keputusan Anda untuk kepatuhan dengan masalah, tanyakan pada diri sendiri pertanyaan tentang optimalitas solusi Anda. Saat mengevaluasi solusi Anda, pertama-tama mereka akan melihat relevansi masalah dan kecukupan solusi yang diusulkan. Arsitektur jaringan saraf Anda, atau berapa banyak tangan yang Anda terima, tidak begitu menarik bagi siapa pun.
- Hadiri sebanyak mungkin hackathon, tetapi jangan ragu untuk meninggalkan acara yang tidak terorganisir dengan baik.
- Tambahkan hasil pekerjaan Anda di hackathon ke resume Anda dan jangan takut untuk menuliskannya di depan umum.
Esensi dari hackathons. Secara singkat