Cracking the Coding Interview’dan Notlar: Bölüm 1 — Mülakat Süreci

Büşra Demirci
12 min readFeb 25, 2018

--

Hem yazılım geliştiriciler hem de onları işe almak isteyen şirketler için çok sayıda faydalı bilgiye yer verilen Cracking the Coding Interview kitabını okurken aldığım notların düzenlenmiş hallerini paylaşacağım yazı dizisine hoş geldiniz.

Yazar (Gayle Laakmann McDowell) konuya işe alım süreçleriyle ilgili çok önemli bilgilerden bahsederek giriyor. Başta bu bölümlerin sıkıcı gelebileceğinden çekindim ama sonra bu bölümleri de paylaşmaya karar verdim, çünkü pek çok güzel bakış açısı içeriyorlardı. İlk bir kaç bölüm bu şekilde devam edecek ve ardından teknik konulara girişeceğiz…

Hadi başlayalım!

En iyi teknoloji şirketlerinin bir çoğunda algoritma ve kodlama problemleri, görüşme sürecinin en büyük kısmını oluşturur. Görüşmeci, daha önce görmediğiniz algoritma problemlerini çözme becerinizi değerlendirmek ister.

Çoğu zaman, mülakatlarda yalnızca bir problem sorulur. Problemi çözerken yüksek sesle konuşmaya ve düşünce sürecinizi açıklamaya gayret etmelisiniz. Görüşmeyi yapan bazen size yardım etmek isteyebilir; bırakın etsinler. Bu normal bir durumdur ve kötü gittiğiniz anlamına gelmez.

Mülakatı yapan performansınızı genel olarak aşağıdakilere göre değerlendirecektir:

  • Analitik beceriler: Problemi çözerken ne kadar yardıma ihtiyacınız oldu? Çözümünüz ne kadar optimaldi? Bu çözümü bulmanız ne kadar sürdü? Yeni bir çözüm tasarlamak zorunda kaldıysanız, farklı kararların artılarını/eksilerini değerlendirdiniz mi?
  • Kodlama becerileri: Algoritmanızı başarıyla koda dökebildiniz mi? Temiz ve iyi düzenlenmiş miydi (bkz: Clean Code)? Olası hataları düşündünüz mü?
  • Bilgisayar bilimleri temelleri: Bilgisayar bilimlerinde ve ilgili teknolojilerde güçlü bir temeliniz var mı?
  • Deneyim: Geçmişte iyi teknik kararlar aldınız mı? İlginç, zorlayıcı projeler gerçekleştirdiniz mi?
  • Kültür uyumu / iletişim becerileri: Kişiliğiniz ve değerleriniz şirket ve ekiple uyumlu mu? Görüşmeciyle iyi iletişim kurdunuz mu?

Bu alanların ağırlıklandırılması soruya, görüşmeyi yapana, başvurulan role, ekibe ya da şirkete göre değişiklik gösterecektir. Standart bir algoritma sorusunda çoğunlukla sadece ilk üçüne bakılır.

Neden?

Peki neden bu şekilde olmalı? En nihayetinde,

  1. Çok iyi adayların bir çoğu bu tür mülakatlarda iyi sonuç çıkaramaz.
  2. Gerçek dünyada ikili arama ağaçları (binary search tree) gibi veri yapılarını nadiren kullanmak zorunda kalırsınız. Eğer ihtiyacınız olsaydı, kesinlikle öğrenirdiniz.
  3. Gerçek dünyada asla beyaz tahtada kod yazmazsınız.

Bu şikayetlerde haksız sayılmazsınız. Aslında, kısmen de olsa hepsine katılıyorum. Ancak, görüşmeyi yapanların bakış açısını anlamak iyi bir fikirdir:

Bazı iyi adaylar elden kaçabilir

Bu üzücü ve bazı adaylar için de sinir bozucudur; ancak doğrudur. Şirket açısından bakıldığında, bazı iyi adayların reddedilmesi (false negative) kabul edilebilir. Hala iyi adayları işe alabildikleri sürece, kaçırdıkları adaylar kabul edilebilir bir risktir. Şirketlerin daha öncelikli amaçları şu adayları işe almamaktır: Mülakatta iyi yapan ama aslında pek de iyi olmayan adaylar (false positive).

Problem çözme becerileri değerlidir

Birkaç zor problemle baş edebiliyorsanız (belki de biraz yardımla), muhtemelen optimal algoritmalar geliştirme konusunda oldukça iyisinizdir. Bu akıllı olduğunuz anlamına gelir ve akıllı insanlar iyi şeyler yapma eğilimindedir. Bu da bir şirket için oldukça değerli bir şeydir.

Temel veri yapısı ve algoritma bilgisi faydalıdır

Görüşmeyi yapan kişilerin bir çoğu, temel bilgisayar bilimi bilgisinin yararlı olduğunu iddia eder. Elbette bu bilgiler gerektiğinde öğrenilebilir, fakat varlığından habersizseniz, herhangi bir probleminizi çözerken, mesela, bir ikili arama ağacı (binary search tree) kullanmanız gerektiğini de bilmezsiniz. Ve varlığından haberdarsanız, o zaman hemen hemen temellerini de bilirsiniz.

Ayrıca, problem çözme becerilerini ölçen sorular genelde bu temel konular üzerinden sorulur.

Beyaz tahtalar önemli olana odaklanmanızı sağlar

Görüşmeyi yapanlar beyaz tahtada mükemmel bir kod yazmanızı beklemez. Neredeyse herkesin hataları (bug) veya küçük sözdizimsel (syntactical) yanlışları vardır.

Beyaz tahtadaki güzel şey, bazı açılardan büyük resme odaklanabilmenizdir. Bir derleyiciniz yok ve kodunuzu derlemeniz de gerekmez. Sınıfın tanımını tümüyle yazmanız gerekmez. Sorunun çözümü olan fonksiyona odaklanmanız gerekir.

Bu yalnızca sözde kod (pseudocode) yazmanız gerektiği veya kodun doğruluğunun bir önemi olmadığı anlamına gelmez. Görüşmecinin beklentisi genelde sözde kod değildir ve daha az hata sizin için daha iyidir. Beyaz tahta, adayları daha çok konuşmaya ve düşünce süreçlerini açıklamaya teşvik eder. Adaya bir bilgisayar verildiğinde, iletişim önemli ölçüde düşer.

Sorular nasıl seçilir?

Adaylar sıklıkla görüşecekleri şirketin son zamanlarda mülakatlarda neler sorduğunu öğrenmek isterler. Sadece bu sorunun sorulması bile, soruların nereden geldiğine dair temel bir yanlış anlaşılma olduğunu ortaya koyar.

Şirketlerin büyük çoğunluğunda, görüşmeyi yapanların “sorulması gereken sorular” diye bir listesi olmaz. Daha ziyade, her görüşmeci kendi sorularını seçer.

Bu sene Google’da sorulan sorular üç yıl önce sorulanlardan farklı değildir. Hatta, Google’da sorulan sorular genellikle benzer şirketlerde (Amazon, Facebook vb.) sorulanlardan da farklı değildir. Bazı şirketler algoritmalara, bazıları da gerçekten bilgi temelli sorulara odaklanırlar. Sorular içerisinde, bir soruyu gerçekten bir şirkete “ait” yapan çok az şey vardır. Bir Google algoritması sorusu aslında bir Facebook algoritması sorusu ile aynıdır.

Eğer bir değerlendirme sistemi yoksa, nasıl değerlendirilirsiniz? Bir görüşmeci, sizden neyi bekleyeceğini nereden bilir? Güzel soru. Bir kere anladığınızda, cevap aslında çok mantıklı.

Görüşmeyi yapanlar, sizi aynı sorudaki diğer adaylara göre değerlendirir. Bu göreceli bir karşılaştırmadır.

Örneğin, öncekilerden farklı, yeni bir zeka sorusu veya matematik probleminin geldiğini varsayalım. Soru Alex’e soruluyor, çözmesi 30 dakikayı buluyor. Bella’ya soruluyor, 50 dakikayı buluyor. Chris ise hiç çözemiyor. Dexter 15 dakikada çözüyor ancak verilen büyük ipuçları sayesinde ve onlar olmadan büyük ihtimalle çok daha uzun sürede çözecekti. Ellie 10 dakikada çözüyor ve farkında bile olmadığınız alternatif bir yaklaşımla çıkageliyor. Fred 35 dakikada çözüyor.

Burada “Ellie gerçekten çok iyi iş çıkardı, eminim matematikte çok iyidir!” diye düşüneceksiniz. Ve belki Chris şanssızdı. Gerçekten iyi ya da kötü şans olmadığından emin olmak için birkaç soru daha sorabilirsiniz.

Görüştüğünüz kişi sizi başkaları ile karşılaştırarak sizin performansınızı değerlendirir. Sadece o hafta mülakat yaptığı adaylarla değil, şimdiye kadar bu soruyu sorduğu herhangi bir adaya bakarak değerlendirir.

Bu nedenle zor bir soru ile karşılaşmak kötü bir şey değildir. Sizin için zor olduğunda, diğer herkes için de zordur.

Sık sorulan sorular

Mülakatımdan hemen sonra bir dönüş almadım. Red mi edildim?

Hayır. Bir şirketin kararının geciktirilmesi için çeşitli nedenler vardır. Bu durumun çok basit açıklamalarından birisi, görüştüğünüz kişilerden birinin henüz geribildirim vermemiş olmasıdır. Çok az şirket, reddettikleri adaylara cevap vermeme politikasına sahiptir.

Görüşmenizden 3–5 iş günü sonra şirketten bir şey duymadıysanız, işe alım görevlinize kibarca sorun.

Reddedildikten sonra bir şirkete tekrar başvurabilir miyim?

Bu sorunun cevabı çoğunlukla evettir, ancak genellikle biraz beklemek zorundasınızdır (6 ay — 1 yıl). Eğer tekrar görüşüyorsanız, ilk mülakatınız genellikle sizi çok fazla etkilemez. Birçok kişi Google’dan veya Microsoft’tan reddedilir ve sonrasında onlardan teklif alır.

Çoğu şirket görüşmelerini benzer şekilde yapar. Bir mülakat için seçildikten sonra genellikle bir ön eleme mülakatına girersiniz, bu, role uymayan adayları belirlemek amacıyla yapılan kısa bir mülakattır ve genelde telefon üzerinden yapılır. Bu mülakatlar sıklıkla kodlama ve algoritma soruları içerir ve gerçekten yüz yüze mülakatlardaki kadar zorlayıcı olabilir. Mülakatın teknik olup olmayacağından emin değilseniz, işe alım görevlinize mülakatı yapacak kişinin hangi pozisyonda olacağını sorun. Bir mühendis genellikle teknik bir mülakat yapacaktır.

Birçok şirket çevrimiçi belge düzenleyicilerden faydalanır, ancak bazıları kağıda kod yazmanızı ve telefonda okumanızı bekleyecektir. Bazı görüşmelerde, telefonu kapattıktan sonra evde çözmeniz için size ev ödevi verilir veya yazdığınız kodu e-postayla göndermeniz istenir.

Asıl mülakata gelmeden önce bir ya da iki eleme mülakatından geçersiniz.

Asıl mülakatta, genellikle 3–6 arası kişi ile görüşme yapılır. Bunlardan biri genellikle öğle yemeğindedir. Öğle yemeği mülakatı genellikle teknik değildir ve görüşmeyi yapan kişi geri bildirim bile vermeyebilir. Bu kişi genelde ilgi alanlarınızı tartışabileceğiniz ve şirket hakkında sorular sorabileceğiniz birisidir. Diğer mülakatlar çoğunlukla teknik olacaktır, ve kodlama, algoritma, tasarım, davranışsal ve deneyim sorularının kombinasyonunu içerecektir.

Yukarıdaki konular arasındaki soruların dağılımı, şirketin öncelikleri, boyutu ve hatta takımlar arasında değişir. Mülakatı yapan kişilere çoğunlukla görüşme sorularında çok fazla özgürlük hakkı verilir.

Görüşmenizden sonra, görüştüğünüz kişiler bazı biçimlerde geri bildirim sağlayacaktır. Bazı şirketlerde görüştüğünüz kişiler performansınızı tartışmak ve karar vermek için bir araya gelirler. Bazı şirketlerde, görüşmeciler nihai bir karar vermek için işe alma müdürüne veya işe alma komitesine bir öneri sunarlar.

Çoğu şirket, yaklaşık bir hafta sonra geri dönüş sağlar (teklif, ret, yeni bir mülakat ya da süreçle ilgili bir güncelleme). Bir haftadan fazla beklediyseniz, işe alım görevlinizle görüşmelisiniz, ancak mutlaka saygılı olun. Gecikmeler olabilir ve olacaktır da. İşe alım uzmanları da herkes gibi meşgul ve unutkan olabilirler. Yanıt vermiyorlarsa, bu reddedildiğiniz anlamına gelmez (en azından herhangi bir büyük teknoloji şirketinde ve neredeyse başka herhangi bir şirkette de).

http://www.imdb.com/title/tt2575988/

Microsoft mülakatı

Tipik bir Microsoft mülakatında, sabah saatlerinde Microsoft’a gelir ve ilk evrakları doldurursunuz. Size örnek bir soru verecek olan işe alım görevlisiyle kısa bir görüşmeniz olur. İşe alım görevlisi genellikle teknik sorularla sizi sorguya çekmek için değil, sizi hazırlamak için oradadır. Eğer size bazı temel teknik sorular sorulursa, bu, sizin mülakatta zorlanmamanız içindir, böylece gerçek mülakat başlandığında daha az gergin olursunuz.

Gün boyunca 4 ya da 5 mülakat yaparsınız. Mülakatları toplantı odalarında yapan çoğu diğer şirketin aksine, Microsoft’un işe alım görevlileri mülakatları ofislerinde yapar. Bu, etrafa bakınmak ve takım kültürü hakkında bir fikir edinmek için harika bir zamandır.

Bir takım ile olan mülakatlarınız bittiğinde, bir işe alım müdürü ile görüşebilirsiniz. Eğer öyleyse, bu iyiye işarettir! Çok yüksek ihtimalle, belirli bir ekiple olan mülakatları geçtiniz demektir. Artık işe alma yöneticileri kararı verecektir.

O gün kararı bildirebilirler ya da bu bir hafta sürebilir. Bir hafta boyunca hiçbir geribildirim almadıysanız, durum güncellemesini sormak için işe alım görevlisine bir e-posta atabilirsiniz.

Kesinlikle hazırlanın

Neden Microsoft için çalışmak istiyorsun? Bu soruda Microsoft, teknoloji hakkında tutkulu olduğunuzu görmek ister.

Uzun zamandır Microsoft kullanıyorum ve Microsoft’un evrensel olarak mükemmel bir ürün oluşturabilmesinden gerçekten etkilendim. Örneğin, “Son zamanlarda oyun programlamayı öğrenmek için Visual Studio’yu kullanıyorum ve API’leri mükemmel”

cümlesi teknoloji hakkındaki tutkunuzu gösterecektir.

Farklı olan nedir?

İşe alım müdürü ile sadece mülakat iyi geçtiyse görüşebilirsiniz ve bu iyiye işarettir.

Ek olarak, Microsoft’un ürün seti çok çeşitlidir ve her bir ürünün ekibi farklı şeyler aradığından, deneyimler önemli ölçüde farklılık gösterebilir.

Amazon mülakatı

Amazon’un işe alım süreci tipik olarak bir telefon mülakatı ile başlar. Burada aday belirli bir ekiple mülakat yapar. Bir aday 2 ya da daha fazla görüşme yapabilir. Bu da şunu gösterir, ya görüşmecilerden biri yeterince ikna olmamıştır ya da farklı bir takım ya da profil için değerlendiriliyorsunuzdur. Daha sıra dışı durumlarda (adayın o bölgeden olduğu ya da yakın zamanda farklı bir pozisyon için görüştüğü durumda) aday sadece bir telefon mülakatı yapabilir.

Sizinle mülakat yapan mühendis, genellikle paylaşılan bir çevrimiçi belge düzenleyici aracılığıyla basit bir kod yazmanızı ister. Ayrıca genellikle, hangi teknoloji alanlarını bildiğinizi anlamak için geniş bir soru seti soracaklardır.

Ardından, özgeçmişinizi ve telefon görüşmelerinizi temel alarak sizi seçen 1 veya 2 ekiple görüşme yapmak için Seattle’a (ya da hangi ofis için mülakat yapıyorsanız oraya) gidersiniz. Beyaz tahtada kod yazarsınız. Mülakatı yapan her bir kişi belirli bir alanı sorgulamak için görevlendirilmiştir ve birbirlerinden oldukça farklı görünebilirler. Kendi geri bildirimlerini gönderene kadar diğer geribildirimleri göremezler. İşe alım toplantısına kadar tartışmadan kaçınırlar.

“Bar raiser” (Çıta yükseltici), mülakat sınırını yüksekte tutmakla sorumludur. Özel eğitime katılırlar ve bazen gruplarının dışındaki adaylarla mülakat yaparlar. Eğer bir mülakat ciddi şekilde daha zor ve farklı geliyorsa, bu büyük olasılıkla “bar raiser”dır. Bu kişinin mülakatlarda önemli bir tecrübesi ve işe alım kararlarında veto gücü vardır. Yine de unutmayın; bu mülakatta daha çok çırpınıyor oluşunuz, daha kötü gidiyorsunuz demek değildir, performansınız diğer adaylara göre değerlendirilir.

Görüştüğünüz kişiler geri bildirimlerini girdikten sonra, bu bildirimleri tartışmak üzere toplanırlar. İşe alım kararını verecek olan onlardır.

Amazon’un işe alım uzmanları genellikle adayları takip etmekte çok başarılı olsa da, bazen gecikmeler olabilir. Bir hafta içinde Amazon’dan haber almadıysanız, samimi bir e-posta göndermenizi öneririz.

Kesinlikle hazırlanın

Amazon ölçekleme (scaling) konusunu çok önemser. Ölçekleme soruları için hazır olduğunuzdan emin olun. Ayrıca, nesne yönelimli tasarım hakkında da çok soru sorma eğilimindedir.

Farklı olan nedir?

“Bar raiser”, çıtayı yüksek tutmak için genellikle farklı bir takımdan getirilir. Hem işe alım müdürünü hem de bu kişiyi etkilemek zorundasınızdır.

Google mülakatı

Bir Google mühendisi ilk telefon mülakatını gerçekleştirir, bu nedenle zorlu teknik sorular bekleyin. Bu sorular, bazen paylaşılan bir belge aracılığıyla kodlama gerektirebilir.

Yüz yüze mülakatınızda 4–5 kişiyle mülakat yaparsınız, ki bunlardan birisi öğlen yemeği mülakatı yaptığınız kişi olur. Görüşmecilerin görüşleri diğer görüşmecilerden gizlidir. Öğle yemeğinde görüştüğünüz kişi görüş bildirmez, bu durum dürüst sorular sormak için harika bir fırsattır.

Görüşmeler genellikle belirli odaklanmalar üzerine yapılmaz ve size ne zaman ne sorulacağına dair bir sistem yoktur. Her görüşmeci, mülakatı istediği gibi yapabilir.

Yazılı geri bildirimler, işe alıp/almama kararının verilmesi için, mühendislerden ve yöneticilerden oluşan bir işe alım komitesine gönderilir. Geri bildirim, genelde dört kategoriye (Analitik Yetenek, Kodlama, Deneyim ve İletişim) ayrılır ve size 1'den 4'e kadar genel bir puan verilir. İşe alım komitesinde çoğunlukla görüşme yaptığınız hiç kimse olmaz. Varsa da bu tamamen tesadüf eseri olur.

Teklif yapmak için, işe alım komitesi en az bir istekli görüşmeci görmek ister. Diğer bir deyişle, görüşmecilerin 3.6, 3.1, 3.1 ve 2.6 puanlarını vermesi, hepsinin 3.1 vermesinden daha iyidir.

Her mülakatta mutlaka mükemmel olmanız gerekmez ve telefon görüşmenizin performansı son kararda genellikle güçlü bir faktör değildir.

İşe alım komitesi bir teklif önerirse, teklif paketiniz bir tazminat komitesine ve ardından yönetim kurulu komitesine gider. Pek çok aşama ve komite olduğundan, bir karara dönüşmesi birkaç hafta sürebilir.

Kesinlikle hazırlanın

Web tabanlı bir şirket olarak Google ölçeklenebilir bir sistemi nasıl tasarlayacağınızı önemser.

Farklı olan nedir?

Görüştüğünüz kişiler işe alma kararı vermez. Daha çok, işe alım komitesine gönderilecek geribildirimleri girerler.

Apple mülakatı

Şirketin kendisi gibi, Apple’ın görüşme süreci de bürokrasi içerir. Görüşmeciler mükemmel teknik beceriler ararlar, ancak pozisyon ve şirket için tutku da çok önemlidir.

Görüşme süreci genellikle, yeteneklerinizi temel düzeyde anlamaları için bir işe alım görevlisi ile yapılan telefon görüşmesiyle başlar ve takım üyeleri ile bir dizi teknik telefon görüşmeleriyle devam eder.

Kampüse davet edildikten sonra, sürecin genel bir görünümünü sunacak olan işe alım görevlisi sizi karşılayacaktır. Ardından, mülakat yapacağınız ekibin üyeleriyle ve ekibinizin çalıştığı kilit kişilerle birlikte 6 — 7 mülakat yaparsınız.

Mülakatlar bazen bire-bir bazen de ikiye-bir şeklinde gerçekleşir. Beyaz tahtada kod yazmaya hazır olun ve düşüncelerinizin tamamını açık bir şekilde belirttiğinizden emin olun. Öğle yemeği, potansiyel yöneticinizle birliktedir ve daha rahat gibi görünür, ancak o da hala bir mülakattır. Her görüşmeci genellikle farklı bir alana odaklanır ve daha sonraki görüşmecilerin incelemelerini istedikleri bir şey olmadıkça, diğerleriyle geribildirimlerini paylaşmaz.

Günün sonuna doğru görüşmeciler notlarını karşılaştıracaktır. Herkes hala uygun bir aday olduğunuzu düşünüyorsa, başvurduğunuz birimin direktörü ve VP’si (Başkan Yardımcısı) ile bir mülakatınız daha olacaktır. Bu çoğunlukla iyiye işarettir.

Direktör ve VP görüşmelerine başladıysanız, görüştüğünüz kişilerin hepsi bir konferans salonunda sizi değerlendirmek üzere bir araya gelir. VP’ler genellikle orada bulunmaz ancak adaydan etkilenmedilerse işe alımı veto edebilirler.

Kesinlikle Hazırlanın

Hangi ekiple mülakat yapacağınızı biliyorsanız, o ürün hakkında bilgi sahibi olduğunuzdan emin olun. Ürünün nesinden hoşlanıyorsunuz? Neyi iyileştirirsiniz? Özel öneriler sunmak, işinize olan tutkunuzu gösterebilir.

Farklı olan nedir?

Apple sıklıkla ikiye-bir görüşmeler yapar, ancak çok stres yapmayın, bire-bir görüşmelerle aynıdır. Ayrıca, Apple çalışanları büyük Apple hayranlarıdır. Aynı tutkuyu mülakatınızda da göstermelisiniz.

Facebook mülakatı

Bir mülakat için seçildikten sonra, adaylar genelde bir veya iki telefon görüşmesi yaparlar. Telefon mülakatları teknik olur ve genellikle çevrimiçi belge düzenleyici üzerinde kodlama içerir.

Telefonla görüşmeden sonra, kodlama ve algoritmalar içeren bir ev ödevi yapmanız istenebilir. Burada kodlama tarzınıza dikkat edin. Kod incelemelerini kapsamlı bir şekilde yapan bir ortamda hiç çalışmadıysanız, kodunuzu gözden geçirmek isteyen birini bulmanız iyi bir fikir olabilir.

Yüz yüze görüşme sırasında, öncelikle diğer yazılım mühendisleri ile mülakat yaparsınız, ancak işe alım yöneticileri de müsait olduklarında katılırlar. Tüm görüşmeciler kapsamlı mülakat eğitiminden geçmiştir ve görüştüğünüz kişilerin teklif alma ihtimaliniz üzerinde etkisi yoktur.

Yüz yüze görüşmelerde, her görüşmeciye bir rol verilir, tekrarlayıcı soruların olmamasına ve bir adayın bütün olarak görülmesine yardımcı olur. Bu roller şunlardır:

  • Davranışsal (“Jedi”): Bu mülakat Facebook’un ortamında başarılı olabilme durumunuzu değerlendirir. Kültür ve değerlere uyum sağlayabilecek misiniz? Ne için heyecanlanırsınız? Zorluklarla nasıl baş edersiniz? Ayrıca Facebook’a olan ilginiz hakkında da konuşmaya hazır olun. Facebook, tutkulu insanlar ister. Bu mülakatta bazı kodlama soruları da sorulabilir.
  • Kodlama ve Algoritmalar (“Ninja”): Bunlar standart kodlama ve algoritma sorularınızdır. Bu sorular zor olacak şekilde tasarlanmıştır. İstediğiniz herhangi bir program dilini kullanabilirsiniz.
  • Tasarım/Mimari (“Pirate”): Bir “backend” yazılım mühendisine sistem tasarım soruları sorulabilir. “Frontend” ya da diğer uzmanlıklara o alan ile ilgili tasarım soruları sorulur. Farklı çözümleri açıkça tartışmalısınız.

Genellikle iki “ninja” mülakatı ve bir “jedi” mülakatı bekleyebilirsiniz. Deneyimli adaylar genellikle bir “pirate” mülakatına da girerler.

Mülakatınızdan sonra görüşmeciler performansınızı birbirleriyle tartışmadan önce yazılı geri bildirimde bulunur. Bu, bir mülakattaki performansınızın başka bir görüşmeci geribildirimi tarafından etkilenmemesini sağlar.

Herkesin geribildirimi gönderildikten sonra, görüşme ekibi ve bir işe alım müdürü, nihai bir karar vermek için bir araya gelirler. Onların fikir birliğine varmaları ve işe alım komitesine nihai bir işe alım önerisi sunmaları gerekir.

Kesinlikle hazırlanın

“Seçkin” teknoloji şirketlerinin en küçüğü olan Facebook, geliştiricilerin girişimcilik ruhuna sahip olmalarını ister. Görüşmelerinizde, hızlı bir şekilde bir şeyler ortaya çıkarmayı sevdiğinizi göstermelisiniz. Facebook’un C++, Python, Erlang ve diğer dillerde çok fazla “backend” işi yapması göz önüne alındığında PHP’yi bilmek o kadar da önemli değildir.

Farklı olan nedir?

Facebook geliştiricilerle özel bir ekip için değil, “in general” olarak mülakat yapar. Eğer işe alınırsanız, 6 haftalık bir “bootcamp”e dahil olursunuz.

Kıdemli (Senior) geliştiricilerden danışmanlık alırsınız, en iyi uygulamaları öğrenirsiniz ve nihayetinde size çalışmak istediğiniz projeyi seçme konusunda büyük bir esneklik sağlanır.

Palantir mülakatı

Palantir, havuz mülakatı yapan bazı şirketlerin aksine (belirli bir ekiple değil şirketle mülakat yaptığınız yerlerde), belirli bir ekip için mülakat yapar. Bu sebeple başvurunuz bazen daha iyi uyumun olduğu başka bir ekibe tekrar yönlendirilebilir.

Palantir mülakat süreci tipik olarak iki telefon görüşmesi ile başlar. Bu mülakatlar yaklaşık 30 — 45 dakika arasındadır ve esas olarak teknik olacaktır. Önceki deneyimlerinizi de kapsayacak şekilde ağır algoritma sorularına odaklanılacağını bekleyebilirsiniz.

Ayrıca, doğru kod ve optimal algoritma yazma becerinizi değerlendirecek bir “HackerRank” kodlama sorusu da gönderilebilir. Daha az tecrübeli adayların (üniversite öğrencileri gibi) böyle bir test alma ihtimali çok yüksek.

Başarılı adaylar kampüse davet edilir ve maksimum beş kişilik mülakatlar yaparlar. Yüz yüze görüşmeler geçmiş deneyiminizi, ilgili alan bilgisini, veri yapılarını ve algoritmalarını ve tasarımını kapsar.

Ayrıca muhtemelen Palantir ürünlerinin bir demosunu da görebilirsiniz. İyi sorular sorun ve şirkete olan tutkunuzu gösterin.

Görüşmeden sonra görüşmeciler, geri bildiriminizi işe alma yöneticisi ile tartışmak üzere toplanırlar.

Kesinlikle hazırlanın

Palantir, parlak mühendisleri işe alır. Çoğu aday, Palantir’in sorularının Google ve diğer üst düzey şirketlerde gördüklerinden daha zor olduğunu söyler. Palantir ile mülakat yapıyorsanız temel veri yapılarını ve algoritmaları tüm yönleriyle öğrenmeli ve ardından en zorlu algoritma sorularıyla hazırlanmaya odaklanmalısınız.

Bir “backend” rolü için mülakat yapıyorsanız, sistem tasarımı üzerine de çalışmalısınız. Bu sürecin önemli bir kısmıdır.

Farklı olan nedir?

Bir kodlama sorusu, Palantir mülakat sürecinin önemli bir parçasıdır. Bilgisayarınızda olmanıza ve ihtiyacınız olan materyalleri araştırıyor olabilmenize rağmen, bu sürece hazırlıksız girmeyin. Sorular son derece zorlayıcı olabilir ve algoritmanızın verimliliği de değerlendirilecektir. Ayrıntılı mülakat hazırlığı size yardımcı olacaktır. HackerRank.com adresinde çevrimiçi kodlama soruları ile pratik yapabilirsiniz.

Sonraki bölüm: Bölüm 2 — Özgeçmiş

<:-)

--

--