DonanımHaber

Google etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Google etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

Google'da Lead Java Engineer pozisyonu için mülakatım var. Bana 45 günlük çalışma planı.

Lead Java Engineer pozisyonu için Google'da mülakatınıza hazırlanmanızda yardımcı olmak amacıyla 45 günlük bir çalışma planı hazırlayacağım. Bu plan, teknik bilgilerinizi pekiştirmenize, mülakat becerilerinizi geliştirmenize ve Google'ın mülakat sürecine özel hazırlıklar yapmanıza yardımcı olacak. İşte önerdiğim plan:





Hafta 1-2: Temel Java Bilgilerini Gözden Geçirme

Gün 1-3: Java temel kavramları (OOP, hata yönetimi, koleksiyonlar, veri yapıları)

Gün 4-6: Java 8 ve üzeri sürümlerdeki yeni özellikler (Lambda ifadeleri, Stream API)

Gün 7-10: Multithreading ve eşzamanlılık

Gün 11-14: Tasarım desenleri ve SOLID prensipleri

Hafta 3-4: Gelişmiş Java ve Sistem Tasarımı

Gün 15-17: JVM mimarisi, Garbage Collection, performans optimizasyonu

Gün 18-20: RESTful API tasarımı ve mikroservis mimarileri

Gün 21-23: Veritabanları (SQL, NoSQL) ve ORM araçları (Hibernate, JPA)

Gün 24-28: Sistem tasarımı temelleri ve örnek vaka çalışmaları

Hafta 5-6: Kodlama Pratiği ve Algoritmalar

Gün 29-31: LeetCode, HackerRank gibi platformlarda Java ile algoritma soruları çözme

Gün 32-34: Veri yapılarına odaklanarak problem çözme (Ağaçlar, Grafikler, Hash Tabloları)

Gün 35-37: Zorluk derecesi yüksek algoritma soruları ve optimizasyon teknikleri

Gün 38-40: Gerçek zamanlı kodlama pratikleri (Peer programming, kod yorumlama)

Hafta 7: Mülakat Hazırlığı ve Geri Bildirim

Gün 41-42: Davranışsal mülakat hazırlığı (STAR metodu, geçmiş deneyimler)

Gün 43: Mock mülakatlar ve geri bildirimler

Gün 44: Zayıf yönler üzerine çalışma ve gözden geçirme

Gün 45: Genel gözden geçirme ve rahatlama

Ek İpuçları:

Her günün sonunda öğrendiklerinizi kısa bir özetle gözden geçirin.

Aktif öğrenme tekniklerini kullanın (örneğin, öğrendiklerinizi başkalarına anlatma).

Google'ın mülakat süreci ve kültürü hakkında bilgi edinin.

Zaman yönetimi ve stresle başa çıkma teknikleri üzerinde çalışın.

Sağlıklı beslenme ve düzenli egzersiz ile zihinsel ve fiziksel sağlığınıza dikkat edin.

Bu plan, sizi teknik ve davranışsal olarak hazırlayacak şekilde tasarlanmıştır. Ancak, kişisel hızınıza ve mevcut bilgi seviyenize göre ayarlamalar yapmanız gerekebilir. Başarılar dilerim!



Tabii ki, 45 günlük çalışma planınızı daha detaylı bir şekilde sunacağım. İlk olarak, planın ilk gününü ele alacağım ve devam etmeniz durumunda diğer günlere geçeceğim.


Gün 1: Java Temel Kavramları - OOP (Nesne Yönelimli Programlama)

Amaç:

Java'nın temelini oluşturan nesne yöönelimli programlama kavramlarını anlamak ve pratik yapmak.


Öğrenilecek Konular:

Sınıflar ve Nesneler: Java'da sınıf ve nesne kavramları, sınıfların nasıl tanımlandığı, nesnelerin nasıl oluşturulduğu.

Encapsulation (Kapsülleme): Veri gizleme ve kapsülleme teknikleri, getter ve setter metodları.

Inheritance (Kalıtım): Sınıf hiyerarşileri, kalıtımın temelleri, super anahtar kelimesinin kullanımı.

Polymorphism (Çok Biçimlilik): Çok biçimlilik kavramı, metod üzerine yazma (overriding) ve yüklenmesi (overloading).

Abstract Sınıflar ve İnterfaces: Soyut sınıfların ve arayüzlerin (interfaces) rolü ve kullanımı.

Uygulamalar:

Kendi sınıflarınızı ve nesnelerinizi oluşturarak küçük bir Java uygulaması yazın.

Basit bir kalıtım örneği geliştirerek farklı sınıflar arasındaki ilişkileri gözlemleyin.

Çok biçimlilik prensiplerini kullanarak metodları çeşitlendirin.

Kaynaklar:

Java temel ders kitapları veya online kaynaklar.

Online Java dersleri ve video eğitimler.

Ek Notlar:

Bu günün sonunda, OOP kavramlarını anladığınızdan ve basit bir Java uygulaması geliştirebildiğinizden emin olun.

Öğrendiklerinizi pekiştirmek için kısa notlar alın veya örnekler üzerinde çalışın.

Bu ilk günün sonunda, Java'nın OOP kavramlarını kavramış ve basit bir uygulama yazmış olacaksınız. Eğer devam etmek isterseniz, lütfen "devam et" diyerek ikinci güne geçebiliriz.


Gün 2: Java Temel Kavramları - Hata Yönetimi ve İstisnalar (Exceptions)

Amaç:

Java'daki hata yönetimi mekanizmalarını ve istisna (exception) kavramlarını anlamak ve bu konularda pratik yapmak.


Öğrenilecek Konular:

Try-Catch-Finally Blokları: Hata yakalama mekanizmaları, try, catch, finally bloklarının kullanımı.

Özel İstisnalar (Custom Exceptions): Kendi istisna sınıflarınızı nasıl oluşturacağınız ve ne zaman kullanacağınız.

Unchecked ve Checked Exceptions: İki ana istisna türü arasındaki farklar ve her birinin kullanım senaryoları.

İstisna Zincirleme (Exception Chaining): Hataların kaynağını bulmak için istisna zincirleme teknikleri.

Try-with-Resources: Java 7 ve üzeri sürümlerde gelen, kaynak yönetimi için try-with-resources yapısı.

Uygulamalar:

Çeşitli hata durumları için try-catch blokları yazarak hata yönetimi yapın.

Kendi özel istisna sınıflarınızı oluşturun ve bunları bir uygulamada kullanın.

Dosya işlemleri veya veritabanı bağlantıları gibi kaynakları yönetmek için try-with-resources yapısını kullanın.

Kaynaklar:

Java dökümantasyonu ve istisna yönetimi üzerine yazılmış makaleler.

Online Java dersleri ve hata yönetimi üzerine özel video eğitimler.

Ek Notlar:

Bu günün sonunda, Java'daki istisna yönetiminin temellerini anlamış olmalısınız.

Pratik yaparak öğrendiklerinizi pekiştirmeye çalışın ve karşılaştığınız hataları nasıl ele alacağınızı düşünün.

Bu ikinci günün sonunda, Java'da hata yönetimi ve istisna mekanizmaları hakkında temel bir anlayışa sahip olacaksınız. Eğer devam etmek isterseniz, lütfen bildirin ve üçüncü güne geçebiliriz.


Gün 3: Java Temel Kavramları - Koleksiyonlar ve Veri Yapıları

Amaç:

Java'nın koleksiyon çerçevesini ve temel veri yapılarını anlamak ve bu yapılar üzerinde pratik yapmak.


Öğrenilecek Konular:

List, Set, Map Arayüzleri: Bu temel koleksiyon türlerinin özellikleri ve kullanım senaryoları.

ArrayList ve LinkedList: Liste yapıları arasındaki farklar ve ne zaman hangisini kullanmanız gerektiği.

HashSet, TreeSet, LinkedHashSet: Set yapıları ve bunların performans özellikleri.

HashMap, TreeMap, LinkedHashMap: Map yapıları ve anahtar-değer çiftlerini nasıl yöneteceğiniz.

Iterator ve ListIterator: Koleksiyonlar üzerinde gezinme ve eleman işleme teknikleri.

Uygulamalar:

Farklı koleksiyon türlerini kullanarak basit veri yapıları oluşturun ve bu yapılar üzerinde işlemler yapın.

Çeşitli senaryolar için uygun koleksiyon türlerini seçin ve neden bu seçimi yaptığınızı açıklayın.

Iteratorlar kullanarak koleksiyonlar üzerinde döngüler oluşturun ve elemanları işleyin.

Kaynaklar:

Java koleksiyonları hakkında kitaplar ve dökümantasyon.

Online Java dersleri, özellikle koleksiyonlar ve veri yapıları üzerine.

Ek Notlar:

Koleksiyonlar, Java'da veri yönetiminin temel taşlarındandır, bu yüzden bu konuyu iyice anlamak önemlidir.

Pratik yaparken, farklı koleksiyon türlerinin avantaj ve dezavantajlarını göz önünde bulundurun.

Bu üçüncü günün sonunda, Java'nın temel koleksiyonlarını ve bu koleksiyonları kullanarak veri yapıları oluşturma yöntemlerini öğrenmiş olacaksınız. Dördüncü gün için devam etmek isterseniz lütfen bildirin.


Gün 4: Java 8 ve Üzeri Sürümlerdeki Yenilikler - Lambda İfadeleri

Amaç:

Java 8'in getirdiği en önemli yeniliklerden biri olan lambda ifadelerini anlamak ve bu ifadeleri kullanarak daha temiz ve etkili kod yazmayı öğrenmek.


Öğrenilecek Konular:

Lambda İfadelerinin Temelleri: Lambda ifadelerinin ne olduğu, nasıl çalıştığı ve neden kullanıldığı.

Fonksiyonel Arayüzler: Consumer, Supplier, Function, Predicate gibi temel fonksiyonel arayüzler.

Stream API ile Entegrasyon: Lambda ifadelerini Stream API ile birleştirerek veri işleme işlemleri.

Metod Referansları: Metod referanslarını lambda ifadeleriyle birlikte kullanma yöntemleri.

Lambda İfadelerinin Avantajları ve Sınırlamaları: Lambda ifadelerinin getirdiği kolaylıklar ve kullanımda dikkat edilmesi gereken noktalar.

Uygulamalar:

Çeşitli örnekler üzerinde lambda ifadeleri yazın ve bunları fonksiyonel arayüzlerle kullanın.

Koleksiyonlar üzerinde Stream API ile lambda ifadelerini kullanarak veri işleme işlemleri yapın.

Daha önce yazdığınız Java kodlarını lambda ifadeleri kullanarak yeniden düzenleyin ve kodun nasıl daha okunaklı ve etkili hale geldiğini gözlemleyin.

Kaynaklar:

Java 8 ve lambda ifadeleri hakkında kitaplar, makaleler ve dökümantasyon.

Online dersler ve lambda ifadeleri üzerine özel video eğitimler.

Ek Notlar:

Lambda ifadeleri modern Java programlamasının ayrılmaz bir parçasıdır, bu yüzden bu konuda kendinizi geliştirmek önemlidir.

Lambda ifadelerini anladıktan sonra, bunları kendi projelerinizde nasıl kullanabileceğinizi düşünün.

Bu dördüncü günün sonunda, Java 8'in getirdiği lambda ifadelerini ve bunların kullanımını anlamış olacaksınız. Eğer beşinci güne geçmek isterseniz, lütfen bildirin.


Gün 5: Java 8 ve Üzeri Sürümlerdeki Yenilikler - Stream API

Amaç:

Java 8'in getirdiği bir diğer önemli özellik olan Stream API'yi anlamak ve bu API'yı kullanarak veri koleksiyonlarını etkili bir şekilde işlemeyi öğrenmek.


Öğrenilecek Konular:

Stream API'nin Temelleri: Stream API'nin ne olduğu ve nasıl çalıştığı.

Stream Oluşturma: Koleksiyonlar, diziler veya IO kaynaklarından stream'ler oluşturma.

Intermediate ve Terminal İşlemler: map, filter, sorted gibi ara işlemler ve collect, forEach, reduce gibi son işlemler.

Stream İşlemlerinin Performansı: Büyük veri koleksiyonları üzerinde stream işlemlerinin performansı ve bunu nasıl optimize edebileceğiniz.

Parallel Streams: Paralel stream'ler kullanarak çoklu iş parçacıklarında veri işleme.

Uygulamalar:

Çeşitli veri koleksiyonları üzerinde stream işlemleri gerçekleştirin.

Lambda ifadeleri ve metod referansları ile stream işlemlerini entegre edin.

Bir problemi hem normal hem de paralel stream'ler kullanarak çözün ve performans farklarını karşılaştırın.

Kaynaklar:

Java Stream API üzerine yazılmış kitaplar, makaleler ve online dersler.

Stream işlemleri ve bunların kullanım örnekleri üzerine video eğitimler.

Ek Notlar:

Stream API, veri işleme ve analiz işlemlerini basitleştiren güçlü bir araçtır.

Pratik yaparken, stream işlemlerinin ne zaman ve nasıl etkili olduğunu gözlemleyin.

Bu beşinci günün sonunda, Java 8'in Stream API'sini ve bu API'nin veri işleme üzerindeki etkilerini anlamış olacaksınız. Altıncı gün için devam etmek isterseniz, lütfen bildirin.


Gün 6: Java 8 ve Üzeri Sürümlerdeki Yenilikler - Optional Sınıfı ve Yeni Tarih-Zaman API'si

Amaç:

Java 8 ile gelen Optional sınıfını ve yeni tarih-zaman API'sini anlamak ve bu yeni özellikleri etkili bir şekilde kullanmayı öğrenmek.


Öğrenilecek Konular:

Optional Sınıfı: Optional sınıfının ne olduğu, null referanslarla çalışırken nasıl yardımcı olduğu.

Optional Metodları: isPresent, ifPresent, orElse, orElseGet, orElseThrow gibi Optional metodları.

Yeni Tarih-Zaman API'si: LocalDate, LocalTime, LocalDateTime, ZonedDateTime gibi yeni tarih-zaman sınıfları.

Tarih-Zaman İşlemleri: Tarih ve zamanla ilgili hesaplamalar, formatlama ve çözümleme.

Eski ve Yeni API Arasındaki Geçiş: Eski Date ve Calendar sınıflarından yeni API'ye geçiş yapma yöntemleri.

Uygulamalar:

Optional kullanarak null değerlerle çalışma senaryolarını inceleyin ve uygulayın.

Yeni tarih-zaman API'sini kullanarak çeşitli tarih ve zaman işlemleri gerçekleştirin.

Eski tarih-zaman kodlarınızı yeni API kullanarak güncelleyin.

Kaynaklar:

Optional ve yeni tarih-zaman API'si üzerine yazılmış makaleler, dökümantasyon ve kitaplar.

Bu konular üzerine özel olarak hazırlanmış online dersler ve video eğitimler.

Ek Notlar:

Optional ve yeni tarih-zaman API'si, Java'da daha güvenli ve okunaklı kod yazmanıza yardımcı olur.

Pratik yaparken, bu yeni özellikleri mevcut projelerinizde nasıl entegre edebileceğinizi düşünün.

Bu altıncı günün sonunda, Java 8'in Optional sınıfını ve yeni tarih-zaman API'sini anlamış ve bu özellikleri kullanarak kodlarınızı nasıl geliştirebileceğinizi öğrenmiş olacaksınız. Yedinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 7: Java'da Multithreading ve Eşzamanlılık

Amaç:

Java'da çoklu iş parçacığı oluşturmanın temellerini öğrenmek ve eşzamanlı programlama ile ilgili temel kavram ve teknikleri anlamak.


Öğrenilecek Konular:

Thread Oluşturma: Thread sınıfı ve Runnable arayüzü kullanarak thread oluşturma.

Thread Yönetimi: Thread'lerin yaşam döngüsü, öncelikleri ve senkronizasyonu.

Senkronizasyon ve Kilit Mekanizmaları: synchronized bloklar, ReentrantLock, ReadWriteLock.

Thread Güvenliği: Race condition ve deadlock problemleri ve bunların nasıl önüne geçileceği.

Eşzamanlı Koleksiyonlar ve Executor Framework: ConcurrentHashMap, CopyOnWriteArrayList gibi eşzamanlı koleksiyonlar ve ExecutorService kullanımı.

Uygulamalar:

Basit thread oluşturma ve yönetme örnekleri yapın.

Senkronizasyon tekniklerini uygulayarak thread güvenliği sağlayın.

Executor framework'ü kullanarak thread havuzları oluşturun ve yönetin.

Kaynaklar:

Java multithreading ve eşzamanlılık konusunda yazılmış kitaplar ve dökümantasyon.

Çoklu iş parçacığı programlaması üzerine online kurslar ve video eğitimler.

Ek Notlar:

Eşzamanlı programlama, Java'da gelişmiş bir konudur ve bu yüzden detaylı pratik yapılması önemlidir.

Öğrenirken, eşzamanlı programlamanın getirdiği zorlukları ve bu zorlukları aşmak için kullanılan yöntemleri anlamaya odaklanın.

Bu yedinci günün sonunda, Java'da multithreading ve eşzamanlı programlama temellerini anlamış ve bu konularla ilgili temel pratikler yapmış olacaksınız. Sekizinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 8: Java'da Tasarım Desenleri ve SOLID Prensipleri

Amaç:

Yazılım geliştirmede yaygın olarak kullanılan tasarım desenlerini ve SOLID prensiplerini anlamak, bu konseptleri Java örnekleri üzerinden uygulamak.


Öğrenilecek Konular:

Tasarım Desenlerine Giriş: Tasarım desenlerinin temel kavramları ve önemi.

Yapısal Desenler: Adapter, Decorator, Facade gibi yapısal tasarım desenleri.

Davranışsal Desenler: Observer, Strategy, Command gibi davranışsal tasarım desenleri.

Yaratıcı Desenler: Singleton, Factory Method, Abstract Factory, Builder gibi yaratıcı tasarım desenleri.

SOLID Prensipleri: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion prensipleri.

Uygulamalar:

Her bir tasarım deseni için Java'da basit uygulama örnekleri geliştirin.

Mevcut kod örneklerinizi SOLID prensiplerine uygun hale getirmek için yeniden düzenleyin.

Farklı tasarım desenlerinin ne zaman ve neden tercih edildiğini analiz edin.

Kaynaklar:

Tasarım desenleri ve SOLID prensipleri üzerine yazılmış kitaplar ve makaleler.

Online kurslar ve bu konuları detaylandıran video dersleri.

Ek Notlar:

Tasarım desenleri ve SOLID prensipleri, yazılımın bakımı ve genişletilmesi açısından önemlidir.

Öğrenirken, bu prensip ve desenlerin gerçek dünya problemlerine nasıl uygulanabileceğini düşünün.

Bu sekizinci günün sonunda, Java'da yaygın tasarım desenlerini ve SOLID prensiplerini anlamış ve bu konseptleri uygulama örnekleri üzerinden pekiştirmiş olacaksınız. Dokuzuncu gün için devam etmek isterseniz, lütfen bildirin.


Gün 9: JVM Mimarisine Giriş ve Garbage Collection

Amaç:

Java Sanal Makinesi'nin (JVM) temel mimarisini anlamak ve Java'da bellek yönetimi ile ilgili önemli bir bileşen olan Garbage Collection (Çöp Toplama) mekanizmasını öğrenmek.


Öğrenilecek Konular:

JVM Mimarisinin Genel Bakışı: JVM'nin temel bileşenleri ve çalışma prensipleri.

Class Loader Subsystem: Java sınıflarının nasıl yüklendiği ve yönetildiği.

Runtime Data Areas: Heap, Stack, Method Area, ve diğer runtime veri alanları.

Garbage Collection: Garbage Collection'ın ne olduğu, nasıl çalıştığı ve farklı GC algoritmaları.

JVM Performans İzleme ve Ayarları: JVM'nin performansını izlemek ve optimize etmek için araçlar ve teknikler.

Uygulamalar:

JVM'nin temel bileşenleri üzerine kendi araştırmanızı yapın ve notlar alın.

Basit Java uygulamalarını kullanarak Garbage Collection sürecini gözlemleyin.

JVM ayarlarını değiştirerek farklı senaryolarda performansın nasıl etkilendiğini inceleyin.

Kaynaklar:

JVM mimarisi ve Garbage Collection hakkında yazılmış kitaplar ve teknik makaleler.

Online kurslar ve JVM'nin çalışma prensiplerini açıklayan video dersleri.

Ek Notlar:

JVM ve Garbage Collection, Java'nın performansı ve hafıza yönetimi üzerinde büyük etkiye sahiptir.

Pratik yaparken, JVM'nin çalışma şeklinin ve GC'nin uygulamalarınız üzerindeki etkilerini anlamaya odaklanın.

Bu dokuzuncu günün sonunda, JVM'nin temel mimarisi ve Garbage Collection mekanizması hakkında temel bir anlayışa sahip olacaksınız. Onuncu gün için devam etmek isterseniz, lütfen bildirin.


Gün 10: RESTful API Tasarımı ve Mikroservis Mimarileri

Amaç:

RESTful API tasarımının temellerini öğrenmek ve mikroservis mimarilerinin Java'daki uygulamalarını anlamak.


Öğrenilecek Konular:

RESTful API Nedir: REST mimarisinin temel prensipleri ve avantajları.

API Tasarımı: İyi tasarlanmış bir RESTful API'nin özellikleri, URL yapısı, HTTP yöntemleri ve durum kodları.

JSON ve XML: API yanıtları için yaygın veri formatları ve bunların kullanımı.

Spring Boot ve Mikroservisler: Spring Boot kullanarak mikroservislerin nasıl oluşturulacağı ve yönetileceği.

API Güvenliği ve Oturum Yönetimi: API güvenliği, kimlik doğrulama ve yetkilendirme yöntemleri.

Uygulamalar:

Basit bir RESTful API tasarlayın ve bu API'yi Spring Boot kullanarak uygulayın.

API'nize JSON ve XML yanıt formatlarını ekleyin ve test edin.

API'nizin güvenliğini sağlamak için basit bir kimlik doğrulama sistemi ekleyin.

Kaynaklar:

RESTful API tasarımı ve mikroservis mimarileri üzerine yazılmış kitaplar ve makaleler.

Spring Boot ve RESTful API geliştirme üzerine online kurslar ve video dersleri.

Ek Notlar:

RESTful API'ler ve mikroservisler, modern uygulama geliştirmede çok önemli roller oynar.

Pratik yaparken, API tasarımının kullanılabilirliği ve ölçeklenebilirliği üzerine odaklanın.

Bu onuncu günün sonunda, RESTful API tasarımının temellerini ve mikroservis mimarilerinin Java'daki uygulamalarını anlamış olacaksınız. On birinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 11: Veritabanları ve ORM Araçları - Temel Seviye

Amaç:

Java uygulamalarında veritabanı kullanımının temellerini öğrenmek ve ORM (Object-Relational Mapping) araçları ile veritabanı işlemlerini gerçekleştirmeyi anlamak.


Öğrenilecek Konular:

SQL Veritabanları: Temel SQL sorguları, tablo oluşturma, veri ekleme, güncelleme ve sorgulama.

NoSQL Veritabanları: NoSQL kavramı, popüler NoSQL veritabanları ve kullanım senaryoları.

JDBC (Java Database Connectivity): JDBC'nin temelleri, veritabanı bağlantıları ve sorgu işlemleri.

JPA (Java Persistence API) ve Hibernate: JPA'nın temelleri, entitilerin tanımlanması ve ORM ile veritabanı işlemleri.

Spring Data JPA: Spring framework içinde JPA kullanımı ve veritabanı işlemlerinin kolaylaştırılması.

Uygulamalar:

Basit bir SQL veritabanında tablo oluşturun ve CRUD (Create, Read, Update, Delete) işlemleri gerçekleştirin.

JDBC ve Hibernate kullanarak Java uygulamanızdan veritabanı işlemleri yapın.

Spring Data JPA ile basit bir uygulama geliştirin ve veritabanı entegrasyonunu test edin.

Kaynaklar:

SQL, NoSQL, JDBC, JPA ve Hibernate üzerine yazılmış kitaplar ve makaleler.

Veritabanı ve ORM araçları üzerine online kurslar ve video dersleri.

Ek Notlar:

Veritabanı işlemleri, uygulama geliştirmede temel bir yeterliliktir ve çeşitli veritabanı teknolojilerini anlamak önemlidir.

Pratik yaparken, farklı veritabanı teknolojilerinin avantaj ve dezavantajlarını değerlendirin.

Bu on birinci günün sonunda, Java'da veritabanı kullanımının temellerini ve ORM araçlarının temel kullanımını öğrenmiş olacaksınız. On ikinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 12: Sistem Tasarımı Temelleri - Temel Kavramlar ve Yaklaşımlar

Amaç:

Yazılım sistemlerinin tasarımı için gerekli temel kavramları ve yaklaşımları öğrenmek, sistem tasarımı sürecindeki önemli adımları anlamak.


Öğrenilecek Konular:

Sistem Tasarımına Giriş: Sistem tasarımının ne olduğu ve neden önemli olduğu.

Modülerlik ve Katmanlı Mimariler: Yazılımın modüler yapısı ve katmanlı mimari prensipleri.

Ölçeklenebilirlik ve Performans: Sistemlerin ölçeklenebilirliği, performans faktörleri ve bu faktörleri iyileştirme yolları.

Yük Dengeleme ve Yüksek Erişilebilirlik: Yük dengeleme teknikleri ve sistemlerin sürekli erişilebilir olmasını sağlama yöntemleri.

Güvenlik ve Sistem Güvenilirliği: Sistem güvenliği, veri koruma ve güvenilirlik konuları.

Uygulamalar:

Basit bir sistem tasarımı örneği üzerinde çalışarak yukarıdaki kavramları uygulayın.

Ölçeklenebilirlik ve performansı artırmak için bir yazılımın nasıl tasarlanabileceğini düşünün.

Yük dengeleme ve yüksek erişilebilirlik stratejilerini kavramsal olarak tasarlayın.

Kaynaklar:

Sistem tasarımı ve mimarisi üzerine yazılmış kitaplar ve makaleler.

Sistem tasarımı ve mimari prensipleri üzerine online kurslar ve video dersleri.

Ek Notlar:

Sistem tasarımı, yazılım projelerinin başarısı için kritik bir rol oynar.

Öğrenirken, teorik bilgilerin yanı sıra gerçek dünya senaryolarında bu kavramların nasıl uygulandığını da düşünün.

Bu on ikinci günün sonunda, sistem tasarımının temel kavramlarını ve yaklaşımlarını anlamış olacaksınız. On üçüncü gün için devam etmek isterseniz, lütfen bildirin.


Gün 13: Gelişmiş Sistem Tasarımı - Örnek Vaka Çalışmaları

Amaç:

Gelişmiş sistem tasarımı konseptlerini öğrenmek ve gerçek dünya örnekleri üzerinden vaka çalışmaları yaparak bu kavramları daha iyi anlamak.


Öğrenilecek Konular:

Mikroservis Mimarisi: Mikroservislerin temelleri, avantajları ve zorlukları.

Dağıtık Sistemler: Dağıtık sistemlerin temel prensipleri, iletişim mekanizmaları ve tutarlılık modelleri.

Bulut Bilişim ve Konteynerizasyon: Bulut hizmet modelleri, konteyner teknolojileri ve bunların sistem tasarımındaki rolü.

Veri Depolama Stratejileri: Büyük veri, veri gölü, veri ambarı gibi kavramlar ve bunların sistem tasarımındaki etkileri.

Yüksek Performanslı Sistemler: Yüksek trafikli sistemler için performans optimizasyonu ve ölçeklendirme stratejileri.

Uygulamalar:

Bir mikroservis mimarisi örneği tasarlayın ve bu mimarinin avantajlarını ve zorluklarını değerlendirin.

Dağıtık bir sistem için temel bir tasarım yapın ve bu tasarımın iletişim ve tutarlılık zorluklarını inceleyin.

Bulut bilişim ve konteyner teknolojilerini kullanarak bir sistem tasarımı yapın.

Kaynaklar:

Gelişmiş sistem tasarımı, mikroservis mimarisi, dağıtık sistemler ve bulut bilişim üzerine yazılmış kitaplar ve makaleler.

İlgili konular üzerine özel olarak hazırlanmış online kurslar ve video dersleri.

Ek Notlar:

Gelişmiş sistem tasarımı, teknolojinin sürekli değişen doğası nedeniyle sürekli güncel bilgi ve beceri gerektirir.

Vaka çalışmaları yaparken, gerçek dünya senaryolarını ve iş gereksinimlerini göz önünde bulundurun.

Bu on üçüncü günün sonunda, gelişmiş sistem tasarımı konseptleri üzerine derinlemesine bir anlayışa sahip olacaksınız ve gerçek dünya senaryolarını inceleyerek bu bilgileri pekiştirmiş olacaksınız. On dördüncü gün için devam etmek isterseniz, lütfen bildirin.


Gün 14: LeetCode ve HackerRank Üzerinde Java ile Algoritma Soruları Çözme

Amaç:

LeetCode ve HackerRank gibi platformlarda Java kullanarak algoritma sorularını çözmek, böylece problem çözme becerilerinizi ve kodlama yeteneğinizi geliştirmek.


Öğrenilecek Konular:

Problem Çözme Stratejileri: Etkili problem çözme teknikleri ve yaklaşımları.

Algoritma Türleri: Sıralama, arama, graf ve dinamik programlama gibi temel algoritma türleri.

Zorluk Seviyesine Göre Soru Seçimi: Temel seviyeden ileri seviyeye kadar çeşitli zorluk derecelerinde soruları seçme.

Kodlama ve Test Etme: Sorunları anlama, çözüm yollarını tasarlama, kodlama ve test etme süreçleri.

Zaman ve Hafıza Etkinliği: Çözümlerin performansını ve etkinliğini değerlendirme.

Uygulamalar:

Her gün farklı bir algoritma sorusu seçin ve bu soruyu Java kullanarak çözün.

Soruları çözerken algoritmanın etkinliğini ve performansını analiz edin.

Soruları çözdükten sonra çözümlerinizi gözden geçirin ve iyileştirebileceğiniz noktaları belirleyin.

Kaynaklar:

LeetCode, HackerRank ve benzeri platformlardaki Java algoritma soruları.

Online algoritma ve problem çözme kursları, video dersler ve rehberler.

Ek Notlar:

Bu tür platformlarda soru çözmek, mülakatlar için iyi bir hazırlık sağlar ve algoritma becerilerinizi geliştirir.

Her soruyu çözdükten sonra, çözümünüzü platformdaki diğer çözümlerle karşılaştırın ve farklı yaklaşımları öğrenin.

Bu on dördüncü günün sonunda, çeşitli algoritma sorularını çözme pratiği yapmış olacak ve Java'daki problem çözme becerilerinizi geliştirmiş olacaksınız. On beşinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 15: Veri Yapılarına Odaklanarak Problem Çözme

Amaç:

Çeşitli veri yapılarını kullanarak karmaşık problemleri çözmek ve Java'da veri yapılarına olan hakimiyetinizi artırmak.


Öğrenilecek Konular:

Temel Veri Yapıları: Diziler, bağlı listeler, yığınlar (stacks), kuyruklar (queues), hash tabloları, ağaçlar, grafikler.

Veri Yapılarıyla Algoritma Çözümleme: Veri yapılarının problem çözüm süreçlerinde nasıl kullanılacağı.

Karmaşıklık Analizi: Zaman ve alan karmaşıklığı analizi, Big O notasyonu.

Veri Yapılarına Özgü Problemler: Veri yapılarına özgü tipik mülakat soruları ve bunların çözüm yolları.

Veri Yapılarını Kombinleme: Farklı veri yapılarını birleştirerek karmaşık problemleri çözme.

Uygulamalar:

Her gün farklı bir veri yapısına odaklanarak ilgili algoritma sorularını çözün.

Çözüm sürecinde veri yapısının seçiminin önemini ve etkisini değerlendirin.

Çözümlerinizi karmaşıklık analizi açısından inceleyin ve optimize edin.

Kaynaklar:

Online algoritma ve veri yapıları kursları, pratik sorular ve çözümler.

Veri yapıları ve algoritmalar üzerine yazılmış kitaplar ve teknik makaleler.

Ek Notlar:

Bu çalışmalar, sizi mülakat sürecinde sıkça karşılaşacağınız veri yapılarına ilişkin sorular için hazırlar.

Her bir veri yapısının avantajlarını, dezavantajlarını ve uygun kullanım senaryolarını anlamaya çalışın.

Bu on beşinci günün sonunda, Java'da çeşitli veri yapılarını kullanarak karmaşık problemleri çözme deneyimi kazanmış olacaksınız. On altıncı gün için devam etmek isterseniz, lütfen bildirin.


Gün 16: Zorluk Derecesi Yüksek Algoritma Soruları ve Optimizasyon Teknikleri

Amaç:

Daha zorlu algoritma sorularını çözmek ve çözümleri optimize etme tekniklerini öğrenmek, bu sayede problem çözme ve kodlama yeteneklerinizi daha da ileriye taşımak.


Öğrenilecek Konular:

İleri Seviye Problemler: Zorluk derecesi yüksek algoritma ve veri yapılarına dayalı problemler.

Optimizasyon Stratejileri: Sorunları daha verimli çözmek için algoritmik optimizasyonlar.

Dinamik Programlama ve Greedy Algoritmalar: Karmaşık problemleri çözmek için dinamik programlama ve greedy algoritmaların kullanımı.

Graf Algoritmaları: Gelişmiş graf algoritmaları ve bunların uygulanması.

Yaratıcı Çözüm Yaklaşımları: Standart dışı düşünme ve yaratıcı problem çözme teknikleri.

Uygulamalar:

Her gün farklı bir ileri seviye problem seçin ve çözümünü geliştirin.

Optimizasyon tekniklerini kullanarak çözümlerinizi geliştirin ve etkinliğini artırın.

Çeşitli dinamik programlama ve graf algoritmalarını pratik problemlerle uygulayın.

Kaynaklar:

İleri seviye algoritma soruları sunan online platformlar (LeetCode, HackerRank).

Dinamik programlama, graf teorisi ve algoritma optimizasyonları hakkında kitaplar ve ders materyalleri.

Ek Notlar:

Bu tür zorlu problemler, mülakatlarda karşılaşabileceğiniz en üst düzey sorulara benzer.

Her problemi çözdükten sonra, çözümünüzü ve karşılaştığınız zorlukları değerlendirin ve alternatif yaklaşımları araştırın.

Bu on altıncı günün sonunda, zorluk derecesi yüksek algoritma sorularını çözme ve çözümleri optimize etme konusunda daha deneyimli olacaksınız. On yedinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 17: Gerçek Zamanlı Kodlama Pratiği - Peer Programming

Amaç:

Gerçek zamanlı kodlama pratikleri yaparak, birlikte programlama (peer programming) becerilerinizi geliştirmek ve kodlama sürecindeki iş birliğini ve etkileşimi deneyimlemek.


Öğrenilecek Konular:

Peer Programming'in Temelleri: Birlikte programlamanın prensipleri ve avantajları.

Etkili İletişim ve İş Birliği: Kodlama sırasında etkili iletişim kurma ve iş birliği yapma teknikleri.

Kod İncelemesi (Code Review): Başkalarının kodlarını inceleme ve geri bildirimde bulunma.

Hata Ayıklama ve Problem Çözme: Ortak çalışma sırasında karşılaşılan problemleri çözme ve hata ayıklama stratejileri.

Kod Kalitesi ve Best Practices: Kod kalitesini artırmak için uygulanan en iyi yöntemler ve standartlar.

Uygulamalar:

Bir peer ile birlikte oturumlar planlayın ve belirli bir problem üzerinde beraber çalışın.

Birbirinizin kodlarını gözden geçirin ve yapıcı geri bildirimlerde bulunun.

Ortaklaşa bir proje üzerinde çalışarak iş birliği ve ekip çalışması becerilerinizi geliştirin.

Kaynaklar:

Peer programming ve kod inceleme teknikleri hakkında rehberler ve makaleler.

Online kodlama platformları ve toplulukları, iş birliği yapabileceğiniz diğer programcılarla bağlantı kurabileceğiniz yerler.

Ek Notlar:

Peer programming, fikir alışverişinde bulunmanın ve birlikte öğrenmenin etkili bir yoludur.

Pratik yaparken, farklı bakış açılarından yararlanın ve iş birliği içinde nasıl daha iyi çözümler üretebileceğinizi keşfedin.

Bu on yedinci günün sonunda, peer programming pratiği yaparak iş birliği ve ekip çalışması becerilerinizi geliştirmiş olacaksınız. On sekizinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 18: Davranışsal Mülakat Hazırlığı - STAR Metodu

Amaç:

Davranışsal mülakat tekniklerini öğrenmek ve STAR (Durum, Görev, Eylem, Sonuç) metodunu kullanarak etkili mülakat yanıtları hazırlamak.


Öğrenilecek Konular:

Davranışsal Mülakatların Önemi: Davranışsal mülakatların amacı ve işverenlerin bu mülakatlardan ne beklediği.

STAR Metodu: Durum, Görev, Eylem, Sonuç (STAR) formatının detayları ve bu formatın nasıl etkili bir şekilde kullanılacağı.

Örnek Durumlar ve Senaryolar: Geçmiş iş tecrübelerinizden örnekler ve bu tecrübeleri STAR formatında anlatma.

Geri Bildirim ve Kendini İyileştirme: Alınan geri bildirimleri değerlendirme ve mülakat becerilerinizi geliştirme.

Empati ve İletişim Becerileri: Etkili iletişim kurma ve durumları empatiyle ele alma.

Uygulamalar:

Geçmiş iş deneyimlerinizi gözden geçirin ve önemli başarılarınızı veya zorlukları STAR formatında ifade edin.

Bu anlatımları arkadaşlarınıza veya aile üyelerinize sunarak geri bildirim alın.

Gerçek bir mülakat senaryosunda bu yanıtları nasıl kullanacağınızı düşünün ve pratik yapın.

Kaynaklar:

Davranışsal mülakatlar ve STAR metodu hakkında rehberler ve makaleler.

Mülakat becerilerini geliştirmek için online kurslar ve eğitim materyalleri.

Ek Notlar:

Davranışsal mülakatlar, işverenlere problem çözme ve takım içinde çalışma becerilerinizi göstermenizi sağlar.

Gerçek mülakat öncesi bu tür pratikler, kendinizi daha rahat ve hazır hissetmenize yardımcı olur.

Bu on sekizinci günün sonunda, davranışsal mülakat tekniklerini ve STAR metodunu kullanarak etkili mülakat yanıtları hazırlama becerisini geliştirmiş olacaksınız. On dokuzuncu gün için devam etmek isterseniz, lütfen bildirin.


Gün 19: Mock Mülakatlar ve Geri Bildirim Alma

Amaç:

Mock (prova) mülakatlar yaparak gerçek mülakat deneyimini simüle etmek, geri bildirim almak ve mülakat performansınızı geliştirmek.


Öğrenilecek Konular:

Mock Mülakatların Önemi: Prova mülakatlarının gerçek mülakatlara hazırlıkta oynadığı rol.

Gerçekçi Mülakat Senaryoları: Teknik ve davranışsal soruları içeren gerçekçi mülakat senaryoları oluşturma.

Geri Bildirim Alma: Mülakat sonrası objektif geri bildirim almak ve bu geri bildirimleri değerlendirme.

Stres Yönetimi ve Kendine Güven: Mülakat sırasında stresi yönetme ve kendine güvenli bir şekilde yanıt verme.

Sürekli İyileştirme: Aldığınız geri bildirimler doğrultusunda mülakat becerilerinizi sürekli olarak geliştirme.

Uygulamalar:

Arkadaşlarınız, meslektaşlarınız veya profesyonel bir koç ile mock mülakatlar düzenleyin.

Gerçek bir mülakat ortamını taklit edin ve farklı türdeki mülakat sorularına yanıt verin.

Aldığınız geri bildirimleri dikkatlice değerlendirin ve gerekli iyileştirmeleri yapın.

Kaynaklar:

Online mülakat simülasyon platformları ve mock mülakat hizmetleri.

Mülakat stratejileri ve geri bildirim alma teknikleri üzerine rehberler.

Ek Notlar:

Mock mülakatlar, gerçek mülakat öncesinde kendinizi test etmek ve geliştirmek için mükemmel bir fırsattır.

Her mock mülakat sonrası, kendinizi daha hazır ve rahat hissetmeye başlamalısınız.

Bu on dokuzuncu günün sonunda, mock mülakatlar yaparak gerçek mülakatlar için kendinizi daha iyi hazırlamış ve geri bildirim alma yoluyla mülakat performansınızı geliştirmiş olacaksınız. Yirminci gün için devam etmek isterseniz, lütfen bildirin.


Gün 20: Zayıf Yönler Üzerinde Çalışma ve Gözden Geçirme

Amaç:

Mock mülakatlardan ve önceki hazırlık sürecinden elde edilen geri bildirimleri değerlendirerek zayıf yönlerinizi geliştirmek ve genel mülakat becerilerinizi güçlendirmek.


Öğrenilecek Konular:

Zayıf Yönleri Tanımlama: Kendi zayıf yönlerinizi belirleme ve bu alanlarda nasıl gelişebileceğinizi anlama.

Hedef Odaklı Çalışma: Belirlenen zayıf yönler üzerinde özel olarak çalışma ve bu alanlarda gelişme sağlama.

Zaman Yönetimi ve Önceliklendirme: Etkili zaman yönetimi teknikleri ve mülakat hazırlığı sürecinde önceliklerin belirlenmesi.

Geri Bildirimlerin Etkin Kullanımı: Aldığınız geri bildirimleri etkili bir şekilde kullanma ve kendinizi sürekli olarak geliştirme.

Kendine Güven ve Olumlu Tutum: Zorluklara karşı olumlu bir tutum sergileme ve kendine güveni artırma.

Uygulamalar:

Zayıf olduğunuz alanlarda özel çalışmalar yapın (örneğin, belirli bir programlama konsepti, davranışsal sorulara yanıt verme, vb.).

Zaman yönetimi ve önceliklendirme tekniklerini kullanarak verimli bir şekilde çalışın.

Aldığınız geri bildirimler doğrultusunda hedeflerinizi gözden geçirin ve uygun düzeltmeleri yapın.

Kaynaklar:

Kişisel gelişim ve mülakat hazırlığı üzerine kitaplar, makaleler ve online kaynaklar.

Zaman yönetimi ve önceliklendirme teknikleri üzerine rehberler.

Ek Notlar:

Zayıf yönler üzerinde çalışmak, genel mülakat performansınızı önemli ölçüde artırabilir.

Kendi gelişiminizi sürekli olarak izleyin ve ilerlemenizi değerlendirin.

Bu yirminci günün sonunda, zayıf yönlerinizi geliştirmek için adımlar atmış ve mülakat becerilerinizi daha da güçlendirmiş olacaksınız. Yirmi birinci gün için devam etmek isterseniz, lütfen bildirin.


Gün 21: Genel Gözden Geçirme ve Rahatlama

Amaç:

Şimdiye kadar yaptığınız çalışmaları genel bir gözden geçirme ve mülakat öncesi rahatlama ve odaklanma teknikleri üzerinde çalışma.


Öğrenilecek Konular:

Toplam Gözden Geçirme: Son 20 günde öğrendiklerinizi gözden geçirerek genel bir değerlendirme yapma.

Zihinsel Hazırlık: Mülakat günü için zihinsel olarak hazırlanma ve odaklanma teknikleri.

Stres Yönetimi: Mülakat stresini yönetmek için rahatlama ve nefes alma teknikleri.

Motivasyon ve Kendine Güven: Kendinize güveni artırma ve motivasyonunuzu yüksek tutma stratejileri.

Lojistik ve Pratik Hazırlıklar: Mülakat günü için gerekli lojistik ve pratik hazırlıkları tamamlama.

Uygulamalar:

Yaptığınız çalışmaları ve hazırlıkları gözden geçirerek eksik noktaları belirleyin ve bunları tamamlayın.

Rahatlama ve stres yönetimi tekniklerini uygulayın.

Mülakat günü için planınızı gözden geçirin ve gerekli hazırlıkları yapın.

Kaynaklar:

Zihinsel hazırlık ve motivasyon üzerine kitaplar ve online kaynaklar.

Stres yönetimi ve rahatlama teknikleri hakkında rehberler.

Ek Notlar:

Mülakat öncesi rahatlama, sizi daha odaklı ve hazır hale getirebilir.

Tüm hazırlıklarınızı tamamladıktan sonra, mülakata odaklanmak için kendinize zaman ayırın.

Bu yirmi birinci günün sonunda, şimdiye kadar yaptığınız tüm çalışmaları gözden geçirmiş ve mülakat için hem zihinsel hem de pratik olarak hazır hale gelmiş olacaksınız. Bu hazırlık sürecinin sonunda, mülakatınız için en iyi durumda olmanızı umuyorum. 

Google Interview Süreci Nasıl İşliyor?



#google #interview

Google teknoloji görüşmeleri herkesin bildiği gibi zor ve oldukça zordur. Bir telefon ekranı almak için, özgeçmişinizi çevrimiçi başvuru sistemlerine veya bir Google çalışanının dahili yönlendirmesi yoluyla göndermeniz gerekir.

Özgeçmiş ekranını geçtiğinizi varsayarsak, bir işe alım görevlisi size ulaşacaktır. Genellikle iki telefon ekranı olur ve başarılı olursanız yerinde görüşmelere davet edilirsiniz.

Google geniş bir ölçekte faaliyet gösterdiğinden, yazdığınız algoritmayı birden çok makine için nasıl ölçeklendireceğinizle ilgili birçok soruyu yanıtlamaya hazır olun. Bazı örnekler: Ada Sayısı ve İki Dizinin Kesişimi II .


Mülakat Süreci

Görüşme sürecinin ilk adımı olarak bir çevrimiçi değerlendirme bağlantısı alabilirsiniz. Değerlendirme 7 gün içinde sona erecek ve bir saat içinde tamamlanması gereken iki kodlama sorusu içermektedir. Aşağıda alıştırma yapmanız için bazı Çevrimiçi Değerlendirme soruları bulunmaktadır.

Bu bölümün sonuna doğru, bir Google görüşmesinin farklı aşamaları hakkında daha fazla ayrıntı sağlıyoruz.

 Benzersiz E-posta Adresleri

Çevrimiçi Değerlendirme Sorusu

 Tek Çift Atlama

Çevrimiçi Değerlendirme Sorusu

 Lisans Anahtarı Biçimlendirmesi

Çevrimiçi Değerlendirme Sorusu

 Sepete Meyve

Çevrimiçi Değerlendirme Sorusu

 Google Telefon Görüşmesi

Google Telefon Görüşmesinin Temelleri

 Google Yerinde Görüşme

Google Yerinde Görüşmenin Temelleri

 Google İşe Alma Komitesi

Google İşe Alım Komitesi aşamasının temelleri

 Google Teklif İncelemesi

Google Teklif İnceleme sürecinin temelleri


Google Telefon Görüşmesi


Telefon ekranı genellikle 30 ile 60 dakika arasında sürer.

Telefon görüşmeniz veri yapılarını ve algoritmaları kapsayacaktır. En güçlü dilinizde yaklaşık 20-30 satır kod yazmaya hazır olun. Bu temiz, zengin, sağlam bir kod olmalıdır.

Görüşmeciniz, pek çok takip sorusu içeren bir veya iki kodlama sorusu soracaktır. Görüşmecinizle paylaşacağınız bir Google Dokümanına kod yazarken düşünce süreciniz üzerinden konuşmaya hazır olun. Serbestçe yazabilmeniz için eller serbest kulaklık veya hoparlör kullanmanızı öneririz.

Size açık uçlu bir soru sorulacak. Açıklayıcı sorular sorun, gereksinimler belirleyin.

Bunu bir algoritma ile açıklamanız istenecektir.

Çalışabilir bir koda dönüştürün.

(İpucu: Zaman sınırlı olduğu için mükemmel hale getirme konusunda endişelenmeyin. Neyin geldiğini yazın ama sonra düzeltin. Ayrıca köşe kasaları ve kenar kasaları, üretime hazır olarak değerlendirdiğinizden emin olun.)

Kodu optimize edin, test durumlarıyla takip edin ve hataları bulun.

Google Telefon Görüşmesi

Rapor bildir

Budur! Telefon görüşmelerini geçtiniz ve şimdi bir yerinde görüşme daveti aldınız. Yerinde görüşme, bir Google görüşmesinin en önemli sürecidir ve bir teklif alma beceriniz büyük ölçüde yerinde görüşmeler sırasındaki performansınıza bağlı olacaktır. Geleneksel olarak, yerinde görüşmeden sonra teklif alacak adayların yüzdesi yaklaşık 5'te 1 ila 7'de 1'dir .

Genellikle beş Google çalışanıyla her biri yaklaşık 30 ila 45 dakika görüşeceksiniz ve bunlardan biri öğle yemeği görüşmeciniz olacak ve görüşme geri bildirimi göndermeyecek, bu nedenle bu fırsatı özgürce soru sormak için kullanın.

Tüm adaylar dört farklı alanda güçlü yanlarını öne çıkarma şansına sahip olacak:

Genel bilişsel yetenek: Sorunlara nasıl yaklaştığınızı ve çözdüğünüzü öğrenmek için açık uçlu sorular sorulur. Ve tek bir doğru cevap yok; düşünce sürecinizi açıklama beceriniz ve kararları bilgilendirmek için verileri nasıl kullandığınız en önemli şeydir.

Liderlik: Başkalarını harekete geçirmek için iletişim ve karar verme becerilerinizi nasıl kullandığınızı tartışmaya hazır olun. Bu, işte veya bir kuruluşta liderlik rolüne adım atarak veya resmi olarak lider olmasanız bile bir ekibin başarılı olmasına yardımcı olarak olabilir.

Rol ile ilgili bilgi: Google, etki yaratmak için bireysel güçlü yanlarınızın deneyiminizle nasıl birleştiğiyle ilgilenir. Google, yalnızca bugün nasıl katkıda bulunabileceğinizi değil, henüz icat edilmemiş olanlar da dahil olmak üzere farklı rollere nasıl dönüşebileceğinizi araştırır.

Googleyness: Bireysel olarak ve ekip olarak nasıl çalıştığınızı, başkalarına nasıl yardım ettiğinizi, belirsizliği nasıl aştığınızı ve konfor alanınızın dışına çıkmak için kendinizi nasıl zorladığınızı paylaşın.

İş deneyiminiz ne olursa olsun , Google'ın analitik yeteneğinize büyük önem verdiğini unutmayın . Veri yapılarının ve algoritmaların sağlam bir şekilde anlaşıldığını sergilemeye hazır olun. Sektörde yılların deneyimine sahipseniz ve Bilgisayar Bilimi temellerinizde paslanmışsanız, temel CS temel becerilerinizi geliştirmek için daha fazla zaman ayırın. Aksi takdirde, bir ikili ağacı tersine çeviremediğiniz için Max Howell gibi reddedilebilirsiniz .

Google, kodlama becerilerinizi ve araçlar veya programlama dilleri dahil olmak üzere teknik uzmanlık alanlarınızı ve veri yapıları ve algoritmalar gibi konularda genel bilgileri anlamak istiyor. Bu tartışmalarda genellikle bir miktar ileri geri vardır, tıpkı işte birbirlerinin düşüncelerini zorlamak ve farklı yaklaşımlar hakkında bilgi edinmek gibi. Bu nedenle, çözümlerinizi derinlemesine konuşmaya hazır olun. Kendi sınırlarınızı zorlayın ve en iyi yanıtı bulun; muhtemelen zaten böyle çalışıyorsunuz.

Google'da teknik yerinde görüşmeler, geçmişte beyaz tahtalarda gerçekleştiriliyordu, ancak daha az zaman alan daha özgün bir kodlama deneyimi sağlamak için Google, bazı sitelerde kodlama görüşmeleri için dizüstü bilgisayarlar sunmaya başladı. Bu chromebook'larda, tercih ettiğiniz kodlama dilini seçmenize izin veren bir görüşme uygulaması bulunur.

Görüşme süreci boyunca, sorularını tam olarak anladığınızdan emin olmak için görüşmecilerden açıklama istemekten çekinmeyin.


Google İşe Alma Komitesi


Yerinde görüşmeden sonra, görüşmecilerinizin her birinin (öğle yemeği görüşmecisi hariç) ayrıntılı görüşme geri bildirimi göndermesi gerekecektir. Birinin geri bildiriminin diğerlerini etkilememesini sağlamak için her görüşmecinin geri bildirimi diğer görüşmecilerden gizli tutulur. Her görüşmeci bir puan atayacak ve İşe Al / İşe Almama kararı verecektir.

Geri bildirimden alınan puanların yeterince iyi olduğunu varsayarsak, tüm paketiniz incelenmek üzere işe alım komitesine iletilecektir.

İşe alım komitesi, gönderilen tüm geri bildirimleri kapsamlı bir şekilde inceleyecek ve bir işe alma / işe almama tavsiyesi verecektir.


Google Teklif İncelemesi


İşe Alma Komitesi kiralamayı önerirse, tebrikler! Sürecin son aşamasına geldiniz. Bu aşamada uzatılmamış teklifler yaklaşık % 10-12 aday var. İşveren, Dış Referanslar ve Tazminat Geçmişi ister, referans kontrolleri yapar ve Teklif İnceleme Süreci için bir paket hazırlar.

Teklif İnceleme süreci:

Ön İnceleme Komitesi

Tazminat Komitesi İncelemesi

Kıdemli Başkan Yardımcısı İncelemesi

Son SVP incelemesinde teklifin onaylanmama ihtimali küçük bir yüzdedir .


Rastgele İçerik

© tüm hakları saklıdır
made with by templateszoo