[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:ml-engineer\u002Fml-deployment-serving":4,"config":127},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":40,"samples":41},"ml-engineer","ML Engineer","","ml-deployment-serving","Ml Deployment Serving","tr",75,600,[14,15,16],"junior","mid","senior",[18,21,22,25,28,31,34,37],{"key":19,"name":20,"count":11},"ml-data-preparation","Ml Data Preparation",{"key":8,"name":9,"count":11},{"key":23,"name":24,"count":11},"ml-experimentation-reproducibility","Ml Experimentation Reproducibility",{"key":26,"name":27,"count":11},"ml-model-selection-tuning","Ml Model Selection Tuning",{"key":29,"name":30,"count":11},"ml-model-training-evaluation","Ml Model Training Evaluation",{"key":32,"name":33,"count":11},"ml-monitoring-drift","Ml Monitoring Drift",{"key":35,"name":36,"count":11},"ml-problem-framing","Ml Problem Framing",{"key":38,"name":39,"count":11},"ml-scaling-performance","Ml Scaling Performance",[],[42,60,74,88,101,114],{"id":43,"topic":9,"difficulty":44,"body":45,"options":46,"correct_key":51,"explanation":59},"019f6b80-b777-7e72-9d85-bdbce5e3c526",1,"Batch inference ile online (gerçek zamanlı) inference arasındaki temel fark nedir?",[47,50,53,56],{"key":48,"text":49},"a","Batch inference her zaman online inference'tan daha doğru tahminler üretir",{"key":51,"text":52},"b","Girdileri bir zamanlamayla işlerken, online inference isteğe anında yanıt verir",{"key":54,"text":55},"c","Online inference yalnızca görüntü verisi için kullanılabilirken batch inference metin verisi için kullanılır",{"key":57,"text":58},"d","Batch inference hiçbir hesaplama kaynağı gerektirmez çünkü tahminler sonsuza kadar önbelleklenir","Batch inference, büyük bir girdi kümesini genellikle tekrarlayan bir zamanlamayla birlikte skorlar ve sonuçlar daha sonra kullanılmak üzere saklanır. Online inference ise gelen her isteğe, genellikle bir gecikme gereksinimiyle, senkron biçimde tahmin döner.",{"id":61,"topic":9,"difficulty":62,"body":63,"options":64,"correct_key":48,"explanation":73},"019f6b80-b778-7550-8219-4e6eb1a4bfc2",2,"Bir ekip, tüm kullanıcılar için aynı anda gece boyunca hesaplanan, haftada bir kez gönderilen kişiselleştirilmiş bir e-posta özeti üretiyor. Bu ihtiyaca en uygun serving yaklaşımı hangisidir?",[65,67,69,71],{"key":48,"text":66},"Batch inference, çünkü tahminlere anlık değil sabit bir zamanlamada ihtiyaç var",{"key":51,"text":68},"Online inference, çünkü her kullanıcı istek attığı anda milisaniyeler içinde tahmin almalı",{"key":54,"text":70},"Shadow deployment, çünkü amaç iki modeli hiçbirini canlıya almadan karşılaştırmak",{"key":57,"text":72},"Canary deployment, çünkü tahminleri yalnızca trafiğin küçük bir kısmı görmeli","Burada canlı bir isteğe saniyenin altında yanıt verme gereksinimi yok; tahminlerin yalnızca özet gönderilmeden önce hazır olması yeterli. Bu zamanlanmış, toplu doğa batch inference ile gerçek zamanlı serving'den çok daha iyi örtüşür.",{"id":75,"topic":9,"difficulty":76,"body":77,"options":78,"correct_key":54,"explanation":87},"019f6b80-b778-7b96-b7db-11baab359ac0",3,"Bir ödeme sistemi her işlemi tamamlanmadan önce, birkaç yüz milisaniye içinde onaylamalı veya reddetmelidir. Burada batch yerine online inference'ın gerekli olmasının nedeni nedir?",[79,81,83,85],{"key":48,"text":80},"Çünkü online inference her veri kümesinde batch inference'tan daha yüksek doğruluk garanti eder",{"key":51,"text":82},"Çünkü batch inference hiçbir kullanım durumunda günde birden fazla çalıştırılamaz",{"key":54,"text":84},"Çünkü karar, işlem devam edebilmeden önce, o işleme özel ve senkron biçimde gerekiyor",{"key":57,"text":86},"Çünkü batch inference sayısal girdi özelliklerini hiç desteklemez","Karar, şu anda gerçekleşen belirli bir işlemi kilitliyor; bu yüzden o tek istek için senkron biçimde üretilmelidir. İşlem henüz var olmadığından yanıtı önceden hesaplamak mümkün değildir.",{"id":89,"topic":9,"difficulty":44,"body":90,"options":91,"correct_key":57,"explanation":100},"019f6b80-b779-726d-9af3-1b951ad75d47","Ekipler dağıtılan her eğitilmiş modele neden bir versiyon tanımlayıcısı atar?",[92,94,96,98],{"key":48,"text":93},"Versiyon tanımlayıcıları modelin bir sonraki çalıştırmada daha hızlı eğitilmesini sağlar",{"key":51,"text":95},"Versiyon tanımlayıcıları herhangi bir modelin yeniden eğitilme ihtiyacını tamamen ortadan kaldırır",{"key":54,"text":97},"Versiyon tanımlayıcıları üretimde bulunan hataları otomatik olarak düzeltir",{"key":57,"text":99},"Sunulan artefaktı tanımlar ve gerekirse geri dönüşü sağlar","Model versiyonlama, dağıtılan bir artefaktı onu üreten tam eğitim çalışmasına, veriye ve konfigürasyona bağlar; davranışı izlenebilir kılan ve bilinen-iyi bir versiyona geri dönmeyi mümkün kılan şey de budur.",{"id":102,"topic":9,"difficulty":62,"body":103,"options":104,"correct_key":48,"explanation":113},"019f6b80-b779-77f5-8364-d3fa730fd93d","Yeni dağıtılan bir model üretimde açıkça yanlış tahminler üretmeye başlıyor. Nöbetçi mühendis önceki davranışı hızlıca geri getirmek istiyor. Bunu mümkün kılan nedir?",[105,107,109,111],{"key":48,"text":106},"Önceki versiyon dağıtılabilir bir artefakt olarak saklanmıştı, ona geri dönülebilir",{"key":51,"text":108},"Yeni model saniyeler içinde sıfırdan yeniden eğitilerek sorun çözülebilir",{"key":54,"text":110},"Tahminler olağandışı göründüğünde üretim trafiği kendiliğinden eski haline döner",{"key":57,"text":112},"Online inference sistemleri ilk dağıtıldıktan sonra değiştirilemez","Önceki davranışı hızlıca geri getirmek, daha önceki versiyonun hazır bir artefakt olarak saklanmış olmasına bağlıdır; bu yoksa geri dönülecek somut bir şey kalmaz ve kurtarma yavaş, sıfırdan bir yeniden eğitim döngüsü gerektirir.",{"id":115,"topic":9,"difficulty":62,"body":116,"options":117,"correct_key":51,"explanation":126},"019f6b80-b779-7e28-ac25-c63fc039ad87","Bir ekip, dağıtılan her modelin yanında şu manifesti kaydediyor:\n```\nmodel_version: 14\ntraining_data_snapshot: 2026-05-01\nhyperparameters_hash: 9f2a1c\ncode_commit: a83e771\n```\nBu alanları birlikte kaydetmenin temel amacı nedir?",[118,120,122,124],{"key":48,"text":119},"Serving sisteminin bu model için otomatik olarak en ucuz donanımı seçmesini sağlamak",{"key":51,"text":121},"Bu modelin eğitim koşullarını yeniden üretilebilir ve izlenebilir kılmak",{"key":54,"text":123},"Eğitim bitince eğitim verisinin hemen silinmesine izin vermek",{"key":57,"text":125},"Ek bir eğitim yapmadan modelin tahmin doğruluğunu artırmak","Veri anlık görüntüsünü, hiperparametreleri ve kod commit'ini birlikte kaydetmek, belirli bir model versiyonunu yeniden üretmek veya denetlemek için gereken her şeyi yakalar; bir versiyonlama manifestinin temel amacı da budur.",{"fields":128,"seniorities":311,"interview_shapes":312,"locales":317,"oauth":319,"question_count":322,"coach_enabled":323,"jd_match_enabled":323},[129,154,174,190,214,227,246,265,287,294,300,307],{"key":130,"name_tr":131,"name_en":131,"sort":44,"specializations":132},"backend","Backend",[133,136,139,142,145,148,151],{"key":134,"name":135,"field":130},"general","Genel",{"key":137,"name":138,"field":130},"go","Go",{"key":140,"name":141,"field":130},"python","Python",{"key":143,"name":144,"field":130},"java","Java",{"key":146,"name":147,"field":130},"csharp","C#\u002F.NET",{"key":149,"name":150,"field":130},"nodejs","Node.js",{"key":152,"name":153,"field":130},"php","PHP",{"key":155,"name_tr":156,"name_en":156,"sort":62,"specializations":157},"frontend","Frontend",[158,159,162,165,168,171],{"key":134,"name":135,"field":155},{"key":160,"name":161,"field":155},"javascript","JavaScript",{"key":163,"name":164,"field":155},"typescript","TypeScript",{"key":166,"name":167,"field":155},"react","React",{"key":169,"name":170,"field":155},"vue","Vue",{"key":172,"name":173,"field":155},"angular","Angular",{"key":175,"name_tr":176,"name_en":176,"sort":76,"specializations":177},"fullstack","Fullstack",[178,179,180,181,182,183,184,185,186,187,188,189],{"key":134,"name":135,"field":175},{"key":137,"name":138,"field":130},{"key":140,"name":141,"field":130},{"key":143,"name":144,"field":130},{"key":146,"name":147,"field":130},{"key":149,"name":150,"field":130},{"key":152,"name":153,"field":130},{"key":160,"name":161,"field":155},{"key":163,"name":164,"field":155},{"key":166,"name":167,"field":155},{"key":169,"name":170,"field":155},{"key":172,"name":173,"field":155},{"key":191,"name_tr":192,"name_en":192,"sort":193,"specializations":194},"devops-cloud","DevOps \u002F Cloud",4,[195,196,199,202,205,208,211],{"key":134,"name":135,"field":191},{"key":197,"name":198,"field":191},"aws","AWS",{"key":200,"name":201,"field":191},"gcp","GCP",{"key":203,"name":204,"field":191},"azure","Azure",{"key":206,"name":207,"field":191},"kubernetes","Kubernetes",{"key":209,"name":210,"field":191},"terraform","Terraform",{"key":212,"name":213,"field":191},"linux","Linux",{"key":215,"name_tr":216,"name_en":216,"sort":217,"specializations":218},"ai-engineer","AI Engineer",5,[219,220,221,224],{"key":134,"name":135,"field":215},{"key":140,"name":141,"field":215},{"key":222,"name":223,"field":215},"llm-rag","LLM\u002FRAG",{"key":225,"name":226,"field":215},"mlops","MLOps",{"key":228,"name_tr":229,"name_en":230,"sort":231,"specializations":232},"database","Veritabanı","Database",6,[233,234,237,240,243],{"key":134,"name":135,"field":228},{"key":235,"name":236,"field":228},"postgresql","PostgreSQL",{"key":238,"name":239,"field":228},"mysql","MySQL",{"key":241,"name":242,"field":228},"mongodb","MongoDB",{"key":244,"name":245,"field":228},"redis","Redis",{"key":247,"name_tr":248,"name_en":249,"sort":250,"specializations":251},"mobile","Mobil","Mobile",7,[252,253,256,259,262],{"key":134,"name":135,"field":247},{"key":254,"name":255,"field":247},"ios-swift","iOS (Swift)",{"key":257,"name":258,"field":247},"android-kotlin","Android (Kotlin)",{"key":260,"name":261,"field":247},"flutter","Flutter",{"key":263,"name":264,"field":247},"react-native","React Native",{"key":266,"name_tr":267,"name_en":268,"sort":269,"specializations":270},"security","Güvenlik","Security",8,[271,272,275,278,281,284],{"key":134,"name":135,"field":266},{"key":273,"name":274,"field":266},"appsec","AppSec",{"key":276,"name":277,"field":266},"offensive-pentest","Offensive \u002F Pentest",{"key":279,"name":280,"field":266},"cloud-security","Cloud Security",{"key":282,"name":283,"field":266},"devsecops","DevSecOps",{"key":285,"name":286,"field":266},"blue-team-incident","Blue Team \u002F Incident",{"key":288,"name_tr":289,"name_en":290,"sort":291,"specializations":292},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[293],{"key":134,"name":135,"field":288},{"key":295,"name_tr":296,"name_en":296,"sort":297,"specializations":298},"data-engineer","Data Engineer",10,[299],{"key":134,"name":135,"field":295},{"key":301,"name_tr":302,"name_en":303,"sort":304,"specializations":305},"game-dev","Oyun Geliştirme","Game Development",11,[306],{"key":134,"name":135,"field":301},{"key":5,"name_tr":6,"name_en":6,"sort":308,"specializations":309},12,[310],{"key":134,"name":135,"field":5},[14,15,16],{"junior":313,"mid":315,"senior":316},{"questions":314,"median_sec":3},20,{"questions":314,"median_sec":3},{"questions":314,"median_sec":3},[10,318],"en",[320,321],"google","github",21750,true]