Friday, November 30, 2007

Microsoft İş Görüşmesi -2- Sorular

önce kısa bi anlatım bizim dükkan büyük 800 tane mühendisiz burda. dynamics AX i bi biz bide redmond geliştirdi. mekanımız ala.......

sorular hangi dil neden ile başladı her boka maydanoz olunca dil konusunda CV kabarıo. ondan sonra başlıo neden c neden c++ neden c#. işte onu şurda kullandım burda bunu bilmemne gak guk.

can alıcı soru peki şimdi bir proje yapcaz hangisini seçersin. cevabım c#. bide bu proje sıfırdanmı yoksa başka birisi bi yere gelmiş ordanmı devam etcez. bu arada bu cümleleri kurup anlatması ayrı bir dert neyse bi stress var üstümde. hemen ikiye dallanıo cevabım :) eğer kod varsa neyde yazıldıysa ordan devam ederim. yazılı değilse c#

peki C++ ı ne gibi bir proje için seçerdin. performans öncelikliyse tabiiki C++ veya C.

yazılım design ediyormusun? cevabım genelde. nasıl ? kime yazılıyorsa onla oturulup konuşulur ihtiyaçlar belirlenir bu arada ihtiyaçları mantık dahilinde tutmakda fayda var çünkü onlara kalırsa yandık...

test aşamasını nasıl yapıyorsun? el cevap önce ben testi ben yapıyorum. sonra bilmeyen birisine kullandırtıp beta diyip son kullanıcıya yollanır ondan sonrası endless loop sonsuz döngü bi gider bi gelir gelişir durur.

unit testing yapıyormusun? en zayıf olduğum konudur zaten buda bi isimlerini bilirim test aletlerininde hayatta kullanmam nunit fxcop ama kullanmıom. genelde ihtiyaç olmuo çıkdıkça düzeltiom gibi bişey demeye çalıştım sanırım orda :)

sonraki soru iki tane objen var nasıl bağlarsın birbirine yada nasıl ilişkilendirirsin ? bunlar yazılım objesimi dedim tam kekoyum adamlar c# developeri arıo ulan :) zaman kazanmaya çalışıom neyse cevabım objelerin içinde int obj_relation_id gibi bir değişken atarım ordan bağlarım.

bu cevapdan pek memnun kalmadı örneğin dedi bmw ve mercedes diye iki tane objen var nasıl bağlantı kurarsın ? benim o esnada dank etti :) bir Car class ı yazar ordan inherit ederim. sonra run time dada reflection ile bağlantıyı çözebilirim. bunu sanırım doğru bildim orda stressim kalmamıştı üstümde.

aggregation ve inheritance arasındaki fark nedir ? hmm aggregation ne olaki anlatabilir misin ? dedim ama bi sıkıntı bastı içimi adam farkını soruo zaten olum sıçıosun görüşmeye hissi kapladı içimi. neyse adam anlattı bende anladığım kadarıyla birinde datastructure diğerinde inheritance ile anlaşılabilir o zaman dedim ama yıkıldığım an oldu.

interface nedir nerde kullanılır? cevap interface obje üretilmesini istemediğimiz class lardır implementationlar taşımazlar. nerdesine de şöle bir örnek verebilrim. bir lib geliştiriyoruz. ve son kullanıcının developerlarını bi şekilde bazı bölegeleri kullanmamaya yöneltmemiz lazım hede hödö derken ben sıçıom hissimle doldum taştım dedim thats it. bu arada elemanda ingilizcemi düzeltio daha belirgin şekilde benim anlatmaya çalıştıklarımın altını çizio fenayım :)

overloading ve overriding arasındaki fark nedir ? bu sorunun aynısını 3 sene önce falan java sal bi konudaydı bi forumda sormuştum ama üstünden o kadar zaman geçtiki sikseler hatırlamam :)yannız aklımda kalan birinde üst class dan alınan fonksiyona implementasyon yapılıodu onu anlatmaya çalıştım bi ara wiki ye bakam dedim uzun süre sessiz kalamıom onu anladım :)

sonraki soru generics i bilionmu nerde kullanılır gibi bişeydi artık zaten dedim burda win edilecek bi durum kalmadı yaydım gidiom allah ne verdiyse :)

collections la arrayin farkı nedir gibi bişey sordu işte birini genişletmek istediğimizde performans yer gibi bişe dedim onu hatırlıom.

exception handlingi nasıl yaparsın nerde mesaj nerde kod throw edersin? cevap geveledim tam anlamıyla.

artık sıkılmışdım buraya kadar en az 30 dakka geçti dedim kaç sorun var. eleman bu soruyu duyunca yıkıldı sanırım :) dedi elimde kaynak sağlam soru çok. nice dedim bende ne diyim.

araya bi soru daha sordu notlarımda yok ama bilemediğim diğer bi sorudur bazılarında direk bilmiom dedim. neyse son soru komedi facia nasıl adlandırırsanız geldi

cache memory design edicez nasıl yaparsın? bu arada
"do you know what cache is" dedi dedim bende money :) allah belamı vercek cache ve cash söylemesi ingilizcede aynı ama yanında memory var allahın kulu keresteliğin ne lüzumu var. neyse eleman koptu zaten orda :D bende sakin sakin dinliom anlamadım dan ingilizcesi gerçi kıvırmanın alemi yok benimde ingilicem o kadar iyi değil bide stress oluom.

iyice detaylayınca bi nevi cache yapacağımızı anladım ama cache kelimesi hala aklıma gelmedi bende soruyom soruları işte bu memory çok genişleyebilirmi. evet o zaman linkedlist kullancaz. hmm peki buna hızlı erişim şartmı evet. (adam cache istio tahta tabii hızlı olcak) o zaman sortedlinklist kullanırım binary search edebiliriz allahım gereksiz ne kadar terim varsa sokuom :) adamın aradığı cache algoritmalarından herhangi birisinin adı ama ben dağıldım bi kere toplayamam. arada bide kaydet ve oku gibi fonksiyonlarımız olcak bunlara AI katabiliriz kullanıcının durumuna göre 100 işlemde bir veya 1000 işemde bir save ederiz çünkü işte save diske olucağı için pahalı bi işlemdir falan filan. sonra bitirdi zaten görüşmeyi. bende bye bye dedim. zerre umudum yok.

manav açsak yada bar yaw bu ne biçim bir terimsel gereksizlik yığınıdır. ben implementasyoncu adamım kodu yazar çalışıosa salarım piyasaya değilse geliştirmeye devam. bu arada bu yöntemle turkcell ilede projeler yaptım kanal D ilede. her zaman en iyi sonucu vermez içinde UML geçmez haa bu arada UML türevi de sorduydu bide SVN CVS falanda. neyse güzel hayaldi vesselam.

1 comment:

Unknown said...

Bu pazar saat 12:00 PM de ben de bi telefon görüşmesi yapacağım muhtemelen seninkinin ikinci versiyonu olacak hadi hayırlısı :) Ama süpermiş koptum, özellikle de cache muhabbetine :D
Sağlıcakla,
ilker

odd string diff

 https://leetcode.com/problems/odd-string-difference/ Beats 19.92% of users with Java   class Solution { public String oddString ( S...