Cara kerja wawancara telepon di Google: akun langsung dari kandidat untuk posisi CTO.


Raksasa TI saat ini terkenal dengan pendekatan non-standar mereka dalam mengatur proses kerja. Perusahaan menciptakan kondisi ideal bagi karyawannya, memotivasi mereka dengan segala cara yang mungkin. Namun bagaimana memilih tim responsif yang hanya terdiri dari “ dibebankan» profesional? Ini adalah tantangan utama departemen SDM, dan inilah cara mereka menghadapinya.

Beberapa waktu lalu, pertanyaan dalam format "brainteaser" sangat populer - teka-teki logis, seringkali tidak ada artinya pada pandangan pertama. Mereka tidak memiliki relevansi dengan posisi masa depan dan jarang memerlukan keterampilan khusus. Apalagi banyak pertanyaan sederhana tidak ada jawaban yang jelas.

Lalu mengapa bertanya kepada mereka?

Untuk menguji bagaimana seseorang akan berpikir situasi yang tidak standar. Anda tidak bisa menutup diri dan mempertanyakan kecukupan pewawancara; pertanyaan-pertanyaan ini harus dijawab dengan cara yang tidak sepele, namun logis. Hanya tes lain, tapi kali ini untuk pemikiran yang berpola.

Selain itu, pertanyaan-pertanyaan ini seringkali membuat seseorang menjadi stres, dan kemampuan untuk mengatasi keadaan ini merupakan keterampilan yang sangat berguna.

Semua perusahaan besar telah mengadopsi teknik ini, tetapi mungkin permainan asah otak paling sering ditemui oleh pelamar untuk posisi kosong di Google Inc.

Pertanyaan wawancara Google yang paling liar

Ini adalah menceritakan kembali secara gratis dari mereka yang diwawancarai. Perusahaan tidak pernah mempublikasikan daftar pertanyaan aslinya.

1. Pikirkan sebanyak mungkin cara untuk menemukan jarum di tumpukan jerami.


Judul pekerjaan: 08.05.2014

Cara menjawab: mereka jelas tertarik pada seberapa jauh imajinasi Anda akan berkembang. Oleh karena itu, pilihan yang jelas seperti “bakar jerami” atau “dapatkan magnet yang kuat” tidak akan berhasil. Bebaskan imajinasi Anda.

2. Berapa banyak potong rambut yang dilakukan di Amerika sepanjang tahun?


Judul pekerjaan: pegawai departemen komersial 08.05.2014

Cara menjawab: Mulailah dengan menghitung permintaan konsumen. Ukuran populasi AS? Berapa banyak dari mereka yang pergi ke penata rambut? Seberapa sering orang memotong rambutnya? Kemudian rangkum perkiraan statistik untuk tahun tersebut.

3. Koin dilempar 1000 kali dan muncul gambar sebanyak 560 kali. Apakah menurut Anda koin itu “adil”? Bagaimana jika ada enam kepala dari 10 lemparan?


Judul pekerjaan: Analis Kuantitatif - 12/09/2015

Cara menjawab: Pertanyaan ini bukan tentang kecerdikan, tapi tentang pengetahuan tentang teori probabilitas. Dapat dihitung dengan menggunakan distribusi binomial atau uji chi-kuadrat. Ada cara lain untuk menguji “keadilan”. Masalah yang cukup logis, apalagi jika Anda ingat untuk posisi apa wawancara itu.

4. Anda memiliki layanan pengiriman bahan makanan 24 jam. Berapa banyak truk yang Anda perlukan agar semuanya berjalan lancar?


Judul pekerjaan: Manajer Produk - 05/11/2015

Cara menjawab: Anda dapat memperkirakan perkiraan area cakupan layanan Anda, google berapa jarak yang ada dan memikirkan waktu pemrosesan minimum dan maksimum untuk satu pesanan. Dan Anda dapat mencatat bahwa tidak diketahui di negara bagian mana perusahaan tersebut berada. Jika pelayanan baru dibuka, cukup satu truk, dan pembelian berikutnya sesuai kebutuhan.

5. Berapa banyak bola tenis yang dapat ditampung dalam sebuah pesawat?


Judul pekerjaan: magang - 08/12/2015

Cara menjawab: di sini, andalkan volume beberapa Boening dan hitung berapa banyak bola standar yang akan "dituang" ke dalamnya, atau pikirkan bagaimana bola akan dimuat. Dalam kemasan apa? Palet atau wadah?

6. Bagaimana mengatasi masalah terbesar umat manusia dengan satu miliar dolar dan pesawat luar angkasa?


Judul pekerjaan: administrator basis data - 14/12/2015

Cara menjawab: membunuh dua burung dengan satu batu: cari tahu masalah mana yang menurut Anda paling signifikan dan seberapa jauh Anda bersedia berusaha untuk menyelesaikannya. Apakah Anda akan mengirim semua orang sakit ke luar angkasa? Atau akankah Anda memulai penelitian skala besar?

7. Jika Anda hanya dapat mengingat satu kalimat, kalimat apakah itu?


Judul pekerjaan: 08.12.2015

Cara menjawab: apa pun. Kalau saja ini mencirikan Anda dari sisi pemenang. Sebaris lagu, film, buku - tidak masalah, tapi bersiaplah untuk menjelaskan alasannya.

8. Jelaskan layanan yang membantu Anda melakukan perjalanan ke masa depan.


Judul pekerjaan: perancang antarmuka interaktif - 23/12/2015

Cara menjawab: termasuk penulis fiksi ilmiah. Bayangkan ini akan terjadi. Bagaimana “mengintip” masa depan seperti itu akan diterapkan? Aplikasi berita di ponsel cerdas Anda? kacamata 3D? Atau perjalanan fisik melalui semacam kapsul? Pemikiran apa pun bisa dikembangkan.

9. Kapan trotoar akan basah seluruhnya saat hujan jika lebar trotoar 1 meter dan diameter tetesan 1 cm?


Judul pekerjaan: insinyur perangkat lunak - 01/06/2016

Cara menjawab: Sekilas semuanya sederhana, namun kenyataannya masih banyak faktor lainnya. Tetesan mungkin jatuh di tempat yang sama atau tumpang tindih. Titik basahnya tidak selalu sama dengan diameternya. Semakin banyak faktor yang tidak jelas yang Anda pertimbangkan, semakin tinggi peluang keberhasilannya. Tentu saja, Anda harus menulis sebuah program.

10. Jika Anda menghapus iklan dari YouTube, bagaimana cara memonetisasinya?


Judul pekerjaan: Konsultan departemen komersial - 15/01/2016

Cara menjawab: Temukan beberapa cara, misalnya, berlangganan layanan berbayar atau membuat saluran TOP untuk mendapatkan uang. Orang-orang dari bagian komersial adalah orang-orang yang bekerja langsung dengan semua produk periklanan Google, jadi bersiaplah untuk memberikan jawaban rinci Anda, dengan perhitungan manfaatnya.

11. Berapa banyak orang yang mengendarai mobil di kota Anda? Menghitung.


Judul pekerjaan: pengembang - 03/09/2016

Cara menjawab: menghasilkan beberapa data awal. Perkirakan jumlah penduduk kota dan jumlah rata-rata orang dalam satu keluarga. Lalu pikirkan berapa banyak keluarga yang mampu membeli 1 mobil? Bagaimana kalau dua? Tiga atau lebih?

12. Berapa banyak mobil yang ada di Highway 101 antara San Francisco dan Mountain View?


Judul pekerjaan: Manajer Produk - 01/04/2018

Cara menjawab: Misalkan panjang jalan raya ini sekitar 65 kilometer, jalannya empat lajur. Ambil rata-rata panjang mobil. Dan perlu diingat bahwa saat berkendara dengan kecepatan tinggi, terdapat jarak yang besar antar mobil.

13. Berapa banyak teknisi reparasi piano di Amerika Serikat?


Judul pekerjaan: Manajer Produk - 01/04/2018

Cara menjawab: serta pertanyaan dengan penata rambut. Anda menghitung perkiraan permintaan untuk layanan ini dan mendapatkan setidaknya perkiraan jumlah spesialis.

14. Berapa banyak bola golf yang dapat ditampung dalam bus sekolah?


Judul pekerjaan: Manajer Produk - 01/04/2018

Cara menjawab: Di atas sudah ada pertanyaan serupa tentang bola tenis dan pesawat terbang. Meskipun ukuran bus dan bola golf lebih kecil, masalah ini diselesaikan dengan menggunakan algoritma yang sama.

15. Berapa banyak orang yang bekerja di Google di seluruh dunia?


Judul pekerjaan: Manajer Produk - 01/04/2018

Cara menjawab: Ambil pendapatan tahunan Google sebagai dasar dan bayangkan berapa banyak biaya yang harus dibayar karyawan. Sepuluh kali lipat? Tiga puluh kali lipat? Lakukan perhitungan.

16. Berapa banyak komputer yang dimiliki Google?


Judul pekerjaan: Manajer Produk - 01/04/2018

Cara menjawab: Harap jelaskan komputer mana yang Anda bicarakan. Kalau soal pribadi, maka Anda perlu menghitung dulu jumlah karyawan Google (pertanyaan di atas). Jika kita berbicara tentang server, mulailah dari perkiraan jumlah data yang disimpan di sana.

17. Google ingin Anda mengembangkan mesin pemotong rumput robotik. Bagaimana Anda melanjutkannya?


Judul pekerjaan: Manajer Produk - 01/08/2018

Cara menjawab: Mereka lebih cenderung tertarik pada langkah-langkah yang terlibat dalam pengembangan produk daripada cara kerja robot mesin pemotong rumput. Tentukan target audiens, anggaran, fungsi. Mengusulkan desain dan mekanisme promosi produk.

18. Merancang mesin penjual otomatis (vending equipment) untuk tunanetra.


Judul pekerjaan: Manajer Produk - 11/01/2018

Cara menjawab: di sini Anda memerlukan ide keren: perangkat dengan kontrol suara, sensor, atau tombol taktil. Kemudian Anda dapat melanjutkan dengan cara yang sama seperti pada pertanyaan tentang mesin pemotong rumput robotik, dengan menjelaskan semua tahap selanjutnya dalam pengembangan produk ini.

19. Berapa banyak memori yang diperlukan untuk menyimpan semua gambar dari Google Maps?


Judul pekerjaan: Manajer Produk - 11/01/2018

Cara menjawab: Anda harus banyak menghitung, dan angka-angka itu muncul begitu saja. Berapa berat satu foto di Google Maps? Bagaimana dengan gambar panorama? Ditambah grafis yang menyertainya. Sekarang hitung perkiraan luas bumi. Berapa banyak yang telah difilmkan oleh satelit Google? Ada berapa objek dengan foto terlampir? Bagaimana dengan atraksinya? Hitung semua yang Anda ingat.

20. Bagaimana cara mengetahui berapa banyak tukang pipa yang bekerja di San Francisco?


Judul pekerjaan: 18.01.2018

Cara menjawab: Ini adalah variasi lain dari pertanyaan tentang potong rambut atau tentang spesialis perbaikan piano. Mereka diselesaikan seperti salinan karbon, hanya dengan data awal yang berbeda. Ambillah, sekali lagi, dari kepala Anda.

21. Jika Anda ditugaskan untuk merekrut orang, situs manakah yang paling cocok?


Judul pekerjaan: Analis Departemen Keamanan - 18/01/2018

Cara menjawab: Pikirkan di mana ada kemungkinan besar untuk mempekerjakan staf profesional? Di bursa tenaga kerja? Di jejaring sosial? atau di situs khusus seperti Linkedin? Jangan lupa untuk memperjelas posisi apa yang direkrut oleh karyawan, jika tidak, mungkin masuk akal untuk membagikan selebaran di depan institut.

22. Bagaimana cara meningkatkan antarmuka pengguna YouTube? (dari sudut pandang periklanan)


Judul pekerjaan: Analis Departemen Keamanan - 18/01/2018

Cara menjawab: Bayangkan YouTube memperoleh iklan tidak mengganggu yang tidak terlihat oleh pengguna. Di manakah lokasi blok sponsorship? Pada titik apa dan berapa lama gambar tersebut akan ditampilkan?

Dan bagaimana mempersiapkannya?

Secara umum, sudah tidak perlu. Beberapa tahun yang lalu, Laszlo Bock, wakil presiden senior sumber daya manusia di Google, mengatakan bahwa pertanyaan-pertanyaan ini bukanlah faktor terpenting dalam sebuah wawancara. Ya, dan jika Anda menganalisis yang terbaru

Ketika Anda mendapatkan pekerjaan di perusahaan sebesar Google, rasa takut gagal dalam wawancara selalu meningkat berkali-kali lipat. Kami telah menemukan dan menerjemahkan tip wawancara yang akan membantu Anda mengatasi rasa takut dan mengekspresikan diri Anda dengan lebih baik.

Hal-hal yang perlu diperhatikan sebelum wawancara Anda

  • Miliki salinan buku nilai Anda;
  • Pilih sebagai minimum 3 hari dan waktu (termasuk zona waktu) di mana Anda akan bersedia untuk wawancara teknis melalui telepon dalam format zona waktu-tanggal-waktu yang Anda tentukan waktunya;
  • Pilih bahasa pemrograman yang ingin Anda gunakan untuk wawancara: Java, C++, C atau Python;
  • Berikan informasi kontak terkini sehingga Anda dapat dihubungi pada hari wawancara.

Berikut adalah tip untuk membantu Anda mempersiapkan wawancara yang sukses. Mereka yang mengikuti mereka cenderung melakukan jauh lebih baik!

Rencanakan ke depan

Insinyur Google yang akan mewawancarai Anda memiliki waktu yang sangat terbatas. Jadi luangkan waktu juga dalam jadwal Anda! Siapkan juga pena dan selembar kertas jika Anda diminta menulis sesuatu.

Apa yang diharapkan

Wawancara teknis bisa berlangsung hingga 45 menit. Pewawancara akan tertarik dengan pengetahuan Anda tentang prinsip-prinsip Ilmu Komputer (struktur data, algoritma, dll.) dan bagaimana Anda dapat menerapkannya untuk memecahkan masalah.

Apakah pengetahuan Ilmu Komputer Anda masih kurang? Kemudian lihatlah untuk mengisi kesenjangan ini.

Pertanyaan Wawancara

Wawancara dapat mencakup semua yang tercantum dalam resume Anda (terutama jika Anda menyatakan bahwa Anda ahli dalam hal ini!), papan tulis (ini adalah saat Anda dipaksa untuk menulis kode di papan atau selembar kertas), pengembangan kompleks algoritma dan analisis kinerjanya, masalah logika, desain sistem dan dasar-dasar Ilmu Komputer - tabel hash, tumpukan, array, dll. Karena kompleksitas dan cakupan global proyek yang akan Anda ikuti, landasan di bidang Ilmu Komputer diperlukan untuk semua posisi teknik di Google, terlepas dari senioritas Anda.

Cara Sukses

Google menghargai kolaborasi dan pertukaran ide. Oleh karena itu, Anda memerlukan informasi lebih lanjut dari pewawancara agar dapat menganalisis pertanyaan yang diajukan dan menjawabnya secara detail.

  • Tidak apa-apa untuk mengajukan pertanyaan kepada pewawancara.
  • Ketika Anda diminta untuk memecahkan suatu masalah, nyatakan terlebih dahulu bagaimana Anda memahaminya.
  • Jika Anda tidak memahami sesuatu, mintalah bantuan atau penjelasan.
  • Jika Anda mempunyai tebakan, ucapkanlah untuk memastikan penilaian Anda benar!
  • Jelaskan bagaimana Anda akan memecahkan setiap bagian dari masalah tersebut.
  • Selalu biarkan pewawancara mengikuti proses berpikir Anda, karena ini tidak kalah pentingnya baginya dengan keputusan akhir. Selain itu, jika Anda tiba-tiba terdiam, dia akan bisa membantu dengan nasihat.
  • Terakhir, dengarkan - jangan biarkan petunjuknya diabaikan jika pewawancara mencoba membantu Anda!

Siapa yang dibutuhkan Google?

Kita tidak hanya membutuhkan insinyur untuk memecahkan masalah yang sudah mereka kenal; kami mencari mereka yang dapat menemukan jawaban atas pertanyaan yang belum pernah mereka temui sebelumnya.

Bagi pewawancara, pendekatan terhadap pertanyaan sama pentingnya dengan jawaban itu sendiri:

  • Apakah kandidat mendengarkan dengan cermat dan memahami pertanyaannya?
  • Apakah dia menanyakan pertanyaan yang tepat sebelum memulai? (penting!)
  • Apakah dia menyelesaikan masalahnya dengan kekerasan? (buruk!)
  • Apakah ada asumsi yang dibuat tanpa pengujian sebelumnya? (buruk!)
  • Apakah kandidat mendengar petunjuknya dan menindaklanjutinya?
  • Apakah kandidat lambat dalam memahami/menyelesaikan masalahnya? (buruk!)
  • Apakah kandidat lebih suka mengeksplorasi beberapa kemungkinan solusi sebelum memilih solusi terbaik?
  • Apakah dia mencari cara baru untuk menyelesaikan suatu masalah?
  • Apakah kandidat inovatif dan fleksibel dalam mengambil keputusan, serta terbuka terhadap ide-ide baru?
  • Apakah mungkin untuk melanjutkan ke pemecahan masalah yang lebih kompleks selama proses wawancara?

Google ingin melihat kode yang benar-benar berkualitas tinggi, efisien, dan bersih tanpa kesalahan. Karena semua teknisi (di tingkat mana pun) berinteraksi dengan basis kode Google, yang memiliki peninjauan kode yang efektif, penting bagi setiap orang untuk bekerja pada tingkat tinggi yang sama.

Ajukan lebih banyak pertanyaan!

Pastikan Anda memiliki pemahaman yang jelas tentang Google sebagai sebuah bisnis - di luar produk inti perusahaan. Anda dapat mengetahui apa yang dilakukan Google di situs web perusahaan dan di Wikipedia.

Di akhir wawancara, sebagian besar pewawancara akan menanyakan apakah Anda memiliki pertanyaan tentang perusahaan, lingkungan kerja, pengalaman mereka, dll. Sebaiknya persiapkan beberapa pertanyaan terlebih dahulu, tetapi jangan terlalu khawatir jika Anda lupa semuanya.

Jika Anda memiliki pertanyaan tentang proses wawancara, gaji, atau pekerjaan Anda, tanyakan pada perekrut Anda.

Bersiap untuk wawancara teknis

Poin utama yang harus dilalui para insinyur agar berhasil lulus wawancara di Google:

  • Kompleksitas algoritma. Sangat penting untuk memahami analisis kompleksitas dalam notasi Big O. Cobalah untuk mencari tahu hal ini dalam praktik.
  • Penyortiran. Tahu cara mengurutkan. Bukan gelembung. Anda harus mengetahui secara detail setidaknya satu algoritma pengurutan kompleksitas HAI(n log n), sebaiknya dua, misalnya, pengurutan cepat dan pengurutan gabungan. Yang terakhir ini bisa sangat berguna dalam situasi di mana penggunaan pengurutan cepat tidak praktis, jadi berhati-hatilah.
  • Tabel hash. Mungkin struktur data terpenting yang diketahui umat manusia. Anda pasti harus tahu cara kerjanya. Bersiaplah untuk memberikan implementasi Anda menggunakan array dalam bahasa favorit Anda selama wawancara.
  • Pohon. Memiliki pemahaman tentang pohon, mengetahui algoritma dasar untuk membangun, melintasi dan mengelola pohon. Pelajari tentang pohon biner, n-ary, dan awalan. Anda juga perlu mengetahui setidaknya satu jenis pohon biner seimbang, apakah itu pohon merah-hitam, pohon yang meluas, atau pohon AVL, dan cara mengimplementasikannya. Pahami algoritme penjelajahan pohon: penelusuran yang mengutamakan luas dan mengutamakan kedalaman, serta mempelajari perbedaan antara penjelajahan maju, simetris, dan mundur.
  • Grafik. Grafik sangat penting di Google. Ada tiga cara utama untuk merepresentasikan grafik dalam memori: objek dan pointer, matriks, dan daftar kedekatan; meninjau setiap pandangan serta kelebihan dan kekurangannya. Anda harus mengetahui algoritma traversal grafik dasar: pencarian luas pertama dan pencarian mendalam pertama. Ketahui kompleksitas komputasi, kelebihan dan kekurangannya, serta cara mengimplementasikannya menggunakan kode. Jika memungkinkan, cobalah mempelajari contoh yang lebih menarik seperti algoritma Dijkstra dan .
  • Matematika. Beberapa pewawancara mengajukan pertanyaan tentang matematika diskrit dasar. Google lebih memperhatikan hal ini dibandingkan perusahaan lain karena sifat tugas yang mereka kerjakan. Luangkan waktu sebelum wawancara Anda untuk meninjau (atau mempelajari) dasar-dasar kombinatorik dan teori probabilitas. Anda harus tahu tentang masalah kombinasi n demi k dan masalah serupa - semakin banyak, semakin baik.
  • Sistem operasi. Pelajari tentang proses, thread, dan konkurensi. Anda perlu mengetahui apa itu lock, mutex, semaphore, dan monitor serta cara kerjanya. Pelajari apa itu deadlock dan livelock serta cara menghindarinya. Miliki gambaran tentang sumber daya apa yang dibutuhkan proses dan thread, cara kerjanya

Setelah menyelesaikan kursus, saya menyadari bahwa banyak ilmu datang dengan banyak kesedihan. Kalau dulu aku hanya tahu bahwa aku tidak tahu apa-apa, kini aku mulai sadar bahwa akulah yang tidak tahu.

Karena ini baru bulan Mei, dan saya menjadwalkan wawancara pada musim gugur, saya memutuskan untuk melanjutkan pendidikan. Setelah meninjau persyaratan lowongan, diputuskan untuk mengambil dua arah secara paralel: terus mempelajari algoritma dan mengambil kursus dasar dalam pembelajaran mesin. Untuk tujuan pertama, saya memutuskan untuk beralih dari kursus ke buku dan memilih karya monumental Steven Skiena “Algorithms. Manual Desain Algoritma. Tidak monumental seperti milik Knut, tapi tetap saja. Untuk tujuan kedua, saya kembali ke Coursera dan mendaftar kursus Pembelajaran Mesin Andrew Ng.

3 bulan lagi berlalu dan saya menyelesaikan kursus dan buku.

Mari kita mulai dengan bukunya. Bacaannya ternyata cukup menarik meski tidak mudah. Pada prinsipnya, saya akan merekomendasikan buku tersebut, tetapi tidak langsung. Secara keseluruhan, buku ini memberikan gambaran yang lebih mendalam tentang apa yang saya pelajari dalam kursus tersebut. Ditambah lagi, saya menemukan (dari sudut pandang formal) hal-hal seperti heuristik dan pemrograman dinamis. Tentu saja, saya pernah menggunakannya sebelumnya, tetapi saya tidak tahu apa namanya. Buku ini juga memuat sejumlah kisah hidup penulisnya (Kisah Perang), yang agak melemahkan sifat akademis dari penyajiannya. Omong-omong, paruh kedua buku ini bisa dihilangkan; melainkan berisi uraian tentang masalah yang ada dan metode penyelesaiannya. Berguna jika sering digunakan dalam praktek, jika tidak maka akan langsung terlupakan.

Saya sangat senang dengan kursus ini. Penulis dengan jelas mengetahui materinya dan berbicara dengan cara yang menarik. Ditambah lagi cukup banyak yaitu aljabar linier dan dasar-dasar jaringan syaraf tiruan yang saya ingat semasa kuliah, jadi saya tidak mengalami kesulitan khusus. Struktur kursusnya cukup standar. Kursus ini dibagi menjadi beberapa minggu. Setiap minggunya ada perkuliahan yang dicampur dengan ulangan singkat. Selesai perkuliahan, Anda diberikan tugas yang perlu Anda kerjakan, serahkan, dan otomatis diperiksa. Secara singkat, daftar hal-hal yang diajarkan dalam kursus ini adalah sebagai berikut:
- fungsi biaya
- regresi linier
- penurunan gradien
- penskalaan fitur
- persamaan normal
- regresi logistik
- klasifikasi multikelas (satu vs semua)
- jaringan saraf
-propagasi mundur
- regularisasi
- bias/varians
- kurva belajar
- metrik kesalahan (presisi, perolehan, F1)
- Mesin Vektor Dukungan (klasifikasi margin besar)
- K-berarti
-Analisis Komponen Utama
- deteksi anomali
- pemfilteran kolaboratif (sistem pemberi rekomendasi)
- stokastik, mini-batch, penurunan gradien batch
- pembelajaran online
- pengurangan peta
- analisis plafon
Setelah menyelesaikan kursus, pemahaman tentang semua topik ini muncul. Setelah 2 tahun, hampir semuanya terlupakan secara alami. Saya merekomendasikannya kepada mereka yang belum terbiasa dengan pembelajaran mesin dan ingin memahami hal-hal dasar dengan baik untuk melanjutkan.

Jalankan pertama

Saat itu sudah bulan September dan sudah waktunya memikirkan wawancara. Karena melamar melalui situs ini cukup membawa malapetaka, saya mulai mencari teman yang bekerja di Google. Pilihan jatuh pada , karena hanya dialah satu-satunya yang saya kenal secara langsung (walaupun tidak secara pribadi). Dia setuju untuk meneruskan resume saya, dan segera saya menerima surat dari perekrut yang menawarkan untuk memesan tempat di kalendernya untuk percakapan pertama. Kami mencoba berkomunikasi melalui Hangouts, namun kualitasnya buruk, jadi kami beralih ke telepon. Pertama, kami segera membahas standar bagaimana, mengapa, dan mengapa, lalu beralih ke penyaringan teknis. Ini terdiri dari selusin pertanyaan dengan semangat “apa kesulitan memasukkan ke dalam peta hash”, “pohon seimbang apa yang Anda ketahui.” Tidak sulit jika Anda memiliki pengetahuan dasar tentang hal-hal tersebut. Pemutaran film berjalan dengan baik dan berdasarkan hasilnya, mereka memutuskan untuk mengadakan wawancara pertama dalam seminggu.

Wawancara juga dilakukan melalui Hangouts. Pertama mereka membicarakan saya sekitar 5 menit, lalu beralih ke masalahnya. Masalahnya ada pada grafik. Saya segera menyadari apa yang perlu dilakukan, tetapi saya memilih algoritma yang salah. Ketika saya mulai menulis kode, saya menyadari hal ini dan beralih ke opsi lain, yang saya selesaikan. Pewawancara mengajukan beberapa pertanyaan tentang kompleksitas algoritma dan menanyakan apakah hal itu dapat dilakukan lebih cepat. Saya entah bagaimana menjadi membosankan dan tidak bisa melakukannya. Pada titik ini, waktu telah habis dan kami mengucapkan selamat tinggal. Kemudian, setelah sekitar 10 menit, saya sadar bahwa alih-alih algoritma Dijkstra yang saya gunakan, dalam masalah khusus ini saya bisa menggunakan pencarian luas pertama, dan itu akan lebih cepat. Setelah beberapa waktu, perekrut menelepon dan mengatakan bahwa wawancara secara keseluruhan berjalan dengan baik dan wawancara berikutnya harus diselenggarakan. Kami sepakat untuk satu minggu lagi.

Kali ini segalanya menjadi lebih buruk. Kalau dulu pewawancara ramah dan mudah bergaul, kali ini agak murung. Saya tidak dapat langsung memecahkan masalahnya, meskipun ide-ide yang saya kemukakan, pada prinsipnya, dapat memberikan solusi. Pada akhirnya, setelah beberapa kali petunjuk dari pewawancara, solusinya datang kepada saya. Kali ini ternyata pencarian luas lagi, hanya dari beberapa titik. Saya menulis solusinya, menemuinya tepat waktu, tetapi lupa tentang kasus-kasus edge. Setelah beberapa waktu, perekrut menelepon dan mengatakan bahwa kali ini pewawancara tidak senang, karena menurutnya saya membutuhkan terlalu banyak petunjuk (3 atau 4 buah) dan saya terus-menerus mengubah kode saat menulis. Berdasarkan hasil dua kali wawancara, diputuskan untuk tidak melanjutkan, melainkan menunda wawancara berikutnya selama satu tahun, jika saya menginginkannya. Itu sebabnya kami mengucapkan selamat tinggal.

Dan dari cerita ini saya mengambil beberapa kesimpulan:

  • Teorinya bagus, tetapi Anda harus cepat menavigasinya
  • Teori tanpa praktek tidak akan membantu. Kita perlu memecahkan masalah dan menjadikan pengkodean menjadi otomatis.
  • Banyak hal bergantung pada pewawancara. Dan tidak ada yang bisa dilakukan mengenai hal itu.

Mempersiapkan putaran kedua

Setelah memikirkan situasinya, saya memutuskan untuk mencoba lagi dalam setahun. Dan sedikit mengedit tujuannya. Jika dulu tujuan utamanya adalah belajar, dan wawancara di Google ibarat wortel, kini lolos wawancara adalah tujuannya, dan belajar adalah sarananya.
Jadi, sebuah rencana baru dikembangkan, yang mencakup poin-poin berikut:
  • Terus pelajari teori dengan membaca buku dan artikel.
  • Memecahkan masalah algoritmik dalam jumlah 500-1000 buah.
  • Lanjutkan mempelajari teorinya dengan menonton video.
  • Terus belajar teori melalui kursus.
  • Pelajari pengalaman orang lain saat wawancara di Google.
Saya menyelesaikan rencana itu dalam waktu satu tahun. Selanjutnya saya akan menjelaskan apa sebenarnya yang saya lakukan untuk setiap poin.

Buku dan artikel

Saya bahkan tidak ingat berapa artikel yang saya baca; saya membacanya dalam bahasa Rusia dan Inggris. Mungkin situs yang paling berguna yang ini. Di sini Anda dapat menemukan deskripsi sejumlah besar algoritma menarik dengan contoh kode.

Saya membaca 5 buku: Algorithms, edisi ke-4 (Sedgewick, Wayne), Pengantar Algoritma Edisi ke-3 (Cormen, Leiserson, Rivest, Stein), Cracking the Coding Interview edisi ke-4 (Gayle Laakmann), Programming Interviews Expose edisi ke-2 (Mongan, Suojanen , Giguere), Elemen Wawancara Pemrograman (Aziz, Lee, Prakash). Mereka dapat dibagi menjadi 2 kategori. Yang pertama mencakup buku-buku karya Sedgwick dan Corman. Ini adalah sebuah teori. Selebihnya adalah persiapan wawancara. Sedgwick menceritakan hal yang sama di bukunya seperti di kursusnya. Hanya secara tertulis. Tidak ada gunanya membacanya dengan cermat jika Anda sudah mengikuti kursusnya, tetapi tetap ada baiknya membaca sekilas. Jika Anda belum menonton kursusnya, masuk akal untuk membacanya. Cormen tampak terlalu membosankan bagiku. Sejujurnya, saya kesulitan menguasainya. Aku baru saja mengeluarkannya dari sana teori utama, dan beberapa struktur data yang jarang digunakan (Fibonacci heap, van Emde Boas tree, radix heap).

Ada baiknya membaca setidaknya satu buku untuk mempersiapkan wawancara. Semuanya dibangun dengan prinsip yang kurang lebih sama. Mereka menggambarkan proses wawancara di perusahaan teknologi besar, memberikan hal-hal dasar dari Ilmu Komputer, permasalahan untuk hal-hal dasar tersebut, solusi masalah dan analisis solusi. Dari ketiga di atas, saya mungkin akan merekomendasikan Cracking the Coding Interview sebagai yang utama, dan sisanya opsional.

Masalah algoritma

Ini mungkin merupakan hal persiapan yang paling menarik. Anda tentu saja bisa duduk dan memecahkan masalah dengan bodohnya. Ada banyak situs berbeda untuk ini. Saya terutama menggunakan tiga: peringkat peretas , Koki Kode Dan Kode Leet. Di CodeChef, soal dibagi berdasarkan tingkat kesulitan, tetapi tidak berdasarkan topik. Di Hackerrank berdasarkan kompleksitas dan topik.

Namun setelah saya langsung mengetahuinya sendiri, ada cara yang lebih menarik. Dan ini adalah kompetisi (tantangan pemrograman atau kontes pemrograman). Ketiga situs menyediakannya. Benar, ada masalah dengan LeetCode - zona waktu yang tidak nyaman. Itu sebabnya saya tidak berpartisipasi di situs ini. Hackerrank dan CodeChef menyediakan kompetisi berbeda dalam jumlah yang cukup besar, berlangsung dari 1 jam hingga 10 hari. Format yang berbeda memiliki aturan yang berbeda, namun kita dapat membicarakannya untuk waktu yang lama. Poin utama mengapa kompetisi itu bagus adalah pengenalan elemen kompetitif (dan sekali lagi tautologi) ke dalam proses pembelajaran.

Secara total, saya mengikuti 37 kompetisi di Hackerrank. Dari jumlah tersebut, 32 merupakan peringkat, dan 5 disponsori (saya bahkan menerima $25 di salah satunya) atau untuk bersenang-senang. Dalam pemeringkatan saya berada di 4% teratas sebanyak 10 kali, di 12% teratas 11 kali, dan di 25% teratas 5 kali. Hasil terbaik adalah 27/1459 dalam 3 jam dan 22/9721 dalam seminggu.

Saya beralih ke CodeChef ketika Hackerrank mulai lebih jarang mengadakan kompetisi. Total saya berhasil mengikuti 5 kompetisi. Skor terbaik adalah 426/5019 dalam kompetisi sepuluh hari.

Secara total, di kompetisi dan begitu saja, saya memecahkan lebih dari 1000 masalah, yang sesuai dengan rencana. Sayangnya, saat ini tidak ada waktu luang untuk melanjutkan kegiatan kompetitif, sama seperti tidak ada tujuan untuk menghapuskan waktu luang tersebut. Tapi itu menyenangkan. Saya menyarankan mereka yang tertarik dengan hal ini menemukan orang yang berpikiran sama. Bersama-sama atau berkelompok jauh lebih menarik. Saya bersenang-senang dengan seorang teman, jadi mungkin itu berjalan dengan baik.

Tonton videonya

Setelah membaca buku Skiena, saya menjadi tertarik dengan apa yang dia lakukan. Seperti Sedgwick, dia adalah seorang profesor universitas. Dalam hal ini, video kursusnya dapat ditemukan online. Saya memutuskan untuk meninjau kursus tersebut COMP300E - Tantangan Pemrograman - HKUST 2009. Saya tidak bisa mengatakan bahwa saya sangat menyukainya. Pertama-tama, kualitas videonya tidak terlalu bagus. Kedua, saya tidak mencoba memecahkan sendiri masalah yang dibahas dalam kursus ini. Jadi keterlibatannya tidak terlalu tinggi.
Selain itu, ketika memecahkan masalah, mencoba menemukan algoritma yang tepat, saya menemukan video Tushar Roy. Dia bekerja di Amazon dan sekarang bekerja di Apple. Seperti yang kemudian saya ketahui sendiri, dia melakukannya saluran YouTube, di mana dia memposting analisis berbagai algoritma. Pada saat penulisan, saluran tersebut berisi 103 video. Dan saya harus mengatakan bahwa analisisnya dilakukan dengan sangat baik. Saya mencoba menonton penulis lain, tetapi entah bagaimana tidak berhasil. Jadi saya pasti dapat merekomendasikan saluran ini untuk ditonton.

Mengambil kursus

Saya tidak melakukan sesuatu yang istimewa di sini. Saya menonton video dari Nanodegree Pengembang Android Google dan mengikuti kursus dari ITMO Cara Memenangkan Kompetisi Coding: Rahasia Juara. Nanodegree cukup bagus, meskipun saya tentu saja tidak belajar sesuatu yang baru darinya. Kursus dari ITMO sedikit melenceng dari segi teori, tetapi permasalahannya menarik. Saya tidak akan merekomendasikan memulainya, tetapi pada prinsipnya ini adalah waktu yang dihabiskan dengan baik.

Belajar dari pengalaman orang lain

Tentu saja banyak orang yang mencoba masuk ke Google. Ada yang masuk, ada yang tidak. Beberapa telah menulis artikel tentang ini. Dari hal-hal menarik, mungkin saya akan menyebutkan yang ini dan yang ini. Dalam kasus pertama, orang tersebut menyiapkan sendiri daftar apa yang perlu dia pelajari untuk menjadi Insinyur Perangkat Lunak dan masuk ke Google. Itu akhirnya berakhir di Amazon, tapi itu tidak penting lagi. Manual kedua ditulis oleh insinyur Google, Larisa Agarkova (). Selain dokumen ini, Anda juga bisa membaca blognya.

Putaran kedua

Dan sekarang satu tahun telah berlalu. Ternyata sangat intens dalam hal belajar. Namun saya mendekati musim gugur yang baru dengan pengetahuan teoretis yang lebih dalam dan mengembangkan keterampilan praktis. Masih ada beberapa minggu tersisa sebelum akhir tahun yang diberikan kepada saya untuk persiapan, ketika tiba-tiba sepucuk surat dari perekrut Google masuk ke pos, di mana dia bertanya apakah saya masih memiliki keinginan untuk bekerja di Google dan apakah saya akan melakukannya. Saya keberatan berbicara dengannya. Tentu saja, saya tidak keberatan. Kami sepakat untuk menelepon dalam seminggu. Mereka juga meminta saya untuk memperbarui resume, dan saya menambahkan deskripsi singkat tentang apa yang telah saya lakukan selama setahun di tempat kerja dan secara umum.

Setelah berkomunikasi seumur hidup, kami memutuskan seminggu lagi akan ada wawancara Hangout, seperti tahun lalu. Seminggu berlalu, tiba waktunya wawancara, namun pewawancara tidak juga muncul. 10 menit berlalu, aku sudah mulai gugup, tiba-tiba ada yang menghambur dalam obrolan. Ternyata beberapa saat kemudian, pewawancara saya karena alasan tertentu tidak dapat hadir dan penggantinya segera ditemukan. Orang tersebut agak tidak siap baik dalam hal menyiapkan komputer maupun dalam melakukan wawancara. Tapi kemudian semuanya berjalan baik. Saya memecahkan masalah dengan cepat, menjelaskan di mana kendala mungkin terjadi, dan bagaimana cara menghindarinya. Kami membahas beberapa versi masalah yang berbeda dan kompleksitas algoritmanya. Kemudian kami berbicara selama 5 menit lagi, insinyur tersebut menceritakan kesannya bekerja di Munich (tampaknya mereka tidak menemukan pengganti yang mendesak di Zurich), dan kemudian kami berpisah.

Di hari yang sama, perekrut menghubungi saya dan mengatakan bahwa wawancara berjalan dengan baik dan mereka siap mengundang saya untuk wawancara di kantor. Keesokan harinya kami menelepon melalui Hangouts dan mendiskusikan detailnya. Karena saya perlu mengajukan visa, kami memutuskan untuk menjadwalkan wawancara dalam sebulan.

Saat saya menyiapkan dokumen, saya sekaligus mendiskusikan wawancara yang akan datang dengan perekrut. Wawancara standar di Google terdiri dari 4 wawancara algoritmik dan satu wawancara Desain Sistem. Namun, sejak saya melamar pekerjaan sebagai pengembang Android, saya diberitahu bahwa bagian dari wawancara tersebut akan spesifik untuk Android. Saya tidak dapat menjelaskan kepada perekrut apa sebenarnya dan apa spesifiknya. Sejauh yang saya mengerti, ini diperkenalkan relatif baru dan dia sendiri tidak terlalu menyadarinya. Saya juga mendaftar untuk dua sesi pelatihan: cara lulus wawancara algoritmik dan cara lulus wawancara Desain Sistem. Sesi-sesi tersebut memiliki kegunaan yang rata-rata. Di sana juga, tidak ada yang bisa memberi tahu saya apa yang ditanyakan pengembang Android. Oleh karena itu, persiapan saya untuk bulan ini adalah sebagai berikut:

  • Membeli papan penanda dan menulis 2-3 lusin algoritma paling populer dari memori. 3-5 buah setiap hari. Totalnya, masing-masing ditulis beberapa kali.
  • Segarkan ingatan Anda dengan berbagai informasi di Android yang tidak Anda gunakan setiap hari
  • Menonton beberapa video tentang Skala Besar dan sejenisnya
Seperti yang sudah saya katakan, pada saat yang sama saya sedang mempersiapkan dokumen untuk perjalanan. Awalnya mereka meminta informasi kepada saya untuk membuat surat undangan. Kemudian saya mencoba lama sekali untuk mencari tahu siapa di Siprus yang mengeluarkan visa ke Swiss, karena kedutaan Swiss tidak menangani hal ini. Ternyata, konsulat Austria yang melakukan hal tersebut. Saya menelepon dan membuat janji. Mereka meminta banyak dokumen, tapi tidak ada yang menarik. Foto, paspor, izin tinggal, berbagai sertifikat dan, tentu saja, surat undangan. Sementara suratnya tidak sampai. Pada akhirnya, saya menggunakan cetakan biasa dan hasilnya cukup baik. Surat itu sendiri tiba 3 hari kemudian, dan FedEx Siprus tidak dapat menemukan alamat saya dan saya harus mengambilnya sendiri. Pada saat yang sama, saya menerima parsel dari FedEx yang sama, yang juga tidak dapat dikirimkan kepada saya, karena mereka tidak menemukan alamatnya, dan sudah tergeletak di sana sejak Juni (5 bulan, Karl). Saya mengetahuinya, itu wajar dan tidak. Saya berasumsi bahwa mereka mendapatkannya. Saya menerima visa tepat waktu, setelah itu mereka memesankan saya hotel dan menawari saya opsi penerbangan agar lebih nyaman. Tidak ada lagi penerbangan langsung, dan masuk akhirnya saya terbang ke sana melalui Athena dan kembali melalui Wina.

Setelah semua formalitas perjalanan diselesaikan, beberapa hari berlalu dan saya benar-benar terbang ke Zurich. Sampai di sana tanpa insiden. Dari bandara ke kota saya naik kereta - dengan cepat dan nyaman. Setelah berkeliling kota sebentar, saya menemukan hotel dan check in. Karena hotel dipesan tanpa makanan, saya makan malam di sebelah dan pergi tidur, karena penerbangannya pagi dan saya sudah ingin tidur. Keesokan harinya saya sarapan di hotel (untuk uang tambahan) dan pergi ke kantor Google. Google memiliki beberapa kantor di Zurich. Wawancara saya bukan yang utama. Dan secara umum, kantor tersebut terlihat biasa saja, jadi saya tidak sempat melihat semua kelebihan dari kantor Google yang “normal”. Saya mendaftar ke administrator dan duduk menunggu. Setelah beberapa waktu, perekrut keluar dan memberi tahu saya rencana hari itu, setelah itu dia membawa saya ke ruangan tempat wawancara akan dilakukan. Sebenarnya rencananya termasuk 3 wawancara, makan siang dan 2 wawancara lagi.

Wawancara nomor satu

Wawancara pertama baru saja di Android. Dan itu sama sekali tidak ada hubungannya dengan algoritma. Tapi kejutan. Baiklah, cara ini bahkan lebih umum. Kami diminta membuat komponen UI tertentu. Pertama kita bahas apa dan bagaimana. Dia menawarkan untuk membuat solusi menggunakan RxJava, menjelaskan apa sebenarnya yang akan dia lakukan dan mengapa. Mereka bilang ini pasti bagus, tapi mari kita lakukan dengan menggunakan framework Android. Dan pada saat yang sama kita akan menulis kodenya di papan tulis. Dan bukan hanya sebuah komponen, tetapi seluruh Aktivitas yang menggunakan komponen ini. Inilah yang saya belum siap. Menulis algoritme 30-50 baris di papan tulis adalah satu hal, dan menulis mie kode Android adalah satu hal, bahkan dengan singkatan dan komentar dengan semangat "baiklah, saya tidak akan menulis itu, karena sudah jelas." Hasilnya semacam vinaigrette untuk 3 papan. Itu. Saya memecahkan masalahnya, tetapi tampaknya bodoh.

Wawancara nomor dua

Wawancara kali ini tentang algoritma. Dan ada dua pewawancara. Salah satunya adalah pewawancara sebenarnya, dan yang kedua adalah padawan muda (pewawancara bayangan). Penting untuk membuat struktur data dengan properti tertentu. Pertama, kita membahas masalahnya seperti biasa. Saya mengajukan pertanyaan berbeda, pewawancara menjawab. Setelah beberapa waktu, mereka diminta untuk menuliskan beberapa metode struktur yang ditemukan di papan tulis. Kali ini saya kurang lebih berhasil, meskipun dengan beberapa kesalahan kecil, yang saya perbaiki atas dorongan pewawancara.

Wawancara nomor tiga

Kali ini System Design yang tiba-tiba ternyata juga Android. Penting untuk mengembangkan aplikasi dengan fungsionalitas tertentu. Kami membahas persyaratan untuk aplikasi, server, dan protokol komunikasi. Selanjutnya saya mulai menjelaskan komponen atau perpustakaan apa yang akan saya gunakan ketika membangun aplikasi. Lalu, saat menyebut Penjadwal Pekerjaan, terjadi kebingungan. Intinya saya tidak pernah menggunakannya dalam praktek, karena pada saat dirilis saya baru beralih ke aplikasi pendukung yang belum ada tugas untuk penggunaannya. Hal yang sama terjadi ketika mengembangkan yang berikutnya. Artinya, secara teori, saya tahu benda apa itu, kapan dan bagaimana penggunaannya, tapi saya tidak punya pengalaman dalam menggunakannya. Dan pewawancara sepertinya tidak terlalu menyukainya. Kemudian mereka meminta saya untuk menulis beberapa kode. Ya, saat mengembangkan aplikasi Anda perlu segera menulis kode. Sekali lagi kode Android di papan. Ternyata menakutkan lagi.

Makan malam

Orang lain seharusnya datang, tapi dia tidak datang. Dan Google membuat kesalahan. Hasilnya, saya pergi makan siang bersama pewawancara sebelumnya, rekannya, dan tak lama kemudian pewawancara berikutnya bergabung. Makan siangnya cukup lumayan. Sekali lagi, karena ini bukan kantor utama di Zurich, ruang makannya terlihat biasa saja, meski sangat bagus.

Wawancara nomor empat

Terakhir, algoritma dalam bentuknya yang paling murni. Saya memecahkan masalah pertama dengan cukup cepat dan efektif, meskipun saya melewatkan satu kasus kecil, tetapi atas perintah pewawancara (dia memberikan kasus kecil ini) saya menemukan masalahnya dan memperbaikinya. Tentu saja, saya harus menulis kodenya di papan tulis. Kemudian tugas serupa diberikan, namun lebih sulit. Untuk itu, saya menemukan beberapa solusi non-optimal dan hampir menemukan solusi optimal, 5-10 menit tidak cukup untuk menyelesaikan pemikiran tersebut. Ya, saya tidak punya waktu untuk menulis kodenya.

Wawancara nomor lima

Dan lagi wawancara Android. Saya bertanya-tanya mengapa saya mempelajari algoritma sepanjang tahun?
Awalnya ada beberapa pertanyaan sederhana. Kemudian pewawancara menulis kode di papan tulis dan meminta untuk menemukan permasalahan di dalamnya. Menemukannya, menjelaskannya, memperbaikinya. Dibahas. Dan kemudian beberapa pertanyaan tak terduga dimulai dalam semangat “apa yang dilakukan metode Y di kelas X”, “apa yang ada di dalam metode Y”, “apa yang dilakukan kelas Z”. Tentu saja, saya menjawab sesuatu, tetapi kemudian saya berkata bahwa saya belum pernah menemukan hal ini dalam pekerjaan saya akhir-akhir ini dan tentu saja saya tidak ingat secara detail siapa melakukan apa dan bagaimana. Setelah itu, pewawancara menanyakan apa yang saya lakukan sekarang. Dan pertanyaannya berlanjut pada topik ini. Saya sudah menjawab jauh lebih baik di sini.

Setelah wawancara terakhir berakhir, mereka mengambil izin saya, mendoakan semoga saya beruntung dan menyuruh saya berangkat. Saya berjalan-jalan keliling kota sebentar, makan malam dan pergi ke hotel, tempat saya tidur, karena penerbangan lagi pagi-pagi sekali. Keesokan harinya saya tiba dengan selamat di Siprus. Atas permintaan perekrut, saya menulis tanggapan wawancara dan mengisi formulir di layanan khusus untuk mengembalikan uang yang dikeluarkan. Dari seluruh biaya, Google langsung hanya membayar tiket. Hotel, makanan, dan perjalanan ditanggung oleh kandidat. Kemudian kami mengisi formulir, melampirkan kuitansi dan mengirimkannya ke kantor khusus. Mereka memprosesnya dan mentransfer uang ke rekening dengan cukup cepat.

Butuh waktu satu setengah minggu untuk memproses hasil wawancara. Setelah itu saya diberitahu bahwa saya “sedikit di bawah standar.” Artinya, saya sedikit gagal. Lebih khusus lagi, 2 wawancara berjalan dengan baik, 2 wawancara kurang baik, dan Desain Sistem kurang baik. Nah, kalau minimal 3 sudah berjalan dengan baik, maka kita bisa bersaing, kalau tidak, tidak ada peluang. Mereka menawarkan untuk kembali lagi satu tahun lagi.

Pada awalnya, tentu saja saya kesal, karena banyak usaha yang telah dikeluarkan untuk persiapan, dan pada saat wawancara saya sudah berpikir untuk meninggalkan Siprus. Bergabung dengan Google dan pindah ke Swiss sepertinya merupakan pilihan yang bagus.

Kesimpulan

Dan di sinilah kita sampai pada bagian terakhir artikel ini. Ya, saya gagal dalam wawancara Google dua kali. Ini menyedihkan. Mungkin akan menarik untuk bekerja di sana. Tapi, Anda bisa melihat masalah ini dari sisi lain.
  • Dalam satu setengah tahun, saya belajar banyak hal terkait pengembangan perangkat lunak.
  • Saya sangat senang berpartisipasi dalam kompetisi pemrograman.
  • Saya pergi ke Zurich selama beberapa hari. Kapan saya akan pergi ke sana lagi?
  • Saya memiliki pengalaman wawancara yang menarik di salah satu perusahaan IT terbesar di dunia.
Jadi, segala sesuatu yang terjadi selama satu setengah tahun ini bisa dianggap sebagai pelatihan, atau pelatihan. Dan hasil dari pelatihan ini sangat terasa. Ide saya untuk meninggalkan Siprus sudah matang (karena beberapa keadaan keluarga), saya berhasil melewati beberapa wawancara dengan perusahaan terkenal lainnya dan pindah setelah 8 bulan. Tapi itu cerita yang sama sekali berbeda. Namun, saya rasa saya tetap harus berterima kasih kepada Google atas satu setengah tahun saya bekerja sendiri, dan untuk 2 hari yang menarik di Zurich.

Apa yang akhirnya bisa saya katakan? Jika Anda bekerja di bidang IT, persiapkan diri Anda untuk wawancara di Google (Amazon, Microsoft, Apple, dll). Mungkin suatu hari nanti Anda akan pergi ke sana untuk sampai ke sana. Meski Anda tidak mau, percayalah, persiapan seperti itu tidak akan memperburuk keadaan Anda. Saat Anda menyadari bahwa Anda bisa (walaupun hanya dengan keberuntungan) mendapatkan wawancara dengan salah satu perusahaan ini, lebih banyak jalan yang terbuka bagi Anda daripada sebelum Anda memulai persiapan. Dan yang Anda butuhkan sepanjang perjalanan hanyalah tujuan, ketekunan, dan waktu. Saya berharap Anda sukses :)

Selama wawancara di Google, pelamar kerja secara rutin ditanyai pertanyaan-pertanyaan yang sangat sulit dan benar-benar mengejutkan mereka. Cobalah untuk menjawabnya juga.

Berapa banyak uang yang Anda keluarkan untuk membersihkan semua jendela di Seattle? Ini adalah salah satu pertanyaan di mana Anda harus cerdik dan memberikan jawaban yang paling sederhana. Katakanlah $10 per jendela.

Berapa banyak penyetel piano di dunia? Itu semua tergantung kebutuhan jasa adjuster. Jika sebuah piano perlu disetel seminggu sekali, dan memakan waktu satu jam, dan penyetem bekerja 8 jam sehari selama 5 hari seminggu, maka dia dapat menyetel 40 piano setiap minggu. Jawaban: satu tuner untuk setiap 40 piano.


Mengapa penutup lubang got berbentuk bulat? Bentuk penutup yang bulat memastikan bahwa penutup itu sendiri tidak akan jatuh ke dalam palka selama pemasangan atau pembongkaran (penutup persegi panjang dengan mudah masuk ke dalam badan palka secara diagonal).

Bisakah Anda mengembangkan rencana untuk mengevakuasi San Francisco? Pertanyaan aneh lainnya. Dan semua itu demi mengetahui apa yang akan ditawarkan pemohon sebagai solusi atas permasalahan tersebut. Alangkah baiknya jika menjawab pertanyaan tersebut dengan pertanyaan: “Bencana apa yang direncanakan hari ini?”


Berapa kali dalam sehari jarum jam bersilangan? Jawaban: 22 kali
00:00
1:05
2:11
3:16
4:22
5:27
6:33
7:38
8:44
9:49
10:55
12:00
13:05
14:11
15:16 16:22
17:27
18:33
19:38
20:44
21:49
22:55

Anda perlu memastikan bahwa Bob telah menuliskan nomor telepon Anda dengan benar... ...tetapi Anda tidak dapat menanyakannya secara langsung. Anda perlu menulis catatan untuknya dan memberikannya kepada Eve, yang akan memberikannya kepada Bob dan memberikan jawaban darinya. Apa yang akan Anda tulis di catatan agar Bob mengerti apa yang Anda inginkan darinya, dan Eve tidak bisa mengetahui nomor telepon Anda?
Karena Anda baru saja "melapor masuk", pesan tersebut hanya meminta dia menelepon Anda pada waktu tertentu. Jika dia menelepon, berarti nomor Anda sudah tercatat dengan benar.
Terlalu mudah? Anda dapat menjawab dengan cara lain: Anda perlu menggunakan checksum. Dalam catatan tersebut, mintalah Bob untuk menjumlahkan semua digit nomor telepon Anda dan menuliskan hasilnya di selembar kertas. Saat Eve memberikan jawabannya, Anda hanya perlu memeriksa jumlah yang diterima.


Anda adalah kapten kapal bajak laut... ...dan kru Anda akan memilih cara membagi emas yang dicuri. Jika kurang dari separuh bajak laut setuju dengan Anda, Anda akan mati. Bagaimana cara membagi emas agar mendapat bagian hasil jarahan yang banyak, namun tetap hidup?
Jawaban: Penjarahan harus dibagi secara merata kepada 51% seluruh tim.

Anda mempunyai 8 bola dengan ukuran yang sama... ... 7 di antaranya memiliki berat yang sama, dan satu bola berbobot sedikit lebih berat dari yang lain. Bisakah kamu menemukan bola yang lebih berat dari bola lainnya hanya dengan menggunakan timbangan dua kali?
Ambil 6 dari 8 bola dan tempatkan 3 pada setiap skala.
Jika tidak ada bola yang berat di grup ini, maka tidak ada mangkuk yang lebih berat. Sekarang yang harus Anda lakukan adalah menimbang sisa 2 bola dan menyelesaikan masalahnya.
Jika salah satu mangkuk yang berisi 3 bola lebih berat dari mangkuk lainnya, berarti ada bola berat di dalam mangkuk tersebut. Ambil 3 bola dari mangkuk kelebihan berat badan dan letakkan dua di antaranya di timbangan. Jika salah satunya lebih besar daripadanya, itu adalah bola yang Anda cari. Jika beratnya sama, maka bola yang Anda sisihkan adalah bola berat yang harus Anda cari.

Bisakah Anda menjelaskan dalam tiga kalimat apa itu database bagi keponakan Anda yang berusia 8 tahun? Inti dari pertanyaan tersebut adalah untuk menguji apakah pelamar mampu berbicara tentang konsep yang kompleks dalam bahasa yang sederhana. Jawabannya mungkin: “Database adalah komputer yang mengingat banyak informasi tentang berbagai hal. Orang-orang menggunakannya jika ada yang membutuhkan informasi ini. Sekarang pergilah bermain di luar.”

Anda telah diperkecil menjadi seukuran nikel... ...dan massa Anda telah berkurang secara proporsional dengan kepadatan aslinya. Anda kemudian dimasukkan ke dalam toples blender kosong. Pisau akan mulai bergerak setelah 60 detik. Apa tindakanmu?
Pertanyaan ini menilai inisiatif pelamar. Hal terbaik yang dapat Anda lakukan dalam situasi seperti ini bukanlah dengan berdiam diri di dalam blender, tetapi mencoba merusak motor listrik.

Apakah Anda mengira setelah menerima ijazah Anda tidak perlu lagi menyelesaikan masalah? Tidak begitu! Pengusaha senang menanyakan tugas dan teka-teki yang berbeda. Jadi jangan santai! Masalah perekrutan adalah masalah terpenting setelah menerima ijazah. Tentu saja, setiap orang berusaha untuk mencari pekerjaan yang mereka sukai. Apakah Anda bersiap-siap untuk memutuskan pekerjaan? Mari kita lihat tantangan apa saja yang mungkin dihadapi kandidat saat melakukan wawancara di perusahaan besar ternama. Dan pada saat yang sama kita akan melatih pemikiran logis.

Jika Anda akan segera melakukan wawancara: baca artikel kami tentang bagaimana berperilaku ketika berbicara dengan HR.

Tugas apa yang mungkin ditanyakan kepada Anda selama wawancara?

Tugas logis saat wawancara. Tugas-tugas seperti ini sering ditemui dalam wawancara dan dapat ditawarkan baik dalam format teks atau sebagai tes. Pengusaha sering kali memilih tugas yang berbeda tergantung pada spesialisasi di mana karyawan tersebut dipekerjakan. Sangat sering, spesialis TI dan penjualan dihadapkan pada masalah logis saat merekrut.


Soal matematika untuk wawancara. Biasanya, soal-soal seperti itu membutuhkan pengetahuan dasar matematika. Kebanyakan soal wawancara matematika tidak melibatkan pengambilan integral rangkap tiga atau penyelesaian persamaan diferensial parsial. Meski jarang ada pengecualian.

Ngomong-ngomong, baca tentang cara menyelesaikan sistem persamaan linear di artikel terpisah kami.

Tugas analitis. Tugas-tugas ini adalah semacam sintesis masalah matematika dan logika. Subjek diminta untuk mempertimbangkan kasus tersebut, mengevaluasi semua keadaan, mengidentifikasi kekuatan dan kelemahan, dan kemudian mengambil keputusan mengenai situasi yang dijelaskan.

Tugas dan pertanyaan non-standar. Tugas-tugas seperti itu memerlukan pemikiran logis, tetapi tidak hanya itu! Untuk mengatasinya, Anda harus mengambil pendekatan non-standar dan melihat situasi dari sudut yang berbeda.

Tugas wawancara

Dan sekarang untuk perhatian Anda 5 tugas logis yang memerlukan pendekatan non-standar dan pemikiran logis. Cobalah untuk menyelesaikannya sendiri, lalu lihat jawabannya.

Tugas wawancara Google

Google suka menguji kemampuan Anda untuk berpikir di luar kotak. Berikut salah satu tugas yang ditanyakan saat melamar pekerjaan di Google.

Ada skala dan 8 bola dengan jenis dan ukuran yang sama. Salah satunya lebih berat dari yang lain. Temukan bola yang lebih berat. Penimbangan hanya dapat dilakukan 2 kali.


Menjawab: Pertama, Anda perlu membagi semua bola menjadi tiga kelompok. Dalam dua kelompok - masing-masing 3 bola, dan dalam satu - 2 . Pertama, kita letakkan tiga bola di satu loyang timbangan, dan tiga bola di loyang lainnya. Grup dengan bola berat akan lebih besar daripadanya. Lalu kami menimbang dua bola mana pun dari kelompok ini. Jika berat bola sama, maka yang tersisa adalah yang berat.

Jika kelompok 3 bola memiliki berat yang sama, maka Anda perlu menimbang dua bola yang tersisa dan mencari yang berat.

Tugas wawancara Adobe

Untuk mendapatkan pekerjaan di Adobe, tunjukkan kemampuan berpikir logis.

Sheldon Cooper berdiri di depan dua pintu. Satu pintu mengarah ke harta karun, dan pintu kedua menuju labirin di mana dia, Sheldon, pasti akan tersesat dan menghilang. Ada penjaga di setiap pintu. Setiap penjaga tahu ke mana arah pintunya, tapi salah satu dari mereka selalu mengatakan yang sebenarnya, dan yang kedua selalu berbohong. Apa yang harus Sheldon tanyakan kepada penjaga untuk mengetahui pintu mana yang menuju ke harta karun itu? Anda hanya dapat mengajukan satu pertanyaan kepada satu penjaga.


Menjawab: Sheldon dapat bertanya kepada penjaga mana pun: pintu mana, menurut pendapat orang lain, yang benar, yaitu menuju ke harta karun? Jika Anda bertanya kepada penjaga yang jujur, dia akan menunjuk ke pintu kanan. Penjaga lain akan berbohong tentang pintu yang ditunjuk oleh penjaga yang jujur, dengan demikian juga menunjuk ke pintu kanan.

Omong-omong! Untuk pembaca kami sekarang ada diskon 10%.

Tugas wawancara Microsoft

Membayangkan: ada persediaan air yang tidak terbatas dan dua ember 5 Dan 3 liter Bagaimana mengukurnya dengan menggunakannya 4 liter?


Menjawab: Boyce Willis diberi tugas yang sama di Die Hard 3 . Hanya nyawa yang dipertaruhkan di sana, bukan pekerjaan.

Ambil dan isi ember berukuran lima liter. Kami mengisi ember tiga liter darinya. Tetap dalam ember besar 2 liter Kemudian kami mengosongkan ember kecil dan menuangkan dua liter dari ember besar ke dalamnya. Isi ember besar lagi. Kami mengisi ember kecil darinya, menambahkan satu liter. Tetap dalam ember besar 4 liter

Hanya tantangan kecerdikan

Pertanyaan wawancara populer:Mengapa lubang saluran pembuangan berbentuk bulat?


Menjawab: Ini sangat sederhana. Tutupnya dibuat bulat agar tidak jatuh ke dalam palka saat dibuka. Omong-omong, lingkaran adalah bentuk penutup lubang got yang paling umum, tetapi ada juga penutup segitiga.

Contoh tugas non-standar dari Google

Inilah tugas wawancara Google lainnya:

Berapa banyak bola golf yang dapat ditampung dalam bus sekolah?


Menjawab: Tidak ada jawaban yang jelas untuk masalah ini. Yang penting adalah arah keputusan dan pemikiran. Berdasarkan kenyataan yang ada, kita dapat merumuskan kembali kondisi tersebut dan bertanya: berapa banyak samovar yang dapat ditampung dalam sebuah Lada. Esensinya akan tetap sama.

Anda perlu membayangkan secara kasar dimensi bus, mengetahui jari-jari bola golf, menghitung volumenya, memperhitungkan kesalahan saat menghitung volume bus dan memberikan perkiraan jawaban.

Soal matematika untuk wawancara

Berikut soal matematika populer yang mungkin Anda temui saat melamar pekerjaan:

B0 0.00 Hujan sudah turun selama berjam-jam. Apakah ada kemungkinan setelahnya 72 Apakah cuaca akan cerah?


Menjawab: Dengan bantuan operasi matematika sederhana Anda dapat memahaminya TIDAK. 72 jam - tepat tiga hari. Artinya setelah waktu tersebut akan kembali tengah malam dan tidak mungkin ada cuaca cerah.

Kami berharap Anda memiliki pemikiran non-standar dan kerja keras kedua belahan otak, yang akan membantu Anda menjawab semua pertanyaan non-standar saat wawancara dengan benar. Dan jika Anda tiba-tiba membutuhkan bantuan dalam menyelesaikan masalah, hubungi mereka yang selalu dalam kesiapan tempur penuh.