@uzaysan, içinde söyledi: Amerika'da Yazılım Geliştiricisi Olarak İş Aramak ve Yapılabilecek Hazırlıklar
Merhaba arkadaşlar. Bugün sizlere Microsoft ile olan yazılım mühendisliği mülakat tecrübemi anlatacağım. İşe giremedim ama mülakata girmek isteyenlere ön bilgi olması açısından tecrübelerimi yazıyorum.
İşi Linkedin aracılığıyla buldum. Linkedin'de microsoft EMEA (Europe - MiddleEast - Africa) bölgesi için recruiter (işe alım görevlisi) olarak çalışan bir kişiyle bağlantım var ve bu kişi bir iş ilanı yayınladı. bende linke tıklayarak microsoft'un kendi sitesi üzerinden işe başvurdum. Bunu size de tavsiye ederim. recruiter olarak çalışan kişileri linkedin üzerinden eklerseniz iş ilanlarına erkenden ulaşabilirsiniz.
1 hafta sonra microsofttan mail geldi. Özgeçmişimin etkileyici olduğunu ve işe alım sürecini başlatmak istediklerini falan söylemişler mailde. Bu bana ilk defa oldu. Normalde microsofta daha önce de başvurmuştum. Ama hiç cevap alamadan elendim. Bu sefer çalıştığım şirketin marka değeri biraz etki etti sanırım.
Daha sonra bana çözmem için bir OA yani Online Assessment (Online Test) gönderdiler. Bu testi 1 hafta içinde çözmem gerektiği yazıyordu. Test toplam 100 dakika süre sınırlıydı ve 3 adet soru vardı. 3 soru da algoritma ve veri yapıları ile ilgiliydi.
Soru 1: Bir integer sayısının binary gösteriminde kaç tane 1 vardır?
Yazılımla ilgilenenler bilirler. Bilgisayarda her şey bir ve sıfırdan oluşur. Sizin normalde 4 diye yazdığınız sayının binary (yani 2 tabanındaki yazılışı) 100'dür. Buradan gidersek 4 içindeki binary birlerin sayısı da 1 olacaktır.Soru 2: Unique sub stringlerin sayısı?
Size bir string veriliyor ve bu string içindeki bütün sub stringler içinde eşsiz yani unique olanların sayısı kaçtır. Bunu ben HashMap ve loop kullanarak çözdüm.Soru 3: Perfect loop graph?
Size bir graph veri yapısı veriliyor ve bu veri yapısında perfect loop olup olmadığı soruluyor. Ne demek perfect loop. Hangi elemandan başladıysanız o elemana geri dönmeniz lazım. Örneğin 1 -> 2 -> 3 -> 1 gibi. 1 -> 2 -> 3 -> 2 olmaz. Loop var ama perfect değil başladığınız elemana dönmeniz lazım. Bu soruyu da DFS yani Depth First Search ve HashSet kullanarak çözdüm.Test sonucunda 3 soruyu da bildim. Testin ardından 1 hafta sonra bir mail daha aldım. Testi geçtiğimi ve diğer aşamada microsoftta çalışan Senior bir engineer ile teknik bir mülakat daha yapacağımı öğrendim. Mülakat tarihini ayarladım ve mülakat günü geldi.
Bu kısmın 2 parçaya ayrılması gerekiyor.
İlk parça kodlama aşması. Bu benim için iyi geçti. Hatta beklediğimden kolaydı. Rahatlamıştım açıkçası çünkü beklediğimden çok daha kolay sorular soruldu ve bunları hemen çözdüm. Sorular Tree veri yapısı ile ilgiliydi. Hatta sorunun birinde O(n^2) time complexity buldum ve mülakatı yapan kişi bana bundan daha iyisini yapabilir miyim diye sordu ve ben de bunu O(n) yaptım.
İkinci kısımda ise tabiri caizse mal gibi kaldım. Şunu söyleyeyim. Ben Bilgisayar mezunu değilim. Bu yüzden bazı teorik bilgilerim eksik ve sorular da tam bu teorik bilgilerden geldi. Belki sektör tecrübem biraz fazla olsaydı bilebilirdim ama Junior birisi olarak bilgim yoktu maalesef. Sorular İşletim sistemleriyle alakalıydı. Bana soru olarak Thread, process, multithreading gibi konulardan sordu. Ufak tefek bilgim olsa da yeterince iyi cevaplayamadım. Benim bilgilerimin eksikliğini gören mühendis bana soru sormayı bıraktı ve ufak çaplı bir üniversite dersi verdi. threadler nasıl çalışır thread lock nedir vs.
Bu arada söylemem lazım ki mülakata katılan mühendis cana yakın birisiydi. Beni strese sokacak bir şeyler söylemedi hiç.
Mülakat sonunda birbirimize iyi günler diledikten sonra ben elendiğimi anladım. Çünkü ikinci kısımda sorulan bilgileri kendileri gündelik olarak kullanıyorlarmış. Bu konuda ben internette bedava bir pdf kitabı buldum. PDF olarak indirip fotokopiciye çıkarttım. Kitabın adı "Operating Systems: Three Easy Pieces". Linki de şu: https://pages.cs.wisc.edu/~remzi/OSTEP/
Tahmin ettiğim gibi de oldu ve elendiğimi söyleyen maili 1 hafta sonra aldım. Ama üzülmek yok. Şu an zaten bir işim var bu konuda stres yapmıyorum eskisi gibi.
Ben şahsen geldiğim noktaya seviniyorum. Çünkü hukuk mezunu olarak, çok değil 6 ay önce bootcamp'e bile kabul alamazken bugün microsoft gibi şirketlerin mülakatına girebiliyor olmak bence ilerleme göstergesi. Biraz daha çalışır mülakatı da geçerim diğer sefere. Hatta yarın Microsoft gibi trilyon dolar değere sahip başka bir ABD şirketiyle de mülakatım var. Bunda da test aşamasını geçtim ve mühendis ile görüşeceğim. Şimdi yazmak istemiyorum ama olumlu olumsuz bir dönüş aldığım zaman o tecrübemi de yazacağım buraya.
Hatta şimdiki çalıştığım şirketin mülakat sürecini de yazmayı düşünüyorum. her ne kadar türk şirketi olsa da yine de tecrübe olur.
Hepinize iyi günler diliyorum.
Faydalı ve detaylı paylaşımlarınız için teşekkürler. Umarım hedeflediğiniz ve istediğiniz gibi trilyon dolar değerinde olan şirket(ler)e girebilirsiniz. Diğer mülakat deneyimlerinizi de bekliyoruz. Bol şans şimdiden.