Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

C ve C++ Yazılım Geliştiriciler için Yurtdışı Kariyer Olanakları ve Görüşme Teknikleri‏ Altan Alpay 4/6/2017 CSD C/C++ Altan Alpay.

Benzer bir sunumlar


... konulu sunumlar: "C ve C++ Yazılım Geliştiriciler için Yurtdışı Kariyer Olanakları ve Görüşme Teknikleri‏ Altan Alpay 4/6/2017 CSD C/C++ Altan Alpay."— Sunum transkripti:

1 C ve C++ Yazılım Geliştiriciler için Yurtdışı Kariyer Olanakları ve Görüşme Teknikleri‏
Altan Alpay 4/6/2017 CSD C/C++ Altan Alpay

2 Özet C ve C++ açısından Yurtdişi İş Piyasalarına Genel Bakış
Amerika İngiltere ve İrlanda Almanya   İşe Alınma Süreçleri Özgeçmiş Hazirlanmasi Kariyer Siteleri ve Başvuru Telefon Görüşmesi (Phone Screning) Yüzyüze Görüşmeler (On-Site Interview) Teklif Aşaması ve Ücretlendirme Referans Kontrolu ve Geçmiş Araştırması Göçmenlik, Çalışma İzni ve Vize Alınması 4/6/2017 CSD C/C++ Altan Alpay

3 Özet İş görüşmelerinde sık sorulan sorular: C ve C++ Soruları
Veri Yapilari (Data Structures)  STL (Standart kütüphane) Algoritmalar ve Karmaşıklık (Complexity) Analizi Nesneye Dayalı Tasarım ve Tasarım Desenleri (Design Patterns) TCP/IP ve Ağ Programlama Çoklu İş Parçacıkları (multi-threading) ve senkronizasyonu  Unix/Linux Programlama  İşlemler Arası Haberleşme Mekanızmaları (Interprocess Communication) Gömülü Sistemler 4/6/2017 CSD C/C++ Altan Alpay

4 UYGULAMA Programcılığı
Dünyada C/C++ Nerelerde Kullanılıyor? Sistem Programlama ve Gömülü Sistemler Bilişim Altyapısı (İşletim Sistemiler, Veritabanlari) Telekom Altyapısı (Router, Baz İstasyonu, Santral) Mobil Cihazlar (Cep telefonu, USB Modem, iPad) Havacılık Otomotiv Finans (Borsa İşlemleri) İnternet (Google, Yahoo, MSN) Savunma Sağlık Ölçeklenme (Scalability) UYGULAMA Programcılığı 4/6/2017 CSD C/C++ Altan Alpay

5 Ölçeklenebilirlik (Scalability) Donanıma Yakınlık (Hardware) Esneklik
Neden C/C++? Performans Kontrol Ölçeklenebilirlik (Scalability) Donanıma Yakınlık (Hardware) Esneklik 4/6/2017 CSD C/C++ Altan Alpay

6 Neden gitmeli? Dünya Standartlarında Tecrube edinmek Kalibrasyon
Komplex ve Heyecanli Projelerde Çalışmak Yabancı kültürleri tanımak Yabancı Dilini Geliştirmek Dövizli Askerlikten faydalanmak (3 yıl gerekli) 4/6/2017 CSD C/C++ Altan Alpay

7 Neden dönmeli? Türkiye’deki Yazılım Sektorunun Geliştirmek
Dünya Standartlarına Yaklaştırmak Komplex Projelerin Türkiye’de yapılması için gereken İnsan kaynaklarını sağlamak 4/6/2017 CSD C/C++ Altan Alpay

8 C/C++ Piyasalara Genel Bakış
Ülke Büyüklük Derinlik Ücret Vize Uzaklık Türk Görüşme ABD Orta Zor Uzak Az Çok Zor Almanya Yakın Çok Kolay İngiltere İrlanda Fransa Çok Yakın 4/6/2017 CSD C/C++ Altan Alpay

9 Amerika Başlıca Yazılım Merkezleri
Silikon Vadisi ve Çevresi (San Francsico) Boston ve Çevresi (Route 128) New York ve New Jersey (Finans ve Telekom) Dallas (Telekom ve Gömülü Sistemler) Seattle (Microsoft, Amazon, Boeing) Raliegh, NC (Research Triangle Park) San Diego (Wireless, Qualcomm) Washington, DC (Devlet, Güvenlik ve Savunma) 4/6/2017 CSD C/C++ Altan Alpay

10 Amerika Kariyer Siteleri İş Arama Motorları Monster Dice
Hot Jobs (Yahoo) JobServe İş Arama Motorları Simply Hired Indeed 4/6/2017 CSD C/C++ Altan Alpay

11 Amerika Artılar Büyük ve Geniş Yelpazeli Yazılım Piyasası
Yenilikçi ve Girişimci Eğitim olanakları ve Üniversiteler (MIT, Harvard, Stanford, Berkeley) Eksiler Ücretlerdeki ve Refah Seviyesinde Gerileme Hintli ve Çinli Baskısı Çalışma İzni Yıllık Kotalara Tabi (65,000 adet) Türkiye’den Uzaklık (12 saat – 18 saat uçuş) Türk nufusun az olması 4/6/2017 CSD C/C++ Altan Alpay

12 Almanya Başlıca Yazılım Geliştirme Merkezleri
Munich (Telekom, Otomotiv, Gömülü) Düsseldorf/Köln (Telekom) Frankfurt (Finans) Stutgart (Otomotiv) Nürnberg (Telekom ve Gömülü) Berlin, Hamburg ve Aachen diğer merkezler Başlıca Sektorler ve Oyuncular Gömülü Sistemler (Bosch, Siemens) Telekom (Nokia Siemens, Ericsson, Rohde&Swartz, Infinion, Comneon) Otomotiv (BMW, VW, Mercedes, Porsche) Sağlık (Siemens) 4/6/2017 CSD C/C++ Altan Alpay

13 Almanya Avantajlar Büyük ve Kurumsal Şirketler
Genelde Hard-Products (Araba, Tren, Cep telefonu) Projelerde başka mühendislik dallarıyla etkileşim (multi-disciplinary) Uzun Soluklu Projeler İş Güvenliği ve Sendikal Haklar Danışman ve Sözleşmeliler için Yüksek Ücretler Yukarıdan Aşağı Yönetim Yaklaşımı (Bottom-Up) Uzun Tatiller (Yaklasık 8 hafta) Türkiye’ye yakınlık Türklerin çok olması (Market, TV, Sinema, Gazete, Uçuş, Dernek) Eksiler Kadrolu Çalışanlar için Düşük Ücret Türklerin çok olması Girişimcilik ve Serbest Çalışma Kültürel olarak sevilmez Kötü Hava Şartları Dil Problemi 4/6/2017 CSD C/C++ Altan Alpay

14 İngiltere / İrlanda İngiltere İrlanda JobServe.co.uk Monster.co.uk
Londra => Finans ve Bankacılık Cambridge / M11 M4 Corridor Silicon Glen (İskoçya) HSMP (Kalifiye Göçmen Programı) İrlanda Dublin Cork Yeşil Kart Programı (IT çalısanları için 2 sene kısıtlamasız çalışma vizesi) JobServe.co.uk Monster.co.uk 4/6/2017 CSD C/C++ Altan Alpay

15 Özgeçmiş Hazırlanması
Amerika Resume Avrupa Curriculum Vitae Üst Düzey Executive Summary Danışman Bio 4/6/2017 CSD C/C++ Altan Alpay

16 Amerikan Tipi Özgeçmiş (Resume)
Resume’ye konulmayacaklar (Önemli!!) Fotoğraf Cinsiyet Doğum Tarihi Doğum Yeri Medeni Durum Çocuk Sayısı Vatandaşlık Askerlik Göçmenlik Sürücü Ehliyeti Üniversite Giriş Sınavı Sonuçları Hobi olarak ‘reading’ 4/6/2017 CSD C/C++ Altan Alpay

17 Avrupa Tipi Özgeçmiş (CV)
CV’ye konulacaklar Fotoğraf (Özellikle Almanya’da) Cinsiyet Doğum Tarihi Doğum Yeri Medeni Durum Vatandaşlık Çalışma İzni Sürücü Ehliyeti 4/6/2017 CSD C/C++ Altan Alpay

18 Özgeçmiş Hazırlama Her Ülke için Ayrı Özgeçmiş
Amerika için Resume Avrupa için CV Her Pozisyona Göre Ayrı Özgezmiş Yazılım Geliştirici (Software Engineer / Developer) Test / Yazılım Kalite Mühendisi (Test / QA Engineer) Yazılım Mimarı (Software Architect) Sistem Mühendisliği (System Engineering) Project Manager Product Manager Program Manager JAVA / C++ açısından farklı CV’ler 4/6/2017 CSD C/C++ Altan Alpay

19 Özgeçmiş Yapısı İletişim Bilgileri Hedef (Objective) (önemli!)
Skills and Qualifications Tablosu (En Önemli Kısım!!) Skill İsmi (C/C++, Java, Network Programming etc) Detayları (C/C++ => STL, Templates, Boost, ACE) Bilgi Derecesi (Expert, Beginner, Medium) Çalışma yılı (3 yıl, 5 yıl) İş Tecrubeleri (Sondan başa doğru) Pozisyon (Title/Role) Projeler ve görev tanımı Kullanilan Teknoloji (Environment/Technologies) Eğitim (En sondan başlayarak) Lisans ve Yüksek Lisans (Lise ve İlkokul yazmayın) Yazılımla alakalı aldığınız kurslar 4/6/2017 CSD C/C++ Altan Alpay

20 Örnek Özgeçmişler 4/6/2017 CSD C/C++ Altan Alpay

21 Örnek Özgeçmiş Software Engineering (C/C++, Unix and Networking)
Objective: To design and develop distributed systems in the problem domains of Finance. Programming Languages/Development Technologies/Platforms OOA/D: C/C++, UML, STL, ACE / TAO, Boost, Design Patterns Unix Programming: Linux, IPC, sockets, pthreads, Solaris, HPUX Network Programming: TCP/IP, UDP, SCTP, Sockets, ACE/TAO, CORBA Relational Databases: SQL, MySQL,Informix, TimesTen, Oracle OCCI Configuration Tools: Clearcase, SourceSafe, P4, SCCS, CVS, SVN 4/6/2017 CSD C/C++ Altan Alpay

22 Örnek Özgeçmiş Nokia Networks, Irving, TX April 2000 - April 2001
Sr. Consultant Short Message Service Center (SMSC) for TDMA Participated in the feasibility studies, system and subsystem specification design and implementation of an SMPP enabled SMSC prototype for TDMA (ANSI-136). I focused to the implementation of store-forward subsystem by utilizing C++/STL development tools on HP UNIX (HP-UX) environment. I used HP OpenCall SS7 Stack to handle IS-41D MAP over TCAP. Used OSS ASN.1 Compiler. Informix and its C/C++ SDK used as Relational Database. mPosition Gateway Mobile Location Center (GMLC) Ported and modified Alarm, Logging and Billing Daemons from Nokia SMSC to Nokia mPosition’s GMLC for GSM. Used Rational Rose and Visio for UML Modeling and ClearCase for source control. Technologies: SMSC, HP-UX, GMLC, C++, STL, Informix, TCAP, IS-47 MAP, HP OpenCall, SMPP 4/6/2017 CSD C/C++ Altan Alpay

23 Örnek Özgeçmiş Nokia Networks Sr. Consultant 4/6/2017
From 2000 April To 2001 April (1 Year) Technologies SMSC, HP-UX, GMLC, C++, STL, Informix, TCAP, IS-47 MAP, HP OpenCall, SMPP Nokia Networks Dallas, TX Sr. Consultant Contracted through Tangent International (SMSC) for TDMA Participated in the feasibility studies, system and subsystem specification design and implementation of an SMPP enabled SMSC prototype for TDMA (ANSI-136). I focused to the implementation of store-forward subsystem by utilizing C++/STL development tools on HP UNIX (HP-UX) environment. I used HP OpenCall SS7 Stack to handle IS-41D MAP over TCAP. Used ASN.1 Compiler. Informix and its C/C++ SDK used as Relational Database. mPosition (GMLC) Ported and modified Alarm, Logging and Billing Daemons from Nokia SMSC to Nokia mPosition’s GMLC for GSM. Used Rational Rose and Visio for UML Modeling and ClearCase for source control. 4/6/2017 CSD C/C++ Altan Alpay

24 Davranışsal Özellikler
Leadership (Liderlik) Tutarlılı (Integrity) Analytical Thinking Problem Çözme (Problem Solver) İş Bitirici (Getting Things Done) Detaycı (Details Oriented) Çabuk Öğrenen (Quick Learner) Work without supervision (Bağımsız çalısabilen) 4/6/2017 CSD C/C++ Altan Alpay

25 Telefon Görüşmesi (Phone Screning)
Görüşme Süreci Telefon Görüşmesi (Phone Screning) 30 dk 1-2 mühendis Yüzyüze Görüşme 1 Gün 6-7 Kişi İnsan Kaynakları Teklif Paketi 4/6/2017 CSD C/C++ Altan Alpay

26 Telefon Görüşmesi 30 dakika İletişim ve Yabancı Dil
Temel C ve C++ Soruları Hedef ve Beklentiler Pozisyonun ve Şirketin tanıtımı 4/6/2017 CSD C/C++ Altan Alpay

27 Yüzyüze Görüşme Toplamda 1 Gün 5-6 saat
5-6 kişi + üst düzey yönetici + İK 30-45 dakika / görüşme 10 dk geçmiş projeler hakkında konuşma 10 dk bilgi veya tasarım soruları 15-20 dk kodlama Son derece Teknik Son derece Detay Tüm Görüşmelerde Kod yazmayı bekleyin (gün sonunda 5-6 algoritma yazacaksınız) Beğenilirseniz gün sonunda Yönetimle görüşme ihtimali 4/6/2017 CSD C/C++ Altan Alpay

28 Teklif ve Ücretlendirme
Senelik Brüt Ücret Amerika => $80k - $120k (%90 dağılım) İngiltere => k – 60k pound İrlanda => k - 90k EUR (%90 dağılım) Almanya => k EUR (%90 dağılım) Bonus (ikramiye) Yılda 1 veya 2 kere olmak üzere Toplamda Senelik Ücretin %5 - %40 arası %10’u gectiği çok nadirdır 4/6/2017 CSD C/C++ Altan Alpay

29 Teklif ve Ücretlendirme
Hisse Senedi İkramiyesi (Stock Awards) Genelde 1 sene bekleme süresi Hisse Senedi Opsiyonları (Stock Options) İşe başladığınız günün hisse senedi fiyat (strike) baz alınarak hisse senedi satın alma hakkı Genelde 4 yıl bekleme süresi (her yıl %25 alabiliyorsunuz) Örnek: 1/1/2010 tarihinde YHOO => $16.00, 10,000 opsiyon verildi, 1/1/2011 tarihinde YHOO $26 olursa, aradaki fark $10 X %25 (2500 adet) = $25,000 Hisse Senedi Satin Alma (Stock Purchase Plan) Piyasa değerinin %15 altına yıllık maaşınızın %25 kadar. Diğer (Benefits) Sağlık Sigortası Tatil (2 – 4 hafta Amerika, Almanya: 8 hafta, UK: 6 hafta) Okul ve Eğitim parasi (Yıllık $5,000 civari) Emeklilik fonlarına katkı %1 - %5 arası 4/6/2017 CSD C/C++ Altan Alpay

30 Teklif ve Ücretlendirme
AYLIK BRÜT ÜCRET HESAPLAMASI Faktorler (Bekar/Evli, Çocuk, Eyalet ve Şehir Vergisi, Vergi Dilimi) Manhattan’da Bekar => $100k  $5, aylık YAŞAM PAHALILIĞI INDEKSİ Manhattan  Dallas $100k  $42k 4/6/2017 CSD C/C++ Altan Alpay

31 Referans ve Geçmiş Araştırması
Profesyonel Referansların Kontrol Edilmesi Mutlaka 2-3 referans aranır Sadece Profesyonel İlişkiniz olan kişiler referans olur (eski çalışma arkadası veya yönetici) Alakasız kişiler referans olamaz (hoca, emmi, buddy, babamin arkadası zırt holding CEOsu) Referanslar Özgeçmiş’e yazılmaz, istenildiğinde verilir Özgeçmiş araştırması Sabıka Kaydı Çalıştığınız tüm şirketlerin aranıp çalışma tarihleriniz ve pozisyonlarınız kontrol edilir Diploma ve Transkriptleriniz Okulunuzdan kontrol edilir Yani PhotoShoplamayın!!! 4/6/2017 CSD C/C++ Altan Alpay

32 Göçmenlik ve Çalışma İzni
Prensip olarak Şirketin Sponsorluğu esastır Amerika => H1b Gecici Kalifiye İşçi Vizesi 6 seneye kadar Her Yıl 65,000 Kota 1 Nisan’da Başvurular Başlar 1 Ekim’de Çalışmaya Başlanır Ağustos – Ekim arası optimum İş arama zamanı İşlemler 1-2 ay surebilr Sürebilir 4/6/2017 CSD C/C++ Altan Alpay

33 Göçmenlik ve Çalışma İzni
İngiltere => HSMP High Skilled Migration Programme Puan Tabanlı (70/100 barajı var) Sponsor gerekmiyor, İşveren bagımsız Başlangıçta 2 + 2, sonra otomatik süresiz oturuma dönüşür Türk vatandaşlarından başvuru ücreti alınmıyor TOELF gerekiyor İrlanda => Green Card Programı En 60,000 EUR maaşlı teklif alan profesyonelleriçin Başlangıçta 2 sene ve sonra otomatik süresiz oturuma dönüşen Almanya => Yüksek Kalifiye Sınırsız Oturum Programı En 65,000 EUR maaşlı teklif alan profesyonelleriçin Direk baştan süresiz oturum 4/6/2017 CSD C/C++ Altan Alpay

34 Soru Tipleri Bilgi Soruları Tecrübe Soruları Kodlama Soruları
Tasarım Soruları Hata (bug) Soruları 4/6/2017 CSD C/C++ Altan Alpay

35 C Soruları (bellek) C bellek türleri char* getString( ) {
Global / Statik Değişkenler Yığıt (Stack) / Otomatik Değişkenler Heap / Dinamik Değişkenler char* getString( ) { char* str = “test”; return str; } char* getString( ) { char str[100] = “test”; return str; } 4/6/2017 CSD C/C++ Altan Alpay

36 C Soruları volatile keyword nedir? Niçin kullanılır?
struct a {} seklinde tanimlanmis yapinin boyutu nedir? static kelimesi hangi anlamlarda kullanilir? Alloca static & global variables const char* ve const char const* farki 4/6/2017 CSD C/C++ Altan Alpay

37 C Soruları C içinden C++ functionlarini nasil cağırabiliriz?
Bir tam sayinin bitlerini nasil sayariz? *magic() = 5; #define kullanirken dikkat edilmesi gerekenler? Sonsuz döngü tanımlayınız? const int *a; int * const a; int const * a const; 4/6/2017 CSD C/C++ Altan Alpay

38 C Soruları (Kodlama) ReverseString strcpy (string kopyalama)
strlen (sayma) strcmp (karşılaştırma) strstr (alt string bulma) atoi itoa Bit sayma ve diğer bit işlemleri 4/6/2017 CSD C/C++ Altan Alpay

39 C Soruları (Bit İşlemleri)
Bir tamsayının bitlerini sayın Bit kaydırıp & operatorunu kullanarak Tablo kullanarak İki tam sayıyı geçiçi bellek kullanmadan oldukları yerde (swap) yer değiştirin (XOR) Aynı bit sayılı tam sayıların bulunması 4/6/2017 CSD C/C++ Altan Alpay

40 C++ Soruları (Constructors)
Constructor’dan exception atılırsa? Initialization List Kopyalama constructor Explicit kelimesi Assignment Operator RAII Kavrami 4/6/2017 CSD C/C++ Altan Alpay

41 C++ Soruları (Destructors)
Sanal Yıkıcı nedir? Niçin kullanılır? Yıkıcı içerisinden exception fırlatılırsa nesne’nın durumu ne olur? Türetilmiş nesnelerde Yıkıcıların çağırılma sırası nasıldır? Bir dizi silinirken elemanlar hangi sıra ile silinirler? class A {}; A* a = new A[10]; delete a; Exception & destructor ilişkisi 4/6/2017 CSD C/C++ Altan Alpay

42 C++ Soruları (Inheritance)
struct class farkı? Yapıcı ve Yıkıcıların çağırılma sıralaması Nesne’nin içerdiği değişkenlerin oluşturulma sırası Çoklu türetme (multiple inheritance) Çoklu türetmelerde türeme sirası İnitialization list 4/6/2017 CSD C/C++ Altan Alpay

43 C++ Soruları (Inheritance)
Private Inheritance ne anlama gelir? Friend kelimesi ve kullanimi (sinifsal ve fonksyon bazinda) Mutable kelimesi JAVA’daki Interface kavramını C++’da nasil uygulayabiliriz? 4/6/2017 CSD C/C++ Altan Alpay

44 C++ Soruları (Operator Overloading)
Function overloading ve overriding farki? Hangi operatorler overload edilemez? Pre/Post increment farki Pre/Post increment performans karsilastirmasi  Overload edilemeyen operatorler: ?: Sizeof :: ** 4/6/2017 CSD C/C++ Altan Alpay

45 C++ Soruları (casting)
dynamic_cast<> (en önemlisi) Hangi hallerde NULL döner? Hangi hallerde exception atar? static_cast<> const_cast<> reinterpret_cast<> 4/6/2017 CSD C/C++ Altan Alpay

46 C++ Soruları (const) const kelimesi kaç değişik anlamda kullanilabilir? const-overloading mutable kelimesi 4/6/2017 CSD C/C++ Altan Alpay

47 C++ Soruları (Polymorphism)
Sanal Fonksyon nedir? Polymorphism örneği verin? Pür Sanal Fonksyon (pure virtual func) nedir? Soyut Nesneler nedir? Niçin kullanılır? Sanal Fonksyonlar nasıl çalısır? vtable nedir? Sanal Fonksyonları C’de nasıl taklit ederiniz? vtable boyutu ve sizeof ile ilişkisi 4/6/2017 CSD C/C++ Altan Alpay

48 C++ Soruları (Exceptions)
Exception’larin faydalari / zararlari? Setjmp / longjmp arasindaki fark? Ne gibi durumlarda geri dönüş değerleri exceptionlara tercih edilmeli? Tipine bakmazsızın tüm exceptionları nasıl yakalarız? Java finally özelliğini C++’da nasıl taklit edebiliriz? Exceptionlar yakalanmazsa ne olur? 4/6/2017 CSD C/C++ Altan Alpay

49 C++ Soruları (Templates)
Generic Programming! (Genel Programlama) Fonksyon Şablonları (Function Templates) Sınıf Şablonları (Class Templates) CPP ve H dosyaları açısından ne fark var? C++ Şablonları ne tür bir binding örneğidir? Statik binding & Dinamik binding nedir? Şablonlar ve Derleyici ilişkişi Template specialization veya template<>? 4/6/2017 CSD C/C++ Altan Alpay

50 C++ Kitapları 4/6/2017 CSD C/C++ Altan Alpay

51 Nesneye Yönelik Tasarım
Sınıflar arası kaç çesit ilişki vardır? Kalıtım (Inheritance) / IS-A ilişkisi Composition (Aggregation ) / Has-A ilişkisi Liskov substitution principle 4/6/2017 CSD C/C++ Altan Alpay

52 Tasarım Desenleri (Design Patterns)
Niçin tasarım desenleri kullanmalıyız? Yaratici Desenler (Creational Patterns) Factory (Fabrika) Singleton Protype (Prototip) Yapısal Desenler (Structural Patterns) Adapter (Adaptor) Composite Davranışsal Desenler (Behaviour Patterns) Chain of Responsibility (Emir Komuta Zinciri) State Memento Observer 4/6/2017 CSD C/C++ Altan Alpay

53 Tasarım Desenleri (Design Patterns)
4/6/2017 CSD C/C++ Altan Alpay

54 Algorithmalar ve Karmaşıklık
O(1) => sabit karmaşıklık O(log n) => logaritmik karmaşıklık O(n) => doğrusal karmaşıklık O(n log n) => Doğrusal logaritmik karmaşıklık O(n^2) => Karesel karmaşıklık O(n^2) => Küpsel karmaşıklık Sistem Programlama ve İleri C Uygulamaları Kurs Notları - Uyarlama 1 4/6/2017 CSD C/C++ Altan Alpay

55 Algorithmalar ve Karmaşıklık
4/6/2017 CSD C/C++ Altan Alpay

56 Veri Yapıları (Data Structures)
İkili Ağaçlar (Binary Trees) Bağlı Listeler (Linked Lists) Yığıt (Stacks) Kuyruklar (Que/Deque/Priority) Hash Tabloları (Hash Tables) 4/6/2017 CSD C/C++ Altan Alpay

57 Bağlı Listeler (Linked Lists)
Tekli Bağlı Listelerde rastgele bir düğümü nasıl silebiliriz? Bağlı listelerde sonsuz döngüleri nasıl tespit edebiliriz? Tekli bağlı listelerde sondan n’inci elemanı nasıl bulabılırız? 4/6/2017 CSD C/C++ Altan Alpay

58 Bağlı Listeler (Linked Lists)
Sıralanmamış bağlı bir listede ayrı değeri taşıyan düğümleri nasıl silebiliriz? Tekli Bağlı Listeyi tersine nasıl çevirebiliriz? 4/6/2017 CSD C/C++ Altan Alpay

59 İkili Ağaçlar (Binary Trees)
Karmaşıklık O(n log n) Ağaçları nasıl dengeleyebiliriz? Dengesiz ağaçlar hangi durumlarda iyi sonuç vermez? Verilen iki ağaç elemanının (Common-Ancestor) ortak atasını bulun. 4/6/2017 CSD C/C++ Altan Alpay

60 Hash Tabloları Karmaşıklığı her zaman O(1) midir?
Anahtar çarpışması (Hash collision) nasil önlenir? Anahtar çarpışması 4/6/2017 CSD C/C++ Altan Alpay

61 Standart Kütüphane (STL)
Taşıyıcılar (Containers) Vector Map Set hash_map List Iteratorler Algorithmalar (sıralayan,silen,değiştiren,bulan gibi) Allocatorler String Otomatik İşaretçiler (auto_ptr) C++ Uygulamaları Kurs Notları - Uyarlama 1 4/6/2017 CSD C/C++ Altan Alpay

62 STL Kitapları 4/6/2017 CSD C/C++ Altan Alpay

63 TCP/IP ve Ağ Programlama
OSI Katmanları TCP ve UDP farkı? Hangi durumlarda UDP tercih edilir? Hangi durumlarda TCP tercih edilir? TCP’de el sıkışma (3-way handshake) TCP’de Akış kontrolu (Flow Control) TCP’de Çarpışma kontrolu(Congestion Avoidance / Slow Start ) 4/6/2017 CSD C/C++ Altan Alpay

64 TCP/IP ve Ağ Programlama
UDP socketlerinin kullanimi TCP soketlerinin kullanimi Client Tarafi (connect, read, write, close) Sunucu Tarafi (bind, listen, accept, read,write, close) RAW Socketler ve kullanim alanlari (ICMP: ping, trace) Synronious and Asyncronious Sockets Socket programlama teknikleri Fork() ile coklu process multi-threading Async i/o (like libevent) select 4/6/2017 CSD C/C++ Altan Alpay

65 Çoklu İş Parçaları (Multi-Threding)
Çoklu threading & Çoklu process farkları Thread Local Storage Context Switcing kavramı Tek işlemcili bir bilgisayarda bir iş-parcacı ile 1 saat süren işlem, aynı bilgisayarda 100 iş-parcacığı ile ne kadar sürer? 4/6/2017 CSD C/C++ Altan Alpay

66 Çoklu İş Parçaları (Multi-Threding)
Dead-Lock nedir? Nasil Olusur? Dead-Lock nasil onlenir? Race Condition nedir? Priority Inversion nedir? 4/6/2017 CSD C/C++ Altan Alpay

67 Çoklu İş Parçaları (Multi-Threding)
Senkronizasyon neden gereklidir? Nasil sağlanır? Muxed Semaphore Barriers Condition Variables 4/6/2017 CSD C/C++ Altan Alpay

68 Unix/Linux Programlama
Zombi process nedir? Deamon process nedir? Bir processi nasil hızlandırabiliriz? (nice) Sunucu üzerindeki tcp/ip bağlantılarını nasıl tespit edebiliriz? (netstat) Sunucu üzerindeki tcp socketlerini nasil dinleyebiliriz? (tcpdump) Sinyallerler Process Yönetimi => fork(), wait() UNIX/Linux Sistem Programlama Kurs Notları - Uyarlama 1 4/6/2017 CSD C/C++ Altan Alpay

69 Processler arasi Haberleşme
Sinyaller Ortak Bellek (Shared Memory) Unix Sockets Pipes (mknod, pipes) Semaphores Mesaj Kuyrukları (Message Ques) UNIX/Linux Sistem Programlama Kurs Notları - Uyarlama 1 4/6/2017 CSD C/C++ Altan Alpay

70 Gömülü Programlama volatile kelimesi
Pre-emptive  non-preemptive sistemler interrupt kelimesi Bit işlemleri Herhangi bir adrese erişim ptr = (int *)0x67a9; *ptr = 0xaa55; *(int * const)(0x67a9) = 0xaa55; 4/6/2017 CSD C/C++ Altan Alpay

71 İnternet Kaynakları Glassdoor.com Careercup.com Sulekha.com
C++ FAQ comp.lang.c++ 4/6/2017 CSD C/C++ Altan Alpay


"C ve C++ Yazılım Geliştiriciler için Yurtdışı Kariyer Olanakları ve Görüşme Teknikleri‏ Altan Alpay 4/6/2017 CSD C/C++ Altan Alpay." indir ppt

Benzer bir sunumlar


Google Reklamları