Ana içeriğe atla
AWS
Kariyer Hizmetleri

2026 için En Popüler 20 AWS Lambda Mülakat Sorusu ve Cevabı

AWS Lambda, sunucusuz bir bilgi işlem hizmetidir ve teknik mülakatlarda giderek daha sık gündeme gelmektedir. Bulut bilişime yeni de olsanız, deneyimli bir profesyonel de olsanız, AWS Lambda’yı anlamak esastır.
Zoumana Keita 's photo
Zoumana Keita
Güncel · 12 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Ücretsiz Hesabınızı Oluşturun

Alıştırma and program your progress.

Google Ile Devam Edin
Devam ederek Kullanım Şartlarımızı, Gizlilik Politikamızı ve verilerinizin ABD’de saklandığını kabul etmiş olursunuz.

Anlaşılması gereken en önemli AWS hizmetlerinden biri, olaylara yanıt olarak kod çalıştıran ve alttaki kaynakları otomatik olarak yöneten sunucusuz bir bilgi işlem hizmeti olan AWS Lambda—dır.

Lambda benimsendikçe, teknik mülakatlarda AWS Lambda sorularıyla karşılaşmak yaygın hale geliyor.

Bu rehber, seçilmiş soru ve cevap listesiyle AWS Lambda mülakat hazırlığını kolaylaştırır. Temelleri ele alıyor, ardından ileri düzey ve pratik senaryolara dalıyoruz.

AWS hakkında daha fazla bilgi edinmek isterseniz, AWS Bulut Teknolojisi ve Hizmetleri kursuna göz atın.

Neden AWS?

Mülakat sorularını ve cevaplarını incelemeden önce, AWS Bulutu’nun neden başlıca tercih edilen platform olduğunu anlamak önemlidir—bu başlı başına mülakatta sorulabilecek bir sorudur.

Şu grafiği inceleyerek başlayalım:

Kaynak (Statista)

Grafik, 2023 2. çeyrekte küresel bulut altyapı hizmetleri pazarında AWS’in hakimiyetini göstermektedir. %32’lik pazar payıyla AWS, %22 paya sahip en yakın rakibi Microsoft Azure’un oldukça önündedir. Google Cloud (%11) ve Alibaba Cloud (%4) gibi diğer büyük oyuncular pazara katkı sunsa da, payları AWS ve Azure ile karşılaştırıldığında oldukça düşüktür.

2023’ün 2. çeyreğinde bulut altyapı hizmetlerinin ürettiği 65 milyar dolarlık toplam gelir, bu pazarın artan önemini ve finansal ağırlığını daha da vurgular. AWS’in bu hızla büyüyen sektördeki lider konumu, güvenilir ve ölçeklenebilir bulut çözümleri arayan işletmeler için stratejik önemini pekiştirir.

Farklı bulut sağlayıcılarının nasıl karşılaştırıldığını daha fazla öğrenmek isterseniz, AWS, Azure ve GCP Hizmet Karşılaştırması hile sayfasına göz atın.

Finansal yönler önemli olmakla birlikte, AWS’in çekiciliği pazar payının ötesine uzanır; geniş hizmet yelpazesi, güvenilirlik, ölçeklenebilirlik, küresel erişim, güçlü güvenlik, sürekli yenilik ve destekleyici bir topluluğu kapsar. Bu unsurların birleşimi, AWS uzmanlığını teknoloji sektöründe oldukça aranan bir beceri haline getirerek, bu lider bulut platformunda yetkin olanlar için çok sayıda kariyer fırsatı sunar.

Hadi birkaç mülakat sorusuna bakalım!

Temel AWS Lambda Mülakat Soruları

Temellerle başlayalım. AWS Lambda’ya yeni olun ya da sadece tazeleme yapıyor olun, bu temel bilgiler Lambda’nın yeteneklerine daha derinlemesine dalış için sizi hazırlar.

AWS Lambda, sunucu sağlama veya yönetme gerektirmeden kod çalıştırmanızı sağlayan sunucusuz bir bilgi işlem hizmetidir. Lambda, yalnızca gerektiğinde kodu çalıştırır ve günde birkaç isteğe kadar ya da saniyede binlercesine otomatik olarak ölçeklenir.

Bir Lambda fonksiyonunun başlıca bileşenleri şunlardır:

  • Handler (işleyici): Bu, fonksiyonumuzun giriş noktasıdır; çağırma olayını işleyen kodumuzdaki bir metottur. Bunu Lambda kodumuzun "main" fonksiyonu gibi düşünebilirsiniz.
  • Event (olay): Fonksiyonun çalıştırılmasını tetikleyen JSON formatlı girdi verisidir. Fonksiyon çağrısını başlatanın ne olduğuna dair bilgileri taşır.
  • Context (bağlam): Fonksiyonun yürütme ortamına ilişkin çalışma zamanı bilgilerini içeren bir nesnedir. Fonksiyon adı, sürüm, bellek sınırları, istek kimliği ve kalan yürütme süresi gibi ayrıntıları içerir.
  • Ortam değişkenleri: Kodun kendisini değiştirmeden Lambda fonksiyonunuzun davranışını yapılandırmak için ayarlayabileceğiniz anahtar-değer çiftleridir. Genellikle API anahtarları, veritabanı kimlik bilgileri veya diğer ayarlar için kullanılır.

Lambda, yerel olarak Node.js, Python, Ruby, Java, Go, C# ve PowerShell’i destekler. Bu, Lambda fonksiyonlarımızı ek kurulum gerektirmeden doğrudan bu dillerde yazabileceğimiz anlamına gelir.

Ayrıca Lambda, özel çalışma zamanları kullanmamıza olanak tanır; bu da fonksiyon kodumuzu ve bağımlılıkları bir konteyner imajında paketleme esnekliği sağlar. Bu sayede neredeyse tüm programlama dilleri desteklenebilir ve ihtiyaçlarımıza en uygun aracı seçebiliriz.

Lambda fonksiyonları oluşturmanın birkaç yolu vardır:

Yöntem

Açıklama

En Uygun Olduğu Durumlar

Lambda Konsolu

Kodu doğrudan tarayıcı düzenleyicisinde yazın.

Basit fonksiyonlar, hızlı test

Dağıtım Paketi

Kodu ve bağımlılıkları bir ZIP arşivine paketleyip yükleyin.

Daha büyük projeler, karmaşık fonksiyonlar

Konteyner İmajı

Fonksiyonu bir Docker konteyner imajı olarak paketleyin.

Özel çalışma zamanları, belirli yapılandırmalar

Altyapı-olarak-Kod

AWS SAM, CloudFormation veya CDK kullanarak fonksiyonları ve kaynakları deklaratif kodla tanımlayın.

Karmaşık sunucusuz uygulamaları yönetme, otomasyon

Lambda fonksiyonlarını birkaç şekilde çağırabiliriz:

  1. Senkron çağrı: İstemci, fonksiyonun tamamlanıp bir yanıt döndürmesini bekler.
  2. Asenkron çağrı: İstemci yanıt beklemez—Lambda fonksiyonu arka planda yürütür.
  3. Olay kaynağı eşleme: Lambda, DynamoDB veya Kinesis gibi hizmetleri otomatik olarak yoklar ve olaylara göre fonksiyonları çağırır.
  4. Diğer yöntemler: Bunlara API Gateway, AWS SDK’lar veya Amazon EventBridge aracılığıyla zamanlanmış çağrılar dahildir.

Orta Düzey AWS Lambda Mülakat Soruları

Bağımlılıkları Lambda koduyla paketlemek için birkaç seçenek vardır:

  • Doğrudan ekleme: Yorumlamalı diller için bağımlılık dosyalarını fonksiyon kodumuzla birlikte .zip dağıtım paketine koyabiliriz.
  • Lambda katmanları: Derlenmiş diller veya daha büyük bağımlılıklar için Lambda katmanlarını kullanarak ortak bağımlılıkları ayrı paketleyip fonksiyonlar arasında paylaşabiliriz.
  • Konteyner imajları: Bağımlılıkları, Lambda fonksiyon kodu ve özel bir çalışma zamanı ile birlikte konteyner imajlarında paketleyebiliriz.

Lambda fonksiyonlarını optimize etmek için birkaç seçeneğimiz var:

  1. Bellek tahsisi: Doğru bellek boyutunun seçimi maliyet ve performans dengesinde kritik öneme sahiptir. AWS Lambda Power Tuning gibi araçlar en uygun yapılandırmayı bulmaya yardımcı olabilir.
  2. Paket boyutu: Daha küçük fonksiyon paketleri daha hızlı soğuk başlatmalara yol açar (bir Lambda fonksiyonunun ilk çağrıda başlatılması için geçen süre). Gereksiz bağımlılıkları kaldırarak ve kodu sıkıştırarak paket boyutunu en aza indirin.
  3. Lambda SnapStart: Bu özellik, belirli çalışma zamanları için ortamları önceden başlatır ve soğuk başlatma sürelerini önemli ölçüde azaltır.
  4. Hazır eşzamanlılık (provisioned concurrency): Kritik iş yükleri için tutarlı yanıt süreleri sağlamak üzere fonksiyon örneklerini sıcak tutar.
  5. Zaman aşımı ve eşzamanlılık sınırları: Uçup giden (kontrolden çıkan) fonksiyonları önlemek ve istikrarlı bir Lambda ortamı sürdürmek için uygun zaman aşımı ve ayrılmış eşzamanlılık değerleri belirleyin.

Lambda, Amazon CloudWatch’a istek sayısı, gecikme, hata oranları ve daha fazlası dahil olmak üzere metrikleri otomatik olarak gönderir.

CloudWatch Logs’u kullanarak fonksiyon kodumuzun ve Lambda çalışma zamanının ürettiği kayıtlara erişebiliriz.

Dağıtık Lambda uygulamalarının performansını izleme ve sorun giderme için AWS X-Ray kullanabiliriz.

Lambda uzantıları, izleme, gözlemlenebilirlik, güvenlik ve yönetişim araçlarıyla entegre ederek fonksiyonlarımızı geliştirmemizi sağlar.

Uzantılar, tanılama bilgilerini yakalamak veya verileri özel hedeflere göndermek için yürütme ortamında ayrı süreçler olarak çalışabilir.

Örnekler arasında metrikler ve izler için Datadog uzantısı ve dinamik yapılandırma güncellemeleri için AWS AppConfig uzantısı bulunur.

Olay kaynağı eşleme, bir olay kaynağından öğeleri okuyan ve bir fonksiyonu çağıran bir Lambda kaynağıdır.

Amazon DynamoDB akışları, Amazon Kinesis akışları, Amazon MQ kuyrukları, kendi yönettiğiniz Apache Kafka, Amazon SQS kuyrukları ve daha fazlasından öğe işlemek için olay kaynağı eşlemeleri kullanabiliriz.

Lambda, olay kaynaklarından kayıtları toplu halde okumak ve bir fonksiyon çağırmak için bir yoklama mekanizması sağlar.

İleri Düzey AWS Lambda Mülakat Soruları

AWS Lambda, erişimi iki düzeyde kontrol etmek için IAM (Kimlik ve Erişim Yönetimi) kullanır:

  • Kaynak tabanlı ilkeler, hangi AWS hesaplarının, hizmetlerinin ve kaynaklarının fonksiyonu çağırmasına izin verildiğini belirtir.
  • Fonksiyonun yürütme rolü, fonksiyon kodunun hangi AWS hizmetlerine ve kaynaklarına erişebileceğini belirler. En az ayrıcalık ilkesini izleyerek, bu ilkeler fonksiyonun amacını yerine getirmesine izin verirken mümkün olduğunca kısıtlayıcı olmalıdır.

Soğuk başlatmalar, Lambda’nın bir çağrı isteğini işlemek için yeni bir yürütme ortamını başlatması gerektiğinde meydana gelir. Soğuk başlatmaları en aza indirmek ve Lambda fonksiyonumuzun duyarlılığını artırmak için birkaç strateji uygulayabiliriz:

  1. SnapStart kullanın: (Belirli çalışma zamanlarında mevcut) bu özellik, başlatılmış ortamları kalıcı hale getirerek sonraki çağrılar için başlangıç sürelerini önemli ölçüde azaltır.
  2. Hazır eşzamanlılığı etkinleştirin: Hazır durumda başlatılmış ortam havuzu tutarak öngörülebilir iş yükleri için soğuk başlatmaları ortadan kaldırabiliriz.
  3. Paket boyutunu optimize edin: Gereksiz bağımlılıkları kaldırıp kodu optimize ederek fonksiyon paketimizin boyutunu küçültmek, başlatma sürecini hızlandırır.
  4. Dil seçimi: JVM dillerine kıyasla daha hızlı başlangıç süreleriyle bilinen Go veya Rust gibi dilleri tercih etmek, soğuk başlatma gecikmelerini azaltmaya yardımcı olabilir.
  5. Yürütme bağlamı yeniden kullanımı: Lambda fonksiyon kodumuzu başlangıç kurulum mantığından ayrı tutmak, çağrılar arasında yürütme bağlamını yeniden kullanmamıza ve ek yükü azaltmamıza olanak tanır.

Lambda fonksiyonlarını API Gateway üzerinden dışa açarken bazı güvenlik en iyi uygulamaları şunlardır:

  • İstekleri kimlik doğrulamak ve yetkilendirmek için IAM veya Lambda yetkilendiricilerini kullanmak.
  • Kullanıcı yönetimi için Amazon Cognito kullanıcı havuzlarını etkinleştirmek.
  • Kaynak ilkelerini tanımlayarak, kaynak IP’leri gibi istek özelliklerine göre erişime izin vermek veya erişimi reddetmek.
  • Güvenli istemci-sunucu iletişimi için mTLS kurmak.
  • API’leri hedefleyen yaygın web istismarlarına karşı koruma için AWS WAF kullanmak.

Lambda konteyner imajları, fonksiyon kodu ve bağımlılıklarını OCI uyumlu bir konteyner formatında paketlemeye olanak tanır. Konteyner imajları ile .zip dağıtım paketlerini karşılaştıralım:

Özellik

Konteyner İmajları

.zip Dağıtım Paketleri

Çalışma Zamanı Esnekliği

Kendi çalışma zamanımızı getirme (herhangi bir dil veya sürüm)

Lambda’nın ön tanımlı çalışma zamanlarıyla sınırlı

Dağıtım Boyutu

10 GB’a kadar

250 MB’a kadar (sıkıştırılmamış)

Dağıtım & Soğuk Başlatma

Daha yavaş dağıtımlar ve potansiyel olarak daha yüksek soğuk başlatma gecikmesi

Daha hızlı dağıtımlar ve genellikle daha düşük soğuk başlatma gecikmesi

Araçlar & İş Akışı

Mevcut konteyner araçlarımız ve iş akışlarımızla sorunsuz entegrasyon

Bağımlılık yönetimi ve dağıtım için ek araçlar gerektirebilir

En Uygun Olduğu Durumlar

Büyük bağımlılıklara veya özel çalışma zamanı gereksinimlerine sahip uygulamalar

Daha küçük uygulamalar ve Lambda’nın ön tanımlı çalışma zamanlarıyla uyumlu olanlar

Evet, Lambda fonksiyonları AWS SDK’yı kullanarak diğer fonksiyonları doğrudan çağırabilir. Yaygın kullanım alanları arasında fonksiyon orkestrasyonu, birden fazla fonksiyondan sonuçları birleştirme ve olay işleme yayılımı (fan-out) yer alır.

Bir Lambda fonksiyonu başka bir fonksiyonu çağırdığında, çağrılan fonksiyonun kaynak tabanlı ilkesinin, çağıran fonksiyondan çağrıya açıkça izin verecek şekilde erişim tanıması gerekir.

Pratik AWS Lambda Mülakat Soruları

Aşağıdaki adımları izleyerek Lambda ve API Gateway kullanarak basit bir REST API uygulayabiliriz:

  1. Bir Lambda fonksiyonu oluşturun: API Gateway’den bir olay nesnesi olarak girdi alan ve veri ile durum kodlarını içeren bir yanıt nesnesi döndüren bir Lambda fonksiyonu geliştirin.
  2. API Gateway oluşturun: API Gateway’de, API yoluna ve HTTP yöntemine karşılık gelen bir kaynak ve yöntemle yeni bir REST API oluştururuz.
  3. Entegrasyonu yapılandırın: Yöntemin entegrasyon türünü Lambda proxy olarak yapılandırır ve çağrılacak fonksiyonu belirtiriz
  4. API’yi dağıtın: Erişim için herkese açık bir URL uç noktası oluşturmak üzere API’yi dağıtırız.
  5. Yaygın şekilde test edin: Lambda fonksiyonunun istekleri işlediğinden ve uygun yanıtlar döndürdüğünden emin olmak için cURL veya Postman gibi araçları kullanabiliriz.

Aşağıdaki adımları izleyerek bir Lambda fonksiyonunu bir S3 kovasından gelen olayları işleyecek şekilde yapılandırabiliriz:

  1. S3 kovasına erişmek için uygun izinlere sahip bir Lambda fonksiyonu oluştururuz.
  2. S3 konsolunda, kaynak kova üzerinde bir olay bildirimi yapılandırırız.
  3. Bildirim tetiklemek için nesne oluşturma veya silme gibi olay türlerini seçeriz.
  4. Bildirim hedefi olarak Lambda fonksiyonunu belirtiriz.
  5. Yapılandırılan olay türleriyle eşleşen işlemleri S3 kovasında gerçekleştirerek test ederiz.
  6. Lambda fonksiyonunun S3 işleminin ayrıntılarını içeren bir olayla çağrıldığını doğrularız.

Aşağıdaki altı adımı uygulayarak bir Lambda fonksiyonunu bir DynamoDB tablosuna veri yazacak şekilde yapılandırabiliriz:

  1. Uygun bir birincil anahtar ve gerekli ikincil indekslerle bir DynamoDB tablosu oluştururuz.
  2. Lambda fonksiyonu için DynamoDB’ye erişim izinlerine sahip bir IAM rolü oluştururuz.
  3. Bir Lambda fonksiyonu oluşturur ve IAM rolünü iliştiririz.
  4. Tablo adıyla bir istemci örneği oluşturmak için DynamoDB SDK’yı kullanırız.
  5. put_item yöntemini kullanarak, anahtar öznitelikleri ve diğer alanları belirterek tabloya öğeler yazarız.
  6. Fonksiyonu örnek olaylarla test eder ve verilerin doğru yazıldığını doğrulamak için DynamoDB sorgularını kullanırız.

Şu adımları izleyerek zamanlanmış bir Lambda fonksiyonu uygulayabiliriz—şunları yaparız:

  1. İstenilen görevi bir takvime göre gerçekleştirecek bir Lambda fonksiyonu oluşturun.
  2. Amazon EventBridge konsolunu açın ve yeni bir kural oluşturun.
  3. Oran veya cron sözdizimini kullanarak kural için bir zamanlama ifadesi tanımlayın.
  4. Kural için hedef olarak Lambda fonksiyonunu seçin.
  5. Kurali kaydedin ve bir sonraki zamanlanmış olayı bekleyerek test edin.
  6. CloudWatch metrikleri ve günlüklerinde fonksiyonun yürütmesini doğrulayın.

Trafiği bir Lambda fonksiyonunun yeni sürümüne yönlendirmek için şunları yaparız:

  1. Güncellenmiş kodla Lambda fonksiyonunun yeni bir sürümünü yayımlayın.
  2. Eski, kararlı sürümü işaret eden bir takma ad (alias) oluşturun.
  3. Takma adı, ağırlıklar (ör. 90/10) kullanarak trafiği eski ve yeni sürümler arasında bölmek üzere güncelleyin.
  4. Metrikleri izlerken ağırlıkları kademeli olarak ayarlayarak daha fazla trafiği yeni sürüme kaydırın.
  5. Memnun kaldığınızda, takma adı trafiğin %100’ünü yeni sürüme gönderecek şekilde güncelleyin.
  6. Bir sonraki fonksiyon güncellemesi için süreci tekrarlayın ve önceki sürümü yeni kararlı sürüm olarak ele alın.

Sonuç

Bu yaygın AWS Lambda mülakat soruları, adayların temel Lambda kavramlarına, en iyi uygulamalara ve pratik kullanım kalıplarına ilişkin anlayışlarını sınar.

Bu kavramları pekiştirmek için Lambda uygulamaları geliştirip işletme konusunda uygulamalı deneyimin paha biçilmez olduğunu unutmamak önemlidir.

Daha fazlasını öğrenmek için şu iki kursa göz atın:


Zoumana Keita 's photo
Author
Zoumana Keita
LinkedIn
Twitter

Bilgisini paylaşmaktan ve başkalarına katkı sunmaktan keyif alan, çok yönlü bir veri bilimci olan Zoumana, YouTube’da içerik üretiyor ve Medium’da önde gelen teknoloji yazarları arasında yer alıyor. Konuşmaktan, kod yazmaktan ve öğretmekten büyük zevk alıyor. Zoumana’nın iki yüksek lisans derecesi bulunuyor: İlki Fransa, Paris’te Makine Öğrenmesi odaklı Bilgisayar Bilimleri; ikincisi ise ABD’de Texas Tech University’den Veri Bilimi. Kariyerine Fransa’da Groupe OPEN’da Yazılım Geliştirici olarak başladı; ardından IBM’de Makine Öğrenmesi Danışmanı olarak çalıştı ve sigorta şirketleri için uçtan uca yapay zeka çözümleri geliştirdi. Paris ve Montreal merkezli ilk Sürdürülebilir YZ girişimi olan Axionable’a katıldı. Burada Veri Bilimci olarak görev yaptı ve çoğunlukla NLP kullanım örnekleri olmak üzere, Fransa, Montreal, Singapur ve İsviçre’den müşteriler için YZ ürünleri hayata geçirdi. Ayrıca zamanının %5’ini Araştırma ve Geliştirme’ye ayırdı. Hâlihazırda IFC – Dünya Bankası Grubu’nda Kıdemli Veri Bilimci olarak çalışmaktadır.

Konular
AWS
Kariyer Hizmetleri

Bu kurslarla AWS hakkında daha fazlasını öğrenin!

Kurs

AWS Kavramları

2 sa
53.5K
Amazon Web Services (AWS) dünyasını keşfedin ve neden bulut bilişimin öncüsü olduğunu anlayın.
Ayrıntıları GörüntüleKursa Başla

Ücretsiz Hesabınızı Oluşturun

Alıştırma and program your progress.

Google Ile Devam Edin
Devam ederek Kullanım Şartlarımızı, Gizlilik Politikamızı ve verilerinizin ABD’de saklandığını kabul etmiş olursunuz.
Devamını Gör
İlgili

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını Gör