Masalah
Setiap kali tiba saatnya untuk mencari pekerjaan, kandidat duduk untuk memperbarui resume, dan secara bersamaan melihat dengan pengalaman yang lebih berpengalaman pada pengalaman masa lalunya. Dan menulis ulang semuanya, lagi dan lagi. Dan setiap kali dia berpikir bahwa dia akan menemukan kekosongan mimpi, dan kemudian dia akan menjadi begitu berpengalaman sehingga dia akan dipanggil ke tempat baru tanpa tindakan apa pun dari pihaknya. Dan kemudian cerita itu berulang, berulang-ulang.

Bagi mereka yang tidak tertarik pada lirik, dan yang ingin segera turun ke bisnis, maka silakan github . Dan bagi mereka yang peduli dengan mekanika dan sejarah proyek, artikel ini sebenarnya dikhususkan untuk itu.
Dengan munculnya sumber daya pertukaran tenaga kerja khusus, seperti LinkedIn, HeadHunter, dll., Tampaknya situasinya akan membaik - kami mengisi semua pengalaman di satu tempat, dan masa lalu tidak lagi dibuat-buat. Tapi itu tidak ada di sana - mereka mengisinya dalam satu sistem, Anda tidak bisa membongkar ke yang lain dengan mengklik mouse. Tidak ada database tunggal di mana Anda dapat menautkan akun Anda. Dapat dimengerti - perusahaan seperti itu tertarik untuk mengalahkan yang lain, dan tidak terlibat dalam integrasi satu sama lain, dan kandidat sederhana sebagai hasilnya hanya bertambah buruk.
Perhatian khusus harus diberikan kepada perusahaan-perusahaan yang pada tahap wawancara masih membutuhkan kandidat untuk mengisi informasi yang sama dalam sistem internal mereka, yang membutuhkan detail baru dan baru. Dan bahkan lebih buruk - jika Anda melamar resume.
Tetapi di mana pun Anda melamar lowongan, selalu ada bidang untuk melampirkan resume di .doc atau .pdf . Dan terlepas dari banyaknya “sampah informasi” di seluruh rantai ini, Anda harus beradaptasi dan bermain sesuai aturan mayoritas - jika tidak, tidak ada yang akan mengambil kandidat untuk bekerja, karena mereka tidak tahu tentang dia.
Secara teori, masalahnya bisa diselesaikan dengan memiliki 'pusat tunggal' - jika:
- semua platform untuk penempatan dan respons lowongan akan disatukan di tingkat sumber daya / protokol tunggal;
- “Bagaimana menulis resume” tidak akan lagi menjadi masalah seni dan penelitian, dan akan ada standar tunggal yang diterima oleh semua;
- akan ada ontologi tunggal lowongan yang paling populer, yang menurutnya Anda dapat memahami sifat penilaian keterampilan / pengalaman / kualitas kandidat untuk lowongan ini;
- kandidat tidak akan berbohong dan membesar-besarkan resume mereka;
- tidak ada persaingan bagi kandidat untuk menjual diri mereka sendiri.
Di dunia nyata, ini hampir tidak mungkin, karena pertukaran tenaga kerja berkembang dengan cara yang terdesentralisasi, dan sekitar 4-5 poin, mungkin mustahil untuk diselesaikan bahkan dengan satu pusat saja.
Namun tetap saja, sesuatu dapat dilakukan untuk menyederhanakan kehidupan kandidat, yaitu untuk dirinya sendiri. Dan saya akan mencoba melakukannya.
Ide
Entah bagaimana, ringkasannya:
- menggambarkan kualitas kandidat;
- buktikan ini dengan pengalaman.
Pertukaran tenaga kerja yang berbeda memberikan peluang yang sedikit berbeda untuk basis bukti, di suatu tempat ada bidang terpisah untuk publikasi, di suatu tempat kemungkinan deskripsi rinci tentang proyek, dll. Yaitu semua node target dari rantai informasi mengambil proyeksi pengalaman nyata yang sedikit berbeda dan membuat add-in tertentu untuk alat mereka sendiri (pencarian berdasarkan keterampilan, rekomendasi otomatis, dll.). Kemudian memiliki deskripsi paling lengkap tentang pengalaman Anda, Anda dapat dengan relatif mudah membuat proyeksi ini tergantung pada persyaratan spesifik. Termasuk untuk menyusun resume.
Jadi, ide saya adalah mengembangkan formulir untuk menyimpan jurnal pengalaman kerja saya dan secara otomatis memproyeksikan data ini ke lowongan tertentu dan dalam formulir yang diperlukan, seperti yang ditunjukkan dalam diagram.

Hanya sebagian data yang termasuk dalam proyeksi, dan jika dalam kasus yang paling sederhana adalah pencetakan sederhana di bawah formulir, maka dalam kasus yang paling kompleks itu adalah filter data yang relevan dengan lowongan (menyoroti proyek dengan keterampilan utama, lebih banyak ruang cetak untuk pengalaman aktual, dll.).
Idealnya, "jurnal" seperti itu harus:
- hanya ditambah, catatan lama tetap tidak berubah;
- itu diisi ketika informasi baru yang relevan muncul (penyelesaian pekerjaan di tempat saat ini, publikasi baru, proyek selesai) - ini adalah bagaimana mungkin untuk memberikan deskripsi yang paling berhasil;
- mengandung informasi yang menempatkan kandidat dalam cahaya yang menguntungkan (tetapi, di samping ini, masuk akal untuk mencatat poin-poin penting untuk diri Anda sendiri, bahkan jika itu negatif - hanya yang dibutuhkan yang akan dicetak).
Yaitu ini adalah 'proyeksi' pengalaman nyata ke ruang keterampilan dan bukti. Bahwa, secara umum, merupakan jantung dari sistem pertukaran tenaga kerja mana pun, tetapi peluang ini tidak tersedia bagi para kandidat.
Cerita saya
Saya mulai seperti orang lain, membuka MS Word, mencari templat yang indah, mulai menulis. Saya mencari contoh, mencoba menyalin berhasil. Pada titik tertentu saya beralih ke LaTex, lebih atau kurang terstruktur pengalaman. Saya melalui berbagai bentuk visual, bereksperimen dengan formulir. Itu berlangsung sekitar 10 tahun, dan akhirnya, tiba saatnya kuantitas berubah menjadi kualitas.
Selama pencarian kerja terakhir, saya kurang lebih mengasah bentuk dan presentasi materi, tetapi jumlah pengalaman sudah membuat saya serius memikirkan kompresi informasi maksimum. Banyak dekorasi diperkenalkan, yang tidak hanya terlihat bagus, tetapi juga menghindari teks yang tebal. Lebih penting lagi, pemahaman tentang model ORM dari resume itu sendiri (prestasi-proyek-keterampilan-majikan) telah datang.
Belakangan, bahkan inovasi utama pun muncul - realisasi datang dari cara menampilkan keterampilan Anda sekompak dan senyaman mungkin, tetapi ini sudah menjadi ceri pada kue, dan kita akan membicarakannya nanti.
Sekarang, tampaknya, saya kembali mendekati periode pencarian kerja berikutnya, dan saya ingin sepenuhnya meninggalkan resume pengeditan manual dan menggali ingatan dari pengalaman masa lalu yang mendukung otomatisasi. Karena itu, saya harus menggoyang pekerjaan saya sekali lagi, mentransfernya ke format majalah dan membuat generator yang berfungsi minimal, yang ingin saya bagikan pengalaman pengembangan saya.
Lanjutkan menulis sebagai umpan cerita
Saya telah berulang kali bertemu dengan pendapat bahwa tugas resume adalah menunjukkan kandidat dalam cahaya yang menguntungkan. Namun faktanya, tugasnya adalah membuat SDM menghubungi calon setelah membaca. Dari sini lahir konsekuensi tambahan - jika dia membaca sampai akhir, maka kemungkinan dia akan bersentuhan lebih tinggi. Oleh karena itu, saya mempertimbangkan tugas menyusun resume dalam perumusan cara mengirimkan materi sehingga HR melanjutkan hingga akhir .
Saya akan melakukan reservasi sebelumnya bahwa saya tidak akan memberikan saran tentang cara menulis resume, bentuk mana yang lebih baik untuk dipilih, dll. - ada banyak bahan yang ditulis tentang ini tentang orang-orang yang jauh lebih berpengalaman daripada saya dalam hal ini. Di sini saya hanya akan memberikan bentuk dan urutan yang akhirnya saya datangi dan berdebat.
Saya mencoba mensimulasikan bagaimana HR akan membaca resume, di mana begitu dia menemukan bukti ketidakcocokan kandidat, dia menutupnya dan tidak membaca lebih lanjut. Jika Anda membayangkan proses ini disederhanakan dalam bentuk diagram alur, Anda mendapatkan yang berikut:

Oleh karena itu, dalam formulir yang diusulkan, saya memesan bagian-bagian dalam urutan di mana bagian berikutnya tidak masalah jika ada ketidakcocokan lowongan di yang sebelumnya.
Data pribadi Jika Anda tinggal jauh dari kantor, tidak siap untuk pindah, tidak memiliki izin untuk bekerja di wilayah ini, atau tidak berbicara bahasa tim target, maka ringkasannya tidak dibaca lebih lanjut.
Tujuan Jika kandidat mencari posisi yang tidak sesuai dengan lowongan, atau minatnya berbeda dari apa yang dia temukan di perusahaan ini, maka resume tidak dibaca lebih lanjut.
Pendidikan Banyak yang mengambil pendidikan sampai akhir, dengan alasan bahwa hal yang paling penting adalah pengalaman . Saya sangat tidak setuju, karena pendidikan teknis yang lebih tinggi mengajarkan Anda untuk berpikir terlebih dahulu. Gelar ilmiah adalah untuk terlibat secara kompeten dalam proyek penelitian dan melindungi hasilnya. Saya lebih suka untuk menempatkan bagian ini hampir di awal, bukan karena kritisnya memiliki pendidikan, tetapi untuk mematahkan prisma untuk melihat materi lebih lanjut dengan cara yang positif.
Keterampilan Persyaratan untuk keterampilan tidak ambigu untuk lowongan tertentu. Jika Anda mencari C ++ berpengalaman untuk mengembangkan driver, dan di atas keterampilan JS, Ruby on Rails dan Java - maka Anda tidak dapat membaca lebih lanjut.
Proyek Pekerjaan pengembang terutama terikat bukan pada tempat kerja, tetapi pada proyek. Dan majikan bertindak sebagai perantara kondisional antara karyawan dan proyek, dan dalam satu perusahaan kandidat dapat memiliki banyak proyek. Saya memasukkan proyek hobi di sini, sebagai Saya punya banyak pengalaman di dalamnya. Dengan kata lain, bukti keterampilan yang dinyatakan diberikan di sini, jika tidak ada bukti, maka itu tidak dibaca lebih lanjut.
Sejarah Buruh Jika SDM kami yang disimulasikan datang ke sini, maka setidaknya ia percaya bahwa kandidat tersebut berpartisipasi dalam lowongan pekerjaan yang relevan. Semua manfaat dan prestasi teknis telah dijelaskan di bagian sebelumnya, tetapi di sini SDM dapat menilai frekuensi perubahan pekerjaan dan bidang masalah yang biasa diketahui kandidat. Jika, misalnya, ia terlalu sering mengubah tempat kerjanya, maka ia tidak dapat membaca lebih lanjut.
Aktivitas profesional . Selain pengalaman kerja, kandidat yang benar-benar bersemangat dengan profesi tidak terbatas pada pekerjaan biasa dan proyek hobi, tetapi juga melakukan sains, blog, membuat publikasi populer, dan membuat presentasi di konferensi khusus. Oleh karena itu, di sini saya memberikan pertama-tama, publikasi ilmiah (dalam prioritas - diindeks dalam Scopus), kemudian yang populer (misalnya, seperti artikel ini), dan di tempat terakhir - presentasi di konferensi. Paragraf ini lebih merupakan pelengkap, dan bukan 'titik cut-off' wajib.
Minat dan kualitas . Titik klasik, kebutuhan yang saya ragu, karena saya tidak berpikir bahwa itu membawa beban yang konstruktif.
Cara menyoroti keterampilan
Apa itu 'keterampilan', dan detail apa yang dibutuhkan saat mengisi - ini adalah pertanyaan terbuka. Misalnya, di suatu tempat Anda dapat menulis C ++, suatu tempat meningkatkan (dan masih tidak menulis C ++), tetapi di suatu tempat C ++, STL, meningkatkan. Dan ingatlah hal yang sama.
Harus dipahami bahwa perekrut dan SDM jarang memiliki keahlian teknis, dan lebih dari itu pengalaman. Ini berarti bahwa mungkin tidak jelas bagi mereka bahwa STL dan boost termasuk C ++. Karenanya, di sini Anda harus fokus terutama pada lowongan, dan lihat kata kunci apa yang digunakan di sana.
Bagi saya sendiri, ketika mengisi majalah, saya memutuskan untuk mengisi lebih banyak (bahkan dengan duplikasi semantik), dan kemudian saya berharap untuk menambahkan "filter" keterampilan yang relevan berdasarkan lowongan.
Pengalaman Majalah
Jurnal adalah profil kandidat, dan dapat disajikan dalam bentuk diagram berikut. Saya hanya akan menunjukkan atribut dasar untuk entitas, dan saya akan menggunakan notasi ActiveRecord untuk meningkatkan keterbacaan untuk menunjukkan hubungan.

Selanjutnya, kami mempertimbangkan entitas yang dijelaskan lebih detail dengan contoh, dan menggunakan JSON sebagai bahasa implementasi.
Dengan data pribadi, semuanya cukup sepele, seperti halnya kontak . Hanya keahlian bahasa yang ditempatkan di sini, karena tidak seperti pekerjaan di Rusia, ini bukan keunggulan kompetitif, tetapi alat komunikasi. Dan jika perekrut memanggil Anda, maka biarkan dia segera mengerti dalam bahasa apa untuk memulai dialog.
Institusi tersebut ditempatkan di institusi tersebut, status diploma (phd, spesialis, master, dll.), Nama diploma, masa studi dan nilai rata-rata. Saya juga merasa berguna untuk menempatkan spesialisasi untuk profil yang luas, dan gelar diploma.
Keterampilan harus direkrut secara otomatis dari proyek, tetapi yang saya anggap penting untuk dilakukan adalah untuk mencerminkan sikap saya terhadap keterampilan. Misalnya, jika ini adalah C ++, yang saya suka tulis, maka saya ingin menekankan bahwa saya suka menulis di dalamnya, dan saya tertarik dua kali pada lowongan di mana saya bisa melakukan ini. Atau sebaliknya - apa yang tidak ingin saya tulis dalam C #, walaupun saya harus melakukannya.
Dalam proyek ini , selain durasi, ukuran tim, dan deskripsi, saya selalu lebih suka memberikan tautan web ke sumber daya Internet yang mewakilinya. Jika memungkinkan, saya juga memberikan logo untuk dekorasi, karena secara pribadi bagi saya navigasi pada resume sangat disederhanakan, dan teks menjadi kurang seragam. Sebuah proyek adalah blok bangunan terpenting dari pengalaman Anda, dan sebagai contoh
{ "name" : "Photoshop", "icon" : "photoshop_project.png", "period" : "01.09.2015-30.08.2016", "description" : "Raster graphics editor", "team-size" : "9", "web" : "https://www.adobe.com/products/photoshop.html", "tasks" : [ "..." ] }
Setiap proyek terdiri dari tugas - tugas yang diselesaikan dan di mana kandidat membuat prestasi tertentu. Ini adalah bukti kunci dari pengalaman - sebuah pencapaian idealnya dinyatakan dalam bentuk angka. Tugas mungkin satu di dalam proyek. Juga, keterampilan terkait dengan tugas, yang membentuk dasar untuk menghasilkan statistik keterampilan:
{ "description" : "Development of text-recognition filter from raw image", "period" : "01.09.2015-28.02.2016", "skills" : ["CI", "C++", "ML"], "achievements" : [ "achievied recognition accuracy up to 85%" ] }
Dan pencapaian memungkinkan untuk menekankan bahwa berkat solusi Anda untuk masalah ini, seseorang di dunia telah menjadi lebih baik, dan sangat baik untuk memberikan penilaian kuantitatif. Dan secara visual proyek seperti ini akan mengikuti:

Sejarah perburuhan , di samping bidang-bidang sepele, berisi tautan ke proyek. Saya menentang daftar "tanggung jawab" di sini - ini sudah ada dalam proyek. Saya juga lebih suka menggunakan logo perusahaan, terutama jika mereka adalah logo terkenal. Jika SDM kecewa dengan paragraf sebelumnya, dan akan menutup resume, tetapi melihat logo yang sudah dikenal, itu bisa menyelamatkan situasi.
Publikasi , Konferensi, dan fitur adalah entitas sepele yang tidak terkait dengan apa pun, jadi saya tidak akan memberi mereka terlalu banyak perhatian. Publikasi (baik ilmiah dan non-fiksi) disimpan sebagai file bibtex.
Implementasi
Seluruh implementasi dengan deskripsi yang menyertainya dapat ditemukan di github .
Saya mencoba menyiapkan contoh fiksi dari resume , mencerminkan ide-ide yang diuraikan seakurat mungkin, dan sepenuhnya menggunakan kemampuan kompilator saat ini.
Anda perlu buruh pelabuhan untuk bekerja, tetapi jika ini merupakan masalah, maka hal utama adalah menempatkan imagemagick, lateks, dan python.
FROM ubuntu:latest RUN apt-get -qq update && DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends build-essential librsvg2-bin lmodern inkscape zip python3 python3-dev python3-pip libcairo2-dev apt-utils pkg-config python3-setuptools texlive-fonts-recommended texlive-latex-extra dvipng texlive-latex-recommended texlive-xetex && pip3 install --upgrade pip
Resume dikumpulkan dalam format PDF menggunakan Latx-a. Untuk logo, Anda dapat menggunakan gambar vektor (svg) atau bitmap (png) dengan alpha. Font - Arial Narrow, yang populer di resume karena lebarnya.
Keterampilan
Saya memberikan perhatian khusus pada visualisasi keterampilan dalam proyek ini, karena merekalah yang menjadi filter utama para kandidat. Dari apa yang saya temui, pendekatan berikut dapat dibedakan:
- daftar yang dikelompokkan dengan gradasi (ahli, pemula);
- tabel (kisi - gradasi / keterampilan);
- menggabungkan keterampilan ke dalam proyek;
- penambahan poin pengalaman sebelumnya dalam kurung tahun.
Setiap pendekatan dengan caranya sendiri baik jika Anda membacanya dengan cermat dan hati-hati, tetapi jika Anda menghabiskan tidak lebih dari 10 detik untuk melakukannya, mereka semua pasti akan gagal.
Selain itu - penilaian Anda sendiri tingkat Anda (pemula / ahli) tidak membawa banyak konstruktif. Lima tahun yang lalu, saya menganggap level C ++ saya jauh lebih tinggi daripada yang saya kira sekarang, meskipun selama waktu itu saya telah tumbuh berkali-kali ke arah ini. Satu-satunya penilaian objektif yang dapat saya berikan pada keterampilan saya adalah berapa lama saya menggunakannya. Ini membentuk dasar untuk implementasi bagian ini.
Tetapi bagaimana cara mengevaluasi periode waktu ini? Saya ingat bahwa program C ++ pertama ditulis di kelas 7, dan terakhir kali saya menulis sesuatu hari ini. Lagipula, salah untuk mengambil 13 tahun dari usia Anda dan menulis hasilnya menjadi pengalaman - setelah semua, ada periode waktu ketika saya tidak menulis apa pun, dan keterampilan tidak tumbuh.
Tetapi kemudian saya dapat mendaftar proyek-proyek di mana saya menggunakan C ++, dan saya dapat mencatat durasinya, yang, sebenarnya, telah dilakukan dalam jurnal . Dan jika saya bekerja secara bersamaan pada dua proyek yang menggunakan C ++, maka skill tidak tumbuh dengan kecepatan ganda. Dan ini sudah mudah dihitung berdasarkan majalah dan statistik tampilan.
Dan melihat statistik seperti itu, SDM dapat dengan cepat mengetahui apakah Anda cocok untuk lowongan atau tidak. Selain itu, saya sendiri kadang-kadang tertarik untuk melihat statistik saya - apakah saya berpengalaman seperti yang saya pikirkan, dan sebaliknya.
Seperti apa bentuknya
Semuanya terlihat seperti ini:


Untuk artikel ini, saya secara khusus mengutip versi dalam format A5, secara default kompiler diatur ke A4.
Umpan balik
Jika lebih banyak orang mematuhi standar umum dalam merekrut masalah di kedua sisi (SDM dan kandidat), maka akan menjadi lebih mudah bagi semua orang untuk hidup. Karena itu, jika Anda juga menganut pandangan idealistis, dan Anda menyukai proyek tersebut, tetapi tahu bagaimana membuatnya lebih baik, saya terbuka untuk interaksi dan akan dengan senang hati menerima umpan balik.
Saya juga membuat proyek berdasarkan posisi Insinyur Perangkat Lunak / Pengembang Perangkat Lunak, jadi saya tidak tahu seberapa banyak pekerjaan saya cocok untuk posisi lain. Tetapi saya tidak mengecualikan bahwa ini mungkin.
Ke mana harus pergi selanjutnya
Rencana pengembangan selanjutnya sangat sepele, meskipun termasuk implementasi non-sepele:
- Terapkan kompresi cerdas. Berikan minimal informasi tentang proyek-proyek lama, maksimal - yang relevan dan relevan. Sekarang ini hanya diterapkan untuk memotong publikasi lama, tetapi mereka sudah mengambil sedikit ruang. Perlu untuk mematuhi batas volume dan tidak melanggar aturan genre.
- Terapkan filter informasi yang relevan. Dalam kasus paling sederhana, ontologi keterampilan dibuat dengan profil (tertanam, C ++, fintech, front-end, dll.), Dan profil adalah parameter untuk kompiler. Idealnya, kami memberikan tautan ke lowongan (biarkan itu menjadi halaman di linkedin), dalam kasus yang paling sederhana, kompiler mencari kata kunci di atasnya atau menganalisisnya menggunakan database / ML dan menyaring keterampilan dan proyek yang relevan.
Sementara itu, semoga sukses dan sukses menemukan pekerjaan!