Live coding interview’lerinde iki tarafta da bulunmus ve bilimum FAANG algorithm ve data structure sorularini temizlemis birisi olarak tavsiyemlerimi siraliyorum.
🧵 1/11
Annem sinemaya gitmeyi sevdirdi bana. Beklediğimiz filmlere ilk gün giderdik. 70 yaşında 3. üniversitesinden mezun oldu. 6 yıldır ondan uzakta yaşasam da bir 🐣 yollamak bile yetiyordu birbirimize. Annem aramızdan dün ayrıldı. Seni çok seviyorum anne.
Is hayatim boyunca en cok faydasini gordugum sey bolca soru sormak oldu. Hicbir zaman aptalca gorunecek ya da bilgisiz oldugunuz dusunulecek diye cekinmeyin. Bazen bilincli olarak cevabi “bariz” sorulari sormak varsayimlardaki hatalari ortaya cikarabiliyor.
Igrendim bu adamdan arkadas ya. Hasbelkader TR standartlarinda iyi sayilabilecek bir maas aldigi icin kendini ustun gormekten alikoyamiyor bir turlu. Kardesim, berbere o parayi vermenin sebebi berberin eve gidip taş yerine et yiyecek olmasi.
Birkac gundur yurtdisinda alim gucunun dusuk oldugu. Turkiye’de cok daha rahat kosullarda yasadigini soyleyen yazilimcilar goruyorum. Yazilimciysaniz Turkiye gibi gelir esitsizliginin cok yuksek oldugu bir ulkede zaten rahat yasarsiniz.
Canim annem olmadan girdigim ilk yeni yil olacak 2023. TR’de saat 00:00 oldugunda arar kutlardik yeni yili. UK’de de 00:00 olunca o arardi. Bunlari dusununce insanin ici buruluyor.
Eğer dışarıya bir API açtıysanız, size gelen tüm requestleri (ve hatta responseları) loglayın. Aksi halde bizde bir problem görünmüyor, payload gönderebilir misiniz, postmande çalışıyor vb. konuşmalarla problemin tespiti çok uzuyor. Bazen request gönderen taraf çok ufak bir hata
Yillarca PHP’ye cok laf ettim ama laravel jetstream inertia combosu hayat verdi bana. Zamaninda HN’de okudugum soyle bir soz vardi: “Siz expressjs mi spring mi aspnet mi diye tartisirken 10 kisi PHP ile coktan urununu teslim etti”. Yazan hakliymis.
Her gün onlarca linke tıklayıp, sağa sola kaydettikten sonra okuyacak zaman bulamıyor musunuz? Siz de benim gibi link istifleyici misiniz? Yakında, tüm eklediğiniz linkleri, günlük olarak size özetini yollayan uygulamamızı kapalı beta’ya geçiriyoruz.
Toplam 50 kişi limitimiz
Su ana kadar gelistirmekten en keyif aldigim yan projem oluyor. 1-2 haftaya closed beta yapmayi planliyoruz. Elixir ve Phoenix framework sagolsun yeni feature eklemek cok kisa suruyor.
En cok kullanilan data structure ve algortimalar aklima gelmisken yazayim.
DS: Binary tree, BST, stack, queue, linked list, doubly linked list, hash map ve tabi ki array. Bunlar ilk aklima gelenler. Heap vs gibi self balanced tree’lerin mantigini bilseniz yeter.
3/11
Leetcode ve Hacker Rank gibi sitelerde soru cozmeye baslamadan once en cok kullanilan data structure ve algoritmalari Geeksforgeeks ve/veya wikipedia’dan ogrenerek en iyi bildiginiz dilde implement edin ve konseptlere iyice asina olun.
2/11
20 yıllık senior keko her yerden fırlıyor. Böyle insanları bir şekilde popülerleştirmek hepimizin suçu. 3 kuruş etmeyecek fikirleriyle zehir saçmaya devam ediyor.
Düşünsenize şu adamla aynı ortamda çalışıyorsunuz, böyle seviyesiz şakalar yaparak kendini komik sanıyor ve sizi de maruz bırakıyor. Yıpranma payıma ek isterim şunla muhatap olmak zorunda kaldığım için. Yazık.
Bugün canım annemi kaybedeli tam bir yıl oldu. Acısı değişmedi, aksine daha derinleşti. Ona “anneni hala özlüyor musun” diye sormuştum ölümünden birkaç ay önce. “Çok özlüyorum” demişti. Bunu şimdi çok daha iyi anlıyorum.
Ben soyle bir siralama yaparak sorulari cozmustum:
- Tum binary search sorulari
- Tum linked list sorulari
- 15-20 two pointers
- 15-20 sliding window
- Public FAANG listeleri
- Parali en cok sorulan sirket sorulari
7/11
Istanbul’da olacak depremde Turkiye’nin tamamen bir devlet olarak cokecegini gormus olduk. Bir devlet insanlarini nasil kaderine terk eder anlayabilmek mumkun degil. Reyiz yikilanlari tekrar dikecekmis. Arkadas, senin insanlarin hala gocuk altinda, sen neyin masalini anlatiyorsun
Bu ay çoğu şirket yıllık/çeyreklik performans değerlendirmelerini gözden geçiriyor. Birinin övündüğünü görmek genel olarak tüm toplumlarda itici görünen bir tavır fakat “self-reflection” için ucunu kaçırmadan yapmamız da gerekiyor.
🧵 1/9
Interesting story. Should universities in
#Sweden
or
#Finland
take action against students from
#Turkey
to put pressure on their government? Could it be a legitimate soft power tactic to try and force Erdogan's hand?
Görüşmeye gelen jr. arkadaşlara ilk sorum “Gün içinde sıçmaya gidiyor musun” oluyordu. “Evet” cevabını verenleri “Neden uyurken sıçmıyorsun” diyerek kovuyordum.
Milyonlarca insana “survivor’s guilt” yasatan bu insanlardan hesabini sormazsak icimdeki ofke hic dinmeyecek. Umutla enkazin altinda bekleyip soguktan ve acikliktan olenleri unutursak bu hayatta hic iyi bir sey hak etmiyoruz demektir.
Umarim sevdiklerinden uzak olup donmek isteyenler icin her sey cok guzel olur. Ben asla donmeyecegim. Yillardir ailemden uzak yasadim malum guruhla ayni yerde bulunmak istemedigim icin. “Anne, ben geldim” diyebilecegim bir annem yok artik. Icimdeki ofkeyi hicbir sey durduramaz.
Quicksort ve merge sort her yazilim gelistirenin zaten bilmesi gereken algoritmalar, bunlardan da cok soru geldigi oluyor. Merge sort’un merge kismini akliniza iyice kaziyin. Farkli data structure ile kombinasyon yapilarak sorulan sorulari cozebilmenizi saglar.
5/11
Algoritmalarda da DFS ve BFS sorulari fazla oluyor. Two pointers ve sliding window da string isleme konularinda en cok karsilasilan algoritmalar. Union-find ve topological sort Senior pozisyona basvuruyorsaniz karsiniza cikabilir. Binary search de kesin cikar diyebilirim.
4/11
Simdilik hazirlik kismi konusuna deginmis olmamin yeterli oldugunu dusunuyorum. Daha sonra interview’de nasil ilerlemeliyiz ve isin asil zor kismi olan systems design interview’den de bahsederim.
11/11
Big O notation’i da unutmayalim. Sorulari cozdukten sonra time ve space complexity’lerinin ne oldugu sorulacak. Eger cozumunuz optimal degilse ya da probleme yeni bir constraint eklenirse time/space complexity bilmemek maalesef elenmeniz anlamina geliyor.
10/11
Bu saydiklarim ve sizin de merak ettigimiz data structure ve algoritmalari ogrenerek implement ettikten sonra isin yorucu kismi basliyor: Leetcode farming. Eger big tech bir firmada ise girmek istiyorsaniz en az 3 ay her gun soru cozeceksiniz.
6/11
TR’de kalsaydim buyuk ihtimalle “zorla” head of engineering, director of x vs gibi bir role itilecektim ve yapmaktan keyif aldigim isi yapamayacaktim. Burada kimse sen neden hala senior roldesin ya da neden staff/manager rolunden senior role gecis yaptin diye sizi yargilamiyor.
Bu kadar soru cozdukten sonra artik soruyu okumaya basladiginizda ne tarz bir soru oldugunu anlamaya baslayacaksiniz. Bu noktada tavsiyem sorulari sesli cozmeye baslamaniz cunku gercek mulakatta ihtiyaciniz olan bir probleme yaklasim seklinizi gostermek.
8/11
Sorudan bagimsiz bir yorum yapiyorum. Distributed system’lerde log’lar ugrayacaginiz 3. adres olmali. Ilk once metric’lerden gelen alert ile incelemeye baslamalisiniz. Hic SLO tanimlamamissaniz ve SLA dashboard’lariniz yoksa observability konusunda buyuk eksiginiz var demektir.
Yazılımcı arkadaşlara bir soru: Distributed olarak bir yerlerde loglar toplanıyor (ELK vs), hatalar da güzelce gözüküyor. Ancak ortamda oluşan hataların takibini kim yapmalı, nasıl yapmalı?
Avrupa ulkelerinde cok fazla para harcadiklarini soyleyenlerin kacirdigi bir nokta var. Genelde soyledikleri “taksi cok pahali. Disarida yemek yiyince param kalmiyor”. Bunlarin sebebi hizmet sektorunun “degersiz” gorunmemesi ve asgari ihtiyaclarini karsilayarak gecinebilmeleri.
Livecoding sorulari sadece sizin data structure ve algoritma bilginizi degil ayni zamanda bir problemi anlama, anlatma ve cozumu karsi tarafa nasil iletebildiginizi olcuyor.
9/11
Bu twitter’den cekilis isleri ihaleye fesat karistirmadan nasil yapiliyor? O kadar distributed systems hakkinda atip tutuyorum, Designin Data-intensive Applications kitabini hediye edeyim de bir ise yarasin diye dusunuyorum.
Quote rt yaparak etkilesime girmek istemedim ama hakkinda birkac kelam etmek lazim. “Evinin gecimini saglayan” ve “reject modernity embrace masculinity” cumleleri asil soylemek istedikleri bu arkadasin. Milli ve yerli Andrew Tate hayirli olsun.
UK’ye gelirken TR’de aldigim maasin GBP karsiligi 25% daha yuksekti. Ben ailem icin daha huzurlu bir ortami secmeye karar verdim. Ilk sene gecim olarak oldukca zorluydu ve aliskanliklarimizi da degistirmemiz gerekti.
Quote rt yaparak etkilesime girmek istemedim ama hakkinda birkac kelam etmek lazim. “Evinin gecimini saglayan” ve “reject modernity embrace masculinity” cumleleri asil soylemek istedikleri bu arkadasin. Milli ve yerli Andrew Tate hayirli olsun.
jr. arkadaslara tavsiyeler verirken kendi yasadigim ve kabul etmek zorunda kaldigim yavsaklik geldi. Uni’den mezun oldugum yillarda bilgisayar muh degilseniz sektorde is bulmaniz asiri zordu. Computational Science yuksek lisansi yapmam sayesinde bir network olusturdum.
UK’de burnum akarak ise gittigim icin eve yollamislardi. “Gelip bizi de hasta etme, evde yat dinlen” demislerdi. Turkiye’de insan gibi davranilmaya alismadigim icin ilk baslarda hep hasta halimi gizleyerek ise gitmeye calisiyordum. Simdi tirnagimi derin kessem dinleniyorum.
Zamaninda “kadindan yazilimci mi olur diyen” bir davarin Head of Engineering olarak R&D departmani basinda oldugunu gordum. Cok arastirir, cok gelistirirsiniz bu kafayla.
Sen saçını ağartırken bizim site ortaya çıktı popüler oldu. Demek ki herkes her şeyi kendi çözemiyor/bilemiyor güzel kardeşim. Ayrıca, kel olduğum için senden daha mı az yazılımcıyım?
UK’deki median aylik net gelir 2600-2700£ dolaylarinda. Hangi sehirde yasadigina gore hayat standardi degisiklik gosterir. UK’de p99 kazaniyorsan Turkiye’deki halinden isik yili otede yasarsin. Bir onemli nokta da su: Artik kimse para kazanmak amacli yurtdisina calismaya gitmiyor
Ne zamandir aklimda. Bir insanin sektorde taninmis olmasi o sektorde bilirkisi oldugu anlamina gelmiyor. 2-3 tane ChatGPT’ye prompt girdi diye “ChatGPT fine tuning” egitimi verme cureti gosteren kisi ya da kisilerin tavsiyelerini dinlemeyin.
Not: Elinizde base model
I know I am late to the party but I just recorded rust compilation time difference on my two new macbooks. The one on the left is quad-core i7 32GB and the right one is M1 16GB. Spoiler: M1 is 2x faster. They both compile the same project:
That’s why people don’t like “tech bros”. You could’ve told your limit is 5k or you’d match up to some certain amount. You are insincere and disrespectful.
Bu sene piyasada en cok satan 4 rust kitabini da okudum. Aralarinda en begendigim arkadasim
@algo_luca
’nin “Zero to Production in Rust” kitabi oldu. Bu kitap ile web ecosystem’i, error handling ve observability konulari hakkinda temel bilgileri ogrendim.
Yillardir “Turkiye’de olan umrumda degil artik” diyordum. Icimdeki ofkeyi bir sekilde sondurmustum ama bunca insanin can cekiserek, umut ve umutsuzluk icinde olmesine sebep olanlarin hak ettigini almasi icin elimden geleni tekrar yapacagim.
Burada da gecim problemi tabi ki var ama Turkiye’de oldugu gibi olumcul bir gecim problemi yuzde olarak oldukca dusuk. Yazilim sektorundeyseniz zaten 1-2 sene icerisinde refah seviyeniz katlanarak artiyor. Zorla mudurluk merdivenini tirmanmaniza da gerek yok.
After 20 years coding I just realised, commit messages are pointless.
Now I just run:
make g
Shout out to
@levelsio
for the motivation. Deploys to prod around 12 seconds later.
#buildinpublic
@ibodirector
arkadaslar bilen cikmaz ama yine de bir umut soruyorum. aksamlari siyah latex kiyafet giyip mafyalari doven bir adam var filmde. yetim buyumus ama cok zengin, usagi falan var. bir palyaco ile aralarinda husumet oluyor. adini bilen olursa cok sevinicem
Ingilizcemi gelistirmek icin uyguladigim ve en cok faydasini gordugum sey, bildigim ya da yeni ogrendigim seyler hakkinda sunum yapmak oldu.
Bu sayede hem ingilizcem hem de sunum yapma becerim gelisti.
Sunum hazirlamadan once de her zaman kisa bir dokuman hazirladim. Dokuman,
Klavye koleksiyonuma yenisi eklendi. Alttaki GMMK Pro. Glorious Panda tactile switch’ler ve GMK Blue Samurai kullanarak build’i tamamladim. Usttekinin de switch’lerini Zealios Purple V2’den Gateron Ink Black V2’ye gecirip White Blue PBT doubleshot keycaps ekledim.
Today, I published my second
@rustlang
crate - My plan is to make it an umbrella library for probabilistic data structures. Currently, it only contains a fast variant of the Bloom Filter. There is also a blog post from the future(!)
Fetocuyu “github hesabi var. yazilim sektoru icinden” argumanina indirgeyen adam, Hitler’i de “harika cizimleri var. buyuk sanatci” diyerek savunabilir. Pazartesi bakanlikta masan hazir kardesim.
Nasıl tarif etsem bilmiyorum ama kendisinden sadece bir kere gördüğüm “şimdi hareketi gör” tarzı aşırı yavşak bir sırıtışı vardı. Çantasında ÖSS sonuç belgesi çıkardı. Hayvanoğlu 3.84 ortalama yaparken ÖSS’ye de girip BOÜN işletmeyi kazanmış.
Yeni bir servis veya feature gelistirmeye baslamadan once tek sayfalik tech brief yazmanin islerimi oldukca kolaylastirdigini gordum. Hem takimdakilerden async yorum alabiliyorum hem de isi ADR’ye dokmem hizlanmis oluyor.
Yönetici adayı olsun olmasın, iş görüşmesine gelirken en azından smart casual giyinerek “görüşmeye özen gösterilmesinin” değerli olduğunu düşünüyorum. Ben penye t-shirt ile görüşmeye geleni (çok mecbur değilsem) almam.