@@ismkdc Yeni koduna baktım fakat halen göremedim. isLoaded'in yanı sıra isLoading de ilk aşamada gerekiyor gibi geldi bana çünkü async olunca çalışma anında eğer compiling uzun sürerse aynı projenin compile işlemi tekrardan başlayabilir eğer birden fazla proje aynı projeye depend ise.
@@emircanerkul Her level bir level sirayla derleniyor en alttan uste olacak sekilde yani en altta tek basina derlenebilenler sonra en alt level bagimliliklara ihtiyaci olanla gibi. Yani leveller es zamanli derlenmiyor en alttan uste sirayla derleniyor. Es zamanli olan ayni seviyede derlenenler.
Mid developer mülakat simülasyonunu da bekliyoruz hocam bu etkinliklerin devam etmesi gayet hoş, malumunuz ülkemizdeki bu anlamda paylaşım kültürümüz pek olmadığını düşünmekteyim, sektörde de hem işveren tarafının hem çalışan tarafının daha da bilinçleneceğini düşünüyorum, çevremdeki meslektaşlarımdan bu teknolojilerle uğraşmasa dahi bu kayıtları izlediğini duymam bu tarz bir video serisine ihtiyaç oldugunu gösteriyor, iyi çalışmalar.
Proxy ile server, client'ın gerçekte kim olduğunu bilmez, client kendini saklar bi nevi. Reverse proxy'de ise server'da gerçekte hangi resource'a gittiğini client bilmez, yani server kendi yapısını saklamış olur.
Iki videonuzu cok sevmistim, aklimdan gecmisti benim de, senior icin bir deneyeyim mi diye. Ama tanidik biri cikar falan diye vazgectim bu isten. Simdi videoyu izleyip bakalim sorulara :) Tesekkürler emeginiz icin. Video izledim, gercekten arkadasimizi tebrik ediyorum. Kendini cok iyi gelistirmis, bir cok konuya hakim olmasi ve türkiye'de bu tarz yazilimcilarin oldugunu bilmek mutlu etti beni. Cok basarilar dilerim
junior olarak kodlama sorusuyla ilgili bir kaç yorumum olabilir. 1- zaten derlenmiş projelerin tekrar derlenmemesini bir flag tutarak sağlayabiliriz. isCompiled gibi bir flagi derleme sonunda set ederek ve compile metodu başında önce flagi kontrol ederek derlemeyi atlayabiliriz. liste tutmaya gerek kalmaz. 2- birden fazla threadde aynı anda compile etme durumunda da belki bazı problemleri düşünmek gerekebilir. iki proje aynı projeyi depend ediyor olabilir. bu iki projeyi paralel compile etmeye çalışırsak ikisi de depend oldukları projeyi eş zamanlı compile etmeye çalışabilir. bunu engellemek için de bir projenin tek bir kere compile metodunun çağrıldığından emin olmak lazım. 3- konuşulmadı ama iki projenin birbirini depend etmesi ya da circular bir şekilde depend etme gibi hatalı durumlar olabilir. bunu da belki compile metoduna bir map parametre yollayarak çözebiliriz. her proje kendisini map'e ekleyip altındaki childların compile metoduna parametre olarak verirse ve compile metodunun başta compile edilecek proje kendisinin o map'te olup olmadığını kontrol ederse sonsuz depend etme hata verilerek kesilmiş olur. senior mülakatı izlemek keyifliydi ve bilgilendiriciydi. teşekkürler :)
Selamlar, ilk iki konuda katılıyorum size. Henüz yayınlanmayan ama değerlendirme videosunda bu alanlara değindim ve kendi çözümümü de bunlara göre hazırladım. 3. madde konusunda ise şöyle bir şey var. Direkt olarak circular durumunu gözardı edilebilirdi çünkü örnek direk Visual Studio üzerinden verilmişti. VS zaten circular dependecy yaratmaya izin vermediği için sorun olmazdı :) Teşekkürler yorumlarınız için.
Hocam ben yazılıma yeni başladım, yapıları anlıyorum fakat işleyişle ilgili pek bir şey anlamıyorum ama izlemesi bile çok şey katıyor lütfen devamı gelsin ❤
container sorusu gelirse linux kernelde bulunan cgroups ve namespace apilerini söylemeyi unutmayın. cgroups size kök kaynakların belirli bir bölümünü reserve eder ve ona bir namespace verilir. bu namespace altında çalıştırdığınız her işlem bu cgroup'un içerisinde çalışmış olur. böylelikle işletim sisteminin kendisinden komple izole edilmiş bir otama sahip olursunuz.
Video çok faydalı olmuş öncelikle. .Net Core 6 ile gelen Paralel.ForEachAsync tarafını dinamik cpu ya göre implement edebiliyoruz incelemenizi tavsiye ederim
Merhaba, kod sorusu için yazıyorum. Projeleri dependency lerine göre tree yapısında saklayıp postorder traversal kullanarak nodeları dolaşıp her bir node içerisinde compile methodunu çalıştırırsak hem aynı projeyi birden fazla derleme sorunu çözmüş oluruz hem de ilk önce bağımsız olan projeler derlenmiş olur.
Kanalı yeni keşfettim ve bu serinin tüm videolarını izledim. Çok faydalı bulduğumu belirtmek istiyorum. Sadece c# üzerine değil , bunun java üzerine olan versiyonunu görmek isterim
Bence Yazılımcıdan çok devops cu mülakatı gibi olmuş yazılım adına neredeyse bir elin parmaklarını geçmeyecek kadar çok az sorulmuş. Beni çok tatmin etmedi
Dependency leri kendisi tespit eden bir class yazıp sonra bu çözümü uygulamak daha makul ve genel bir çözüm olur kanısındayım. Elle girilirse hata ve eksik olabilir
Mükemmel içerik ve emek için teşekkürler 🙏 Hocam ufak bir eleştirim olacaktır. Kodlama sorusunu biraz daha açık şekilde yazarsanız bence çok daha iyi olur.
agile prensipleri falan hikaye. yazılım geliştirmek ve şirkette beyaz yakalı olarak kod yazmak çok farklı kavramlar. Agile gerçekten development yapan akıllı adamların işi. Beyaz yakalı otursun refactor etsin kodunu. Agile zaten uygulanabilir degil
Queue stack gibi yapıları kullanacaksak, Paralel yapısını çok iyi kurgulamak gerekirdi. Birbirini beklemeden compile edilebilen projeler ortaya çıkacaktır. İsmail'in toplamda kaç proje olabilir elimizde sorusunun Recursive ile ilişkili olduğunu düşünüyorum. Bu soru özelinde Recursive problem çıkartmayacaktı yani :)
muhendıslık de alınan dersler algorıtma sayısal mantık becerı konusunda aşırı derecede geliştiriyor bu bir gerçek 5 alaylının yapmadığı algoritmayı bir muhendıs cok rahat yapabılıyor iş veren de bunun farkında o yuzden alaylıların cok fazla iş imkanı olmuyor
Hocam proje bağımlılıklarının proje özelinde static olarak tanımlandığını varsaydığımızda; BFS algoritması kullanılarak bu işlem yeterince doğru gerçeklenebilir miydi ? Eğer öyle ise performans açısından kazanımı yüksek olur muydu?
Evet bfs kullanılabilirdi burada ve kullanılması da gerekiyordu. Dfs den daha performanslı olurdu kesinlikle de. Ama belki bfs içinde bir dfs async kullanım için daha mantıklı olurdu. İkinci videoda buna alternatif çözümler üzerinde konuştuk:)
@@TechBuddyTR Oncelikle ellerinize saglik cok guzel videolar icin. Kisa bir soru: Bfs dfs'ten neden daha performansli olurdu? Ikisi de linear complexity. Iterative yazmak recursive'e gore daha performansi arttiracaktir ama bunun disinda ozellikle bfs neden daha performansli olurdu anlamadim. Bfs'in iterative implementasyonu daha kolay oldugu icin mi? Tesekkurler.
DFS ile gidersek birim zamanda performans kazanırdık. Yani haritalamayı oluşturuduk daha kısa sürede ama buradaki örneğimizde Compile metodu içerisinde yapılan işlemler de var ve Project class'ındaki dependency'ler karmaşık boyutlara olabilir. Dolayısı ile DFS ile gidip hepsini teker teker işlemek yerine, BFS ile analiz edip gruplara ayırırısak ve bu şekilde Compile metodlarını çağırırsak totalde daha performanslı sonuç elde etmiş olurduk. Yani A projesi B yi ve C yi referans almış diyelim A: B,C şeklinde. Aynı anda D projesi de B yi referans almış olsun, D: B. Bununla birlikte E, F ve G projeleri hiç referans almamış olsun. DFS gidersek A yı derlemek için B ye ve C ye gidecektik onlar bittikten sonra A ya dönecektik. Ama BFS de C, B, E ve F için bir grup oluşturup bunları compile edip, daha sonra C yi ve sonrasında A yı derleyebiliriz. Toplam zamandan kâr etmiş olurduk. Umarım açıklayıcı olmuştur.
@@TechBuddyTR Hocam DFS ile teker teker islemek yerine demisiniz ama BFS'te zaten teker teker hepsine gitmiyor mu? Bu tur analizleri yaparken en kotu senaryodaki time ve space complexityleri uzerinden öncelikle değerlendirilirmesi daha sonra best practice ne olduğu konuşulması daha aciklayici olur diye düşünüyorum.
Hepsine gitmek zorundayız zaten analiz edebilmek için. Ama bfs'in avantajı seviyelerine göre kategorize edebilmek. Aslında ne tam olarak dfs ne de tam olarak bfs oluyor. DFS ile başlayıp BFS devam edip Compile metodunu çağırıyoruz :) Türkiye'deki iş görüşmelerinde Time ve Space Complexity konuları çok da gündeme gelmiyor maalesef. Ama ufak ufak bu konulara da girişimiz olsun diye bu tarz sorular sorup, bunların açıklamalarını bu kavramlar üzerinden yapmaya da başlayacağım.
Değerlendirme videosunda konuştuk (henüz yayınlanmadı). Amaç tüm projelere ulaşıp derlemekten ziyade, biribirine beklemek zorunda olmayan projelerin ayrı ayrı ele alınıp seviyelerine göre birlikte derlenmeleri :)
çok bilgilendirici ve güzel bir video olmuş. ancak yeni nesil senior mülakatlarında ağırlıklı algoritmalar ve hackerrank üzerinden soruluyor. :) design patternler solid vs temel senior kazanımları zaten biliyorsun olarak varsayılıp direk hackerrank üzerinden saf algoritma soruları soruluyor daha çok sizin analiz etme, çözümleme yeteneğinizle ilgileniyorlar ve malesef artık türkçe olmuyor :) sizden ingilizce hem konuşmanız hemde çok iyi okumanız yazmanızda isteniyor :) bu şekilde de farklı videolarınızda örnekler vermeniz faydalı olur inancındayım
Dynamic Programming konusunda eğitim videoları veya içerikler hazırlamak ile ilgili düşüncelerim vardı ama izleyici potansiyeli göremedim o yüzden vazgeçtim bu içeriklerden :) Ancak günümüzde hala hem sektör hem teknik bilgi için yapılıyor mülakatlar eğer Microsoft, Amazon vs gibi kurumlara başvurmuyorsanız. Ama bu büyük şirketler direk mühendislik yeteneklerinizi ölçüyor algoritma soruları ile. Bundan sonraki her mülakatta en az bu tarz bir soru sormayı planlıyorum. İngilizce konusunda ise, Türkiye'de ingilizce mülakat yapan şirket sayısı çok az. O yüzden Türkçe ilerlenebilir. Amaç zaten yurtdışından bir firma ise onun mülakatlarına kesinlikle ayrı bir şekilde hazırlanılmalı.
malesef bu konularda şahsen çok şanssızım :) aws dede soruldu. türkiyede kendini amazon sanan şirketlerde de. bu tarz ileri mülakatlar yapmanızda bilgilendirme açısından çok faydalı. bunlarda hayatın gerçekleri :) size yaşata yaşata öğretiyorlar. türkiyede olsun veya yabancı olsun ingilizceyi artık zorunlu görüyorlar. birçok mülakata katıldım bazıları işi abarttı anadil gibi ingilizce beklediler :) türkiyede mülakatların bir standardı malesef yok
Chatgpt ve Voice to text apisi kullanarak bir arkadaş mülakat botu yazsa ve yazılımla alakası olmayan başka bir arkadaş bunu kullanarak mülakata sokulsa, güzel bir deney olabilir.
çok fazla şey anlatmak zorunda kalabiliriz chatgpt ye. Ben normalde bir soru sorduğumda, konu hakkında bilgisi olduğu için İsmail çok rahat bir şekilde anlayabiliyor. Ama chatgpt ye daha fazla detay vermek zorunda kalabiliriz. Çünkü anlamadığı noktada bir soru soramıyor sana :)
@@TechBuddyTR Haklısınız. Belki ilerleyen süreçte seride değerlendirme bölümüne puanlama sistemi eklerseni, voice to text kullanılmadan direkt olarak sizin yapacağınız bir mülakat gerçekleştirilebilir. Geçer not alıp almadığı değerlendirilir o puanlama sistemiyle. Tabi kazanım ne olacak bu içerikte bilmiyorum :) Popüler bir konu olduğu için kanala ilgiyi arttırır düşüncesiyle paylaşıyorum sadece.
Salih enerjin 0 yüz ifaden donuk mülakata gireceklere biraz daha pozitif enerji ver yazılımcı olmuşsun manuel yazıyorsun karşındakine seni dinlemiyorum imajı veriyorsun hoş değil.
Yorumunuz için teşekkür ederim. Manuel yazmamak konusunda bir tavsiyeniz var mı? Hem benim kafamdakileri okuyacak, hem adayın verdiği sorulardaki önemli noktaların altını çizebilen bir sistem varsa ben de kullanmak isterim. Bunun dışında not alacağım bilgisini zaten adaya veriyorum. Dolayısı ile onu dinlemediğimi düşünmüyor olmasını beklerim.
Bence tam mülakatçı havasında biri gibi gözüküyor. Ben sevdim.Ama gerçek dünyada mülakatçılar nasıldır çok bilgim yok. Onu da göz önünde bulundurmak lazım.
@@buraksogutlu9103 "eyvallah, sikinti yok" diyorsa o zaman "bilader" de eklesin arkasina. cunku bunlar genelde birlikte kullanilan sozcukler. beni rahatsiz etti, sizi etmemis olabilir. ozellikle "sıkıntı yok" ifadesi hem anlamsiz hem de cok itici bana gore. bankaya gittiniz paranizi cekceksiniz, ordaki gorevli "eyvallah, sikinti yok" dese normal mi sizce?
@@vuralmecbur9958 "Eyvallah, sıkıntı yok" kelimeleri bizati şahsın konuyu anladığını bildiren kelimeler (İzlediğimiz durum için geçerli) Bilader ise karşısında ki kişiye karşı kullanılan bir hitap şekli. Siz bu iki durumun ve anlamın arasında ki farkı bilmeden mi yorum yapıyorsun? diyerek hayretler içerisinde okudum yorumunuzu. Eğer bir gün mülakat yaparsanız (umarım yapmazsınız) eyvallah diyen adayı elersiniz.
vay anasını sen nasıl bir Çar programcısın middle ağabey..sen yau takılma buralara mazallah bu iki feyk programcının foyasını ortaya çıkarırsın buralar senin seviyelerin değil sinsina şirketi gibi değil bura
Multi thread konusuna girmeden asekronu tercih ediyorum direk cunku hem io-bound taskler var surecde hem de multi thread kullanip senkronizasyon problemleriyle ugrasmak istemiyorum. Multi thread kullansaydim buyuk ihtimal salih abinin degerlendirme videosunda bahsettigi (henuz yayinlanmadi) event mantigini da eklemem gerekirdi. Ustune yine thread bloklamamak icin asekron yapardim file i/o islerini
Bu kanıya nasıl vardığınızı anlamadım ancak İsmail'in de benim de bu konuda eksik olduğumuzu düşündüğünüz yerler varsa, yorumlarınızı dinlemek isteriz.
@@TechBuddyTR projelerin derlenmesiyle ilgili soruda paralel calistirma icin asenkronla ayni seymis gibi ifade ettiginiz icin oyle dusundum. genelde bu hata cok yapilir, o yuzden boyle bir kaniya vardim. sizin o soruda sordugunuz sey bence paralel programlama. o sorunun asenkron programlama ile ilgili oldugunu dusunmuyorum zira ayni tur sorulari zamaninda amazon ve google mulakatlarinda kendim de cozdum.
İsmail, daha sakin kafayla proje için bir çalışma yapmış. Görmek isteyenler detaylara linkten ulaşabilir.
github.com/ismkdc/DependencyLoader
mülakat heyecanından düşünemediğim, sonradan konuşup tartıştığımız fikirleri birleştirip koda dökmeye çalıştım :)
@@ismkdc Yeni koduna baktım fakat halen göremedim. isLoaded'in yanı sıra isLoading de ilk aşamada gerekiyor gibi geldi bana çünkü async olunca çalışma anında eğer compiling uzun sürerse aynı projenin compile işlemi tekrardan başlayabilir eğer birden fazla proje aynı projeye depend ise.
@@emircanerkul Her level bir level sirayla derleniyor en alttan uste olacak sekilde yani en altta tek basina derlenebilenler sonra en alt level bagimliliklara ihtiyaci olanla gibi. Yani leveller es zamanli derlenmiyor en alttan uste sirayla derleniyor. Es zamanli olan ayni seviyede derlenenler.
Be serinin çok değerli olduğunu düşünüyorum. Yazılımın farklı alanlarını da kapsayacak şekilde çeşitlendirilerek devam etmesi güzel olur.
Mid developer mülakat simülasyonunu da bekliyoruz hocam bu etkinliklerin devam etmesi gayet hoş, malumunuz ülkemizdeki bu anlamda paylaşım kültürümüz pek olmadığını düşünmekteyim, sektörde de hem işveren tarafının hem çalışan tarafının daha da bilinçleneceğini düşünüyorum, çevremdeki meslektaşlarımdan bu teknolojilerle uğraşmasa dahi bu kayıtları izlediğini duymam bu tarz bir video serisine ihtiyaç oldugunu gösteriyor, iyi çalışmalar.
Proxy ile server, client'ın gerçekte kim olduğunu bilmez, client kendini saklar bi nevi. Reverse proxy'de ise server'da gerçekte hangi resource'a gittiğini client bilmez, yani server kendi yapısını saklamış olur.
güzel özet :D
Iki videonuzu cok sevmistim, aklimdan gecmisti benim de, senior icin bir deneyeyim mi diye. Ama tanidik biri cikar falan diye vazgectim bu isten. Simdi videoyu izleyip bakalim sorulara :) Tesekkürler emeginiz icin. Video izledim, gercekten arkadasimizi tebrik ediyorum. Kendini cok iyi gelistirmis, bir cok konuya hakim olmasi ve türkiye'de bu tarz yazilimcilarin oldugunu bilmek mutlu etti beni. Cok basarilar dilerim
Çok teşekkür ederim. Sizleri de bekleriz bir gün yayınımıza :)
Çok keyifliydi teşekkürler :)
Katılım gösterdiğin için ben teşekkür ederim.
İsmail kendini çok güzel ifade ediyor, imrendim
junior olarak kodlama sorusuyla ilgili bir kaç yorumum olabilir.
1- zaten derlenmiş projelerin tekrar derlenmemesini bir flag tutarak sağlayabiliriz. isCompiled gibi bir flagi derleme sonunda set ederek ve compile metodu başında önce flagi kontrol ederek derlemeyi atlayabiliriz. liste tutmaya gerek kalmaz.
2- birden fazla threadde aynı anda compile etme durumunda da belki bazı problemleri düşünmek gerekebilir. iki proje aynı projeyi depend ediyor olabilir. bu iki projeyi paralel compile etmeye çalışırsak ikisi de depend oldukları projeyi eş zamanlı compile etmeye çalışabilir. bunu engellemek için de bir projenin tek bir kere compile metodunun çağrıldığından emin olmak lazım.
3- konuşulmadı ama iki projenin birbirini depend etmesi ya da circular bir şekilde depend etme gibi hatalı durumlar olabilir. bunu da belki compile metoduna bir map parametre yollayarak çözebiliriz. her proje kendisini map'e ekleyip altındaki childların compile metoduna parametre olarak verirse ve compile metodunun başta compile edilecek proje kendisinin o map'te olup olmadığını kontrol ederse sonsuz depend etme hata verilerek kesilmiş olur.
senior mülakatı izlemek keyifliydi ve bilgilendiriciydi. teşekkürler :)
Selamlar, ilk iki konuda katılıyorum size. Henüz yayınlanmayan ama değerlendirme videosunda bu alanlara değindim ve kendi çözümümü de bunlara göre hazırladım.
3. madde konusunda ise şöyle bir şey var. Direkt olarak circular durumunu gözardı edilebilirdi çünkü örnek direk Visual Studio üzerinden verilmişti. VS zaten circular dependecy yaratmaya izin vermediği için sorun olmazdı :)
Teşekkürler yorumlarınız için.
Hocam ben yazılıma yeni başladım, yapıları anlıyorum fakat işleyişle ilgili pek bir şey anlamıyorum ama izlemesi bile çok şey katıyor lütfen devamı gelsin ❤
Lutfen bu konsepti devam ettirin, cok keyifli izlemesi
Teşekkürler yorumunuz için. Ben de devam ettirme peşindeyim.
container sorusu gelirse linux kernelde bulunan cgroups ve namespace apilerini söylemeyi unutmayın. cgroups size kök kaynakların belirli bir bölümünü reserve eder ve ona bir namespace verilir. bu namespace altında çalıştırdığınız her işlem bu cgroup'un içerisinde çalışmış olur. böylelikle işletim sisteminin kendisinden komple izole edilmiş bir otama sahip olursunuz.
Mülakat değerlendirmesinde bahsetmiştim galiba az da olsa bu konudan :)
@@TechBuddyTR hocam kusura bakmayin tamamini dinleyemedim :(
Video çok faydalı olmuş öncelikle.
.Net Core 6 ile gelen Paralel.ForEachAsync tarafını dinamik cpu ya göre implement edebiliyoruz incelemenizi tavsiye ederim
mülakatları izlerken bu kanalı buldum ve mülakatlar çok güzel devamını bekliyoruz hocam.
Cok guzel ve faydali olmus. Devamini farkli sorularla bekliyoruz. 👍
Merhaba, kod sorusu için yazıyorum. Projeleri dependency lerine göre tree yapısında saklayıp postorder traversal kullanarak nodeları dolaşıp her bir node içerisinde compile methodunu çalıştırırsak hem aynı projeyi birden fazla derleme sorunu çözmüş oluruz hem de ilk önce bağımsız olan projeler derlenmiş olur.
Ağzınıza sağlık. Güzel bilgiler.. Serinin devamını bekliyoruz :)
Teşekkürler. Devamı gelecek :)
Çok güzeldi. Hem İsmail'e hem de Salih ağabeyime teşekkürler.
Teşekkürler Emre'cim.
Kanalı yeni keşfettim ve bu serinin tüm videolarını izledim. Çok faydalı bulduğumu belirtmek istiyorum. Sadece c# üzerine değil , bunun java üzerine olan versiyonunu görmek isterim
Harika, teşekkürler hocam, emeğinize sağlık
Harika bir sohbet. Oldukca ogretici
Bence Yazılımcıdan çok devops cu mülakatı gibi olmuş yazılım adına neredeyse bir elin parmaklarını geçmeyecek kadar çok az sorulmuş. Beni çok tatmin etmedi
çok yararlı paylaşımlar teşekkür ediyorum
Harikaydı emeğinize sağlık. Çok teşekkürler.
junior ve senior için de frontnd developer mülakaı gelir umarım .güzel bir video serisi
Umarım aday ve Değerlendirebilen birilerini bulabiliriz bu mülakatlar için :)
@@TechBuddyTR ya bi de dikkat ettim takılan arkadaşlar anlık google da hiç bakmıyorlar mı ? ben mi kaçırdım ?
Dependency leri kendisi tespit eden bir class yazıp sonra bu çözümü uygulamak daha makul ve genel bir çözüm olur kanısındayım. Elle girilirse hata ve eksik olabilir
Mükemmel içerik ve emek için teşekkürler 🙏 Hocam ufak bir eleştirim olacaktır. Kodlama sorusunu biraz daha açık şekilde yazarsanız bence çok daha iyi olur.
Selamlar,
Özellikle tüm detaylarını vermemeye çalışıyorum ki adayın soru karşısındaki davranışlarını da sezebilelim.
agile prensipleri falan hikaye. yazılım geliştirmek ve şirkette beyaz yakalı olarak kod yazmak çok farklı kavramlar. Agile gerçekten development yapan akıllı adamların işi. Beyaz yakalı otursun refactor etsin kodunu. Agile zaten uygulanabilir degil
cok guzel seri oluyor boyle
Burada queue stack gibi bir yapi daha uygun olacakti.Recursive olarak cagirmak big o notationda cok maliyetli olacaktir.
Queue stack gibi yapıları kullanacaksak, Paralel yapısını çok iyi kurgulamak gerekirdi. Birbirini beklemeden compile edilebilen projeler ortaya çıkacaktır. İsmail'in toplamda kaç proje olabilir elimizde sorusunun Recursive ile ilişkili olduğunu düşünüyorum. Bu soru özelinde Recursive problem çıkartmayacaktı yani :)
live coding kısmı, geçen haftaki recursive videosuna sınav olmuş bir nevi :d
TechBuddy kanalının, iş görüşmelerine etkisi diyelim :P
baya faydalı bilgiler:)
Keşke videoyu dakikalarina ayirip hangi dakikada ne konuştuğunuzu yazsaydınız.
muhendıslık de alınan dersler algorıtma sayısal mantık becerı konusunda aşırı derecede geliştiriyor bu bir gerçek 5 alaylının yapmadığı algoritmayı bir muhendıs cok rahat yapabılıyor iş veren de bunun farkında o yuzden alaylıların cok fazla iş imkanı olmuyor
herkes aselsanda roket yapmıyor :)
Hocam proje bağımlılıklarının proje özelinde static olarak tanımlandığını varsaydığımızda; BFS algoritması kullanılarak bu işlem yeterince doğru gerçeklenebilir miydi ? Eğer öyle ise performans açısından kazanımı yüksek olur muydu?
Evet bfs kullanılabilirdi burada ve kullanılması da gerekiyordu. Dfs den daha performanslı olurdu kesinlikle de. Ama belki bfs içinde bir dfs async kullanım için daha mantıklı olurdu. İkinci videoda buna alternatif çözümler üzerinde konuştuk:)
@@TechBuddyTR Oncelikle ellerinize saglik cok guzel videolar icin. Kisa bir soru: Bfs dfs'ten neden daha performansli olurdu? Ikisi de linear complexity. Iterative yazmak recursive'e gore daha performansi arttiracaktir ama bunun disinda ozellikle bfs neden daha performansli olurdu anlamadim. Bfs'in iterative implementasyonu daha kolay oldugu icin mi? Tesekkurler.
DFS ile gidersek birim zamanda performans kazanırdık. Yani haritalamayı oluşturuduk daha kısa sürede ama buradaki örneğimizde Compile metodu içerisinde yapılan işlemler de var ve Project class'ındaki dependency'ler karmaşık boyutlara olabilir. Dolayısı ile DFS ile gidip hepsini teker teker işlemek yerine, BFS ile analiz edip gruplara ayırırısak ve bu şekilde Compile metodlarını çağırırsak totalde daha performanslı sonuç elde etmiş olurduk.
Yani A projesi B yi ve C yi referans almış diyelim A: B,C şeklinde. Aynı anda D projesi de B yi referans almış olsun, D: B. Bununla birlikte E, F ve G projeleri hiç referans almamış olsun. DFS gidersek A yı derlemek için B ye ve C ye gidecektik onlar bittikten sonra A ya dönecektik. Ama BFS de C, B, E ve F için bir grup oluşturup bunları compile edip, daha sonra C yi ve sonrasında A yı derleyebiliriz. Toplam zamandan kâr etmiş olurduk. Umarım açıklayıcı olmuştur.
@@TechBuddyTR Hocam DFS ile teker teker islemek yerine demisiniz ama BFS'te zaten teker teker hepsine gitmiyor mu? Bu tur analizleri yaparken en kotu senaryodaki time ve space complexityleri uzerinden öncelikle değerlendirilirmesi daha sonra best practice ne olduğu konuşulması daha aciklayici olur diye düşünüyorum.
Hepsine gitmek zorundayız zaten analiz edebilmek için. Ama bfs'in avantajı seviyelerine göre kategorize edebilmek. Aslında ne tam olarak dfs ne de tam olarak bfs oluyor. DFS ile başlayıp BFS devam edip Compile metodunu çağırıyoruz :)
Türkiye'deki iş görüşmelerinde Time ve Space Complexity konuları çok da gündeme gelmiyor maalesef. Ama ufak ufak bu konulara da girişimiz olsun diye bu tarz sorular sorup, bunların açıklamalarını bu kavramlar üzerinden yapmaya da başlayacağım.
Kodlama sorusunda hatırlayamadığı bir kısım olsa ve Google'a baksa senior'un tepkisi ne olurdu?
Frontend içinde mülakat istiyoruz.
Adayları bekliyoruz :)
DFS işi görür bence. sonda sorulan soruda.
Bence de.
BFS daha iyi sanki :)
@@TechBuddyTR hocam, derleme mantığı stack yapısına uygun olduğu için DFS daha mantıklı geliyor bana :)
Değerlendirme videosunda konuştuk (henüz yayınlanmadı). Amaç tüm projelere ulaşıp derlemekten ziyade, biribirine beklemek zorunda olmayan projelerin ayrı ayrı ele alınıp seviyelerine göre birlikte derlenmeleri :)
💯💯💯
Kaşki frontend üzərindende bele intervyu ola.
Frontend bilsem de keşke mülakat yapsam :)
Ekranda chatgpt açmış okuyor cevapları :) Senior böyle olur işte herşeyi bilen değil bildiği algısı yaratan
:) Chat GPT bu kadar isabetli yorumlar yapamazdı ona verdiğimiz bilgiler ile.
2. bölüm ne zaman yayınlanacak?
Muhtemelen yarın (31 Ocak) yayınlanmış olur.
çok bilgilendirici ve güzel bir video olmuş. ancak yeni nesil senior mülakatlarında ağırlıklı algoritmalar ve hackerrank üzerinden soruluyor. :) design patternler solid vs temel senior kazanımları zaten biliyorsun olarak varsayılıp direk hackerrank üzerinden saf algoritma soruları soruluyor daha çok sizin analiz etme, çözümleme yeteneğinizle ilgileniyorlar ve malesef artık türkçe olmuyor :) sizden ingilizce hem konuşmanız hemde çok iyi okumanız yazmanızda isteniyor :) bu şekilde de farklı videolarınızda örnekler vermeniz faydalı olur inancındayım
Dynamic Programming konusunda eğitim videoları veya içerikler hazırlamak ile ilgili düşüncelerim vardı ama izleyici potansiyeli göremedim o yüzden vazgeçtim bu içeriklerden :)
Ancak günümüzde hala hem sektör hem teknik bilgi için yapılıyor mülakatlar eğer Microsoft, Amazon vs gibi kurumlara başvurmuyorsanız. Ama bu büyük şirketler direk mühendislik yeteneklerinizi ölçüyor algoritma soruları ile. Bundan sonraki her mülakatta en az bu tarz bir soru sormayı planlıyorum.
İngilizce konusunda ise, Türkiye'de ingilizce mülakat yapan şirket sayısı çok az. O yüzden Türkçe ilerlenebilir. Amaç zaten yurtdışından bir firma ise onun mülakatlarına kesinlikle ayrı bir şekilde hazırlanılmalı.
malesef bu konularda şahsen çok şanssızım :) aws dede soruldu. türkiyede kendini amazon sanan şirketlerde de. bu tarz ileri mülakatlar yapmanızda bilgilendirme açısından çok faydalı. bunlarda hayatın gerçekleri :) size yaşata yaşata öğretiyorlar. türkiyede olsun veya yabancı olsun ingilizceyi artık zorunlu görüyorlar. birçok mülakata katıldım bazıları işi abarttı anadil gibi ingilizce beklediler :) türkiyede mülakatların bir standardı malesef yok
üstad @Techbuddy 57.45 de paralel bi şekilde diosunuz sonra Task thread diosunuz. paralel != concurrency değil mi orda bi kargaşa var gibi ...
Başka yorumda bir arkadaşın da dikkatini çekmişti bu, aşağıda biraz daha derinlemesine konuşmuştuk:)
@@TechBuddyTR inim de bakim :)
değerlendirme ne zaman gelir
Birkaç güne gelecek.
Chatgpt ve Voice to text apisi kullanarak bir arkadaş mülakat botu yazsa ve yazılımla alakası olmayan başka bir arkadaş bunu kullanarak mülakata sokulsa, güzel bir deney olabilir.
çok fazla şey anlatmak zorunda kalabiliriz chatgpt ye. Ben normalde bir soru sorduğumda, konu hakkında bilgisi olduğu için İsmail çok rahat bir şekilde anlayabiliyor. Ama chatgpt ye daha fazla detay vermek zorunda kalabiliriz. Çünkü anlamadığı noktada bir soru soramıyor sana :)
@@TechBuddyTR Haklısınız. Belki ilerleyen süreçte seride değerlendirme bölümüne puanlama sistemi eklerseni, voice to text kullanılmadan direkt olarak sizin yapacağınız bir mülakat gerçekleştirilebilir. Geçer not alıp almadığı değerlendirilir o puanlama sistemiyle. Tabi kazanım ne olacak bu içerikte bilmiyorum :) Popüler bir konu olduğu için kanala ilgiyi arttırır düşüncesiyle paylaşıyorum sadece.
44:28 ne edebilmek için dedi anlamadım? demescreuate?
Demonstrate :) (gösterebilmek)
Fenerbahçe iyiymiş :)
25. kare tekniği gibi olmuş ama bilerek yaptığım bir şey değildi :) OBS sürpriz yapmış
@@TechBuddyTR 😀😀👍
Senior icin bir az kolay olmus
Faang mülakatı değildi en nihayetinde. Zorluk seviyesi yeterli düzeydeydi bence
kılarsın hocam
Kaç yilda bu seviyeye gelinir acaba
Çok kısa bir süre olmayacağı ortada. Geçirilen süreyi verimli geçirmek de bir o kadar önemli tabi.
Salih enerjin 0 yüz ifaden donuk mülakata gireceklere biraz daha pozitif enerji ver yazılımcı olmuşsun manuel yazıyorsun karşındakine seni dinlemiyorum imajı veriyorsun hoş değil.
Yorumunuz için teşekkür ederim. Manuel yazmamak konusunda bir tavsiyeniz var mı? Hem benim kafamdakileri okuyacak, hem adayın verdiği sorulardaki önemli noktaların altını çizebilen bir sistem varsa ben de kullanmak isterim. Bunun dışında not alacağım bilgisini zaten adaya veriyorum. Dolayısı ile onu dinlemediğimi düşünmüyor olmasını beklerim.
Bence tam mülakatçı havasında biri gibi gözüküyor. Ben sevdim.Ama gerçek dünyada mülakatçılar nasıldır çok bilgim yok. Onu da göz önünde bulundurmak lazım.
bir aday mulakatta niye "eyvallah" diyip durur?
Yazılımcı da insan kardeşim çok da abartmamak lazım bazı şeyleri. Eyvallah dedi diye ekleyecek değilsin
Bence haklı bu kadar eyvallah diyen bir adayla çalışılmaz shshshdhdjd
İş görüşmeleri çok kurumsal seviyelerde gerçekleşmiyorsa bence sorun yaratacak bir kelime değil.
@@buraksogutlu9103 "eyvallah, sikinti yok" diyorsa o zaman "bilader" de eklesin arkasina. cunku bunlar genelde birlikte kullanilan sozcukler.
beni rahatsiz etti, sizi etmemis olabilir. ozellikle "sıkıntı yok" ifadesi hem anlamsiz hem de cok itici bana gore. bankaya gittiniz paranizi cekceksiniz, ordaki gorevli "eyvallah, sikinti yok" dese normal mi sizce?
@@vuralmecbur9958 "Eyvallah, sıkıntı yok" kelimeleri bizati şahsın konuyu anladığını bildiren kelimeler (İzlediğimiz durum için geçerli) Bilader ise karşısında ki kişiye karşı kullanılan bir hitap şekli. Siz bu iki durumun ve anlamın arasında ki farkı bilmeden mi yorum yapıyorsun? diyerek hayretler içerisinde okudum yorumunuzu.
Eğer bir gün mülakat yaparsanız (umarım yapmazsınız) eyvallah diyen adayı elersiniz.
57:30 bu arada mulakati yapan da aday da paralel programlama ile asenkron programlama arasindaki farki bilmiyor. kör dövüşü olmuş biraz :D
vay anasını sen nasıl bir Çar programcısın middle ağabey..sen yau takılma buralara mazallah bu iki feyk programcının foyasını ortaya çıkarırsın buralar senin seviyelerin değil sinsina şirketi gibi değil bura
Multi thread konusuna girmeden asekronu tercih ediyorum direk cunku hem io-bound taskler var surecde hem de multi thread kullanip senkronizasyon problemleriyle ugrasmak istemiyorum. Multi thread kullansaydim buyuk ihtimal salih abinin degerlendirme videosunda bahsettigi (henuz yayinlanmadi) event mantigini da eklemem gerekirdi. Ustune yine thread bloklamamak icin asekron yapardim file i/o islerini
Bu kanıya nasıl vardığınızı anlamadım ancak İsmail'in de benim de bu konuda eksik olduğumuzu düşündüğünüz yerler varsa, yorumlarınızı dinlemek isteriz.
@@TechBuddyTR Toksik işte hocam diğer yorumuna bak eyvallaha takılmış...ego tatmin ediyor..
@@TechBuddyTR projelerin derlenmesiyle ilgili soruda paralel calistirma icin asenkronla ayni seymis gibi ifade ettiginiz icin oyle dusundum. genelde bu hata cok yapilir, o yuzden boyle bir kaniya vardim. sizin o soruda sordugunuz sey bence paralel programlama. o sorunun asenkron programlama ile ilgili oldugunu dusunmuyorum zira ayni tur sorulari zamaninda amazon ve google mulakatlarinda kendim de cozdum.