https://github.com/ugursabirer/live-coding-studies
Java live coding interview preparation with 6 problems (beginner to advanced). Covers Stream API, OOP, Collections, Thread Safety, and Design Patterns. Prepared for technical interviews.
https://github.com/ugursabirer/live-coding-studies
coding-interview collections concurrency design-patterns interview-preparation interview-questions java java8 live-coding oop problem-solving solid-principles stream-api technical-interview thread-safety
Last synced: about 1 hour ago
JSON representation
Java live coding interview preparation with 6 problems (beginner to advanced). Covers Stream API, OOP, Collections, Thread Safety, and Design Patterns. Prepared for technical interviews.
- Host: GitHub
- URL: https://github.com/ugursabirer/live-coding-studies
- Owner: ugursabirer
- Created: 2025-11-03T13:39:05.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-11-03T13:41:10.000Z (8 months ago)
- Last Synced: 2025-11-03T15:21:01.779Z (8 months ago)
- Topics: coding-interview, collections, concurrency, design-patterns, interview-preparation, interview-questions, java, java8, live-coding, oop, problem-solving, solid-principles, stream-api, technical-interview, thread-safety
- Language: Java
- Homepage:
- Size: 55.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🎯 Java Live Coding Interview Hazırlık
İş Görüşmesi için hazırladığım live coding pratik soruları ve çözümleri.
## 📚 İçerik
### 🌱 Başlangıç Seviye
#### Problem 1: Ürün Filtreleme
- **Konular**: Stream API, Collections, Lambda Expressions
- **Zorluk**: ⭐ Başlangıç
- **Süre**: 10-15 dakika
- [Problem](beginner-level/problem-01-product-filter/README.md) | [Çözüm & Notlar](beginner-level/problem-01-product-filter/notes.md)
#### Problem 2: IBAN Validator
- **Konular**: String manipulation, Regex, Validation, Exception Handling
- **Zorluk**: ⭐ Başlangıç
- **Süre**: 15-20 dakika
- [Problem](beginner-level/problem-02-iban-validator/README.md) | [Çözüm & Notlar](beginner-level/problem-02-iban-validator/notes.md)
### 🌿 Orta Seviye
#### Problem 1: Kurs Yönetim Sistemi
- **Konular**: OOP, Collections Framework, Bidirectional Relationships
- **Zorluk**: ⭐⭐⭐ Orta
- **Süre**: 30-40 dakika
- [Problem](intermediate-level/problem-01-course-management/README.md) | [Çözüm & Notlar](intermediate-level/problem-01-course-management/notes.md)
#### Problem 2: Alışveriş Sepeti
- **Konular**: HashMap, Stream API (groupingBy), equals/hashCode
- **Zorluk**: ⭐⭐⭐ Orta
- **Süre**: 35-45 dakika
- [Problem](intermediate-level/problem-02-shopping-cart/README.md) | [Çözüm & Notlar](intermediate-level/problem-02-shopping-cart/notes.md)
### 🌳 İleri Seviye
#### Problem 1: Banka Sistemi
- **Konular**: Thread Safety, Custom Exceptions, Concurrency, synchronized
- **Zorluk**: ⭐⭐⭐⭐ İleri
- **Süre**: 45-60 dakika
- [Problem](advanced-level/problem-01-bank-system/README.md) | [Çözüm & Notlar](advanced-level/problem-01-bank-system/notes.md)
#### Problem 2: Otel Rezervasyon Sistemi
- **Konular**: Design Patterns (Factory, Builder, Observer, Singleton), SOLID Principles
- **Zorluk**: ⭐⭐⭐⭐⭐ İleri
- **Süre**: 60-75 dakika
- [Problem](advanced-level/problem-02-hotel-reservation/README.md) | [Çözüm & Notlar](advanced-level/problem-02-hotel-reservation/notes.md)
## 🎓 Öğrenilenler
### Başlangıç Seviye
- ✅ Stream API & Functional Programming
- ✅ Collections (List, Set)
- ✅ String manipulation & Regex
- ✅ Validation patterns
- ✅ Exception handling basics
### Orta Seviye
- ✅ OOP Principles (Encapsulation, Abstraction)
- ✅ Collections Framework (HashMap, ArrayList)
- ✅ equals() & hashCode() override
- ✅ Bidirectional relationships
- ✅ Stream API advanced (groupingBy, map, filter)
### İleri Seviye
- ✅ Thread Safety & Synchronization
- ✅ Deadlock prevention
- ✅ Custom exceptions
- ✅ ConcurrentHashMap
- ✅ Design Patterns (Factory, Builder, Observer, Singleton)
- ✅ SOLID Principles
- ✅ Abstract classes & Interfaces
## 🚀 Nasıl Kullanılır?
1. **Problem Seç**: Seviyene göre bir problem seç
2. **README Oku**: Problem açıklamasını oku
3. **Kendin Çöz**: IDE'de kendi çözümünü yaz
4. **Notları İncele**: `notes.md` dosyasından detaylı açıklamaları oku
5. **Karşılaştır**: Kendi çözümünü notlarla karşılaştır
## 💡 Interview İpuçları
### Genel Yaklaşım
1. **Problemi Anla**: Soruları sormaktan çekinme
2. **Düşünce Sürecini Anlat**: "Önce validasyon yapacağım, sonra..."
3. **Adım Adım İlerle**: Küçük parçalara böl
4. **Test Et**: Her adımda test et
5. **Alternatifler Sun**: "Bu şekilde de yapabilirim ama..."
### Kod Yazarken
- ✅ Meaningful variable names
- ✅ Guard clauses (erken return)
- ✅ Null kontrolü
- ✅ Comments (sadece gerektiğinde)
- ✅ Clean code principles
### Bahsetmen Gereken Konular
- 💬 "Stream API kullanıyorum - daha modern"
- 💬 "Guard clause pattern - nested if'lerden kaçınıyorum"
- 💬 "Exception'ları kontrol akışı için kullanmıyorum"
- 💬 "HashMap O(1) lookup hızı sağlıyor"
- 💬 "synchronized kullandım - thread-safe"
- 💬 "SOLID prensiplerine dikkat ettim"
## 📅 Hazırlanma Süreci
Bu repository 03.11.2025 tarihindeki OBSS İş Görüşmesi için hazırlandı.
**Görüşme Öncesi Checklist:**
- [ ] IDE'ni aç (Eclipse/IntelliJ/NetBeans)
- [ ] Java 1.8+ yüklü olduğundan emin ol
- [ ] Tüm problemleri bir kez daha gözden geçir
- [ ] Mikrofon/kamera test et
- [ ] İnternet bağlantını kontrol et
## 📊 Problem Dağılımı
```
Toplam: 6 Problem
Başlangıç : 2 problem (⭐)
Orta : 2 problem (⭐⭐⭐)
İleri : 2 problem (⭐⭐⭐⭐⭐)
```
## 🛠️ Teknolojiler
- Java 8+
- Stream API
- Collections Framework
- Concurrency
- Design Patterns
- SOLID Principles
## 📖 Ek Kaynaklar
### Stream API
- [Oracle Docs - Stream API](https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html)
- [Baeldung - Java 8 Streams](https://www.baeldung.com/java-8-streams)
### Design Patterns
- [Refactoring Guru - Design Patterns](https://refactoring.guru/design-patterns)
- [Java Design Patterns](https://java-design-patterns.com/)
### Concurrency
- [Oracle Docs - Concurrency](https://docs.oracle.com/javase/tutorial/essential/concurrency/)
- [Baeldung - Java Concurrency](https://www.baeldung.com/java-concurrency)
## 👤 Yazar
**Uğur Sabırer**
- GitHub: [@ugursabirer](https://github.com/ugursabirer)
## 📝 Notlar
- Her problem için detaylı açıklamalar `notes.md` dosyasında
- Alternatif çözümler ve best practices dahil
- Interview'da kullanılabilecek açıklamalar mevcut
- Yaygın hatalar ve bunlardan kaçınma yolları
## 🎯 Hedef
Bu repository ile:
1. Java live coding interview'lara hazırlanmak
2. Farklı zorluk seviyelerinde problemler çözmek
3. Best practices öğrenmek
4. Design pattern'leri pratikte kullanmak
5. Thread-safe kod yazmayı öğrenmek
---
**Good luck! 🍀**
*Son güncelleme: 03 Kasım 2025*