Bloga dön

Go Geliştirici İşe Almadan Önce 5 Soru

Beş Go mülakat sorusu: goroutine iptali, channel ile mutex, hata sarmalama, küçük arayüzler ve canlı ortam düzeltmeleri. İşe alım eleme görüşmeleri için.

Diğer diller: EnglishPolskiDeutschSuomi

İki monitörlü bir atölyede bilgisayar başında çalışan mühendis
Fotoğraf: this_is_engineering, Pixabay

Go, Stack Overflow 2025 Developer Survey anketinde bulut yerel servisler için büyümeye devam ediyor. Birçok özgeçmişte “goroutine” yazar; ancak daha azı işlerini nasıl iptal ettiklerini ve API’lerini nasıl dürüst tuttuklarını gösterir. Go işe alımında genellikle zamanlayıcı anlatımları yerine eşzamanlılık yargısından başlanır.

Bu beş soru goroutine yaşam döngüsünü, senkronizasyon seçimlerini, hata tasarımını, arayüzleri ve canlı ortam düzeltmelerini ortaya çıkarır; escape analysis ezberini değil.

1. “Çalışmakta olan goroutine işlerini nasıl iptal eder ve sızıntıları nasıl önlersiniz? Kullandığınız bir context’i adım adım anlatın.”

Güçlü adaylar context.WithCancel veya zaman aşımlarını, Done üzerinde beklemeyi ve düzelttikleri bir sızıntıyı anlatır. Zayıf yanıtlar, kapanış senaryosu olmayan goroutine’ler başlatır.

2. “Canlıya aldığınız kodda channel’ı mutex’e ne zaman tercih edersiniz (ya da tersini)?”

Yargı istiyorsunuz: sahiplik devri ve pipeline’lar mı, yoksa paylaşılan durumu korumak mı? Zayıf yanıtlar, her kilit için channel’ı tek “Go yolu” olarak görür.

3. “Çağıranlar için hataları nasıl ele alırsınız: sarmalama, sentinel değerler veya tipli hatalar?”

%w kullanımını, errors.Is ve As ile kontrolü ve public API’nin ne döndürdüğünü dinleyin. Bağlam önemliyse çıplak return err kullanmaktan kaçınan adaylar güçlüdür. Zayıf yanıtlar yalnızca “err != nil kontrolü yaparım” der.

4. “Tasarladığınız küçük bir arayüzü anlatın. Kompozisyon nasıl yardımcı oldu?”

İyi yanıtlar arayüzleri ince tutar ve fonksiyonlarda parametre olarak arayüz kabul eder. Zayıf yanıtlar büyük “god interface”ler icat eder veya yazdıkları bir arayüzü adlandıramaz.

5. “Go’da yaşanan bir canlı ortam olayını ya da performans düzeltmesini anlatın (pprof hafif kullanıldıysa sorun değil).”

Sahiplenmeyi öğrenirsiniz. Güçlü adaylar darboğazı veya hatayı ve yaptıkları değişikliği adlandırır. Zayıf yanıtlar “optimizasyon” hakkında soyut kalır.

Yanıtları karşılaştırılabilir kanıta dönüştürün

Her finalist için bir iptal deseni, bir channel ve mutex tercihi, bir hata yönetimi tarzı ve bir canlı ortam veya performans hikâyesi kaydedin.

Her finalist için tek değerlendirme kartı

Bu açık pozisyon için her adaya aynı beş soruyu sorun. Tutarlı sorular tutarlı değerlendirmeyi destekler; bu da EEOC’nin işverenlere, aynı pozisyondaki başvuranlara aynı standartları uygulama yönündeki rehberiyle uyumludur (EEOC).

Canvider JobCraft ile Go servis kapsamını iş ilanında tanımlayın, InterviewGen ile boşluk odaklı takip soruları hazırlayın ve DecisionHelper ile finalistleri yayınladığınız kriterlere göre karşılaştırın.

Sonraki adım: InterviewGen’i keşfedin ve DecisionHelper’ı inceleyin, ardından ücretsiz başlayın.