[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:devops-cloud\u002Fdeployment-release-strategies":4,"config":256},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":151,"samples":171},"devops-cloud","DevOps \u002F Cloud","","deployment-release-strategies","Deployment Release Strategies","tr",75,3375,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109,112,115,118,121,124,127,130,133,136,139,142,145,148],{"key":19,"name":20,"count":11},"aws-compute-ec2-lambda","Aws Compute Ec2 Lambda",{"key":22,"name":23,"count":11},"aws-databases-rds-dynamodb","Aws Databases Rds Dynamodb",{"key":25,"name":26,"count":11},"aws-iam-security","Aws Iam Security",{"key":28,"name":29,"count":11},"aws-messaging-eventing","Aws Messaging Eventing",{"key":31,"name":32,"count":11},"aws-networking-vpc","Aws Networking Vpc",{"key":34,"name":35,"count":11},"aws-storage-s3-ebs","Aws Storage S3 Ebs",{"key":37,"name":38,"count":11},"azure-compute-vm-appservice","Azure Compute Vm Appservice",{"key":40,"name":41,"count":11},"azure-databases-sql-cosmosdb","Azure Databases Sql Cosmosdb",{"key":43,"name":44,"count":11},"azure-iam-security","Azure Iam Security",{"key":46,"name":47,"count":11},"azure-messaging-eventing","Azure Messaging Eventing",{"key":49,"name":50,"count":11},"azure-networking-vnet","Azure Networking Vnet",{"key":52,"name":53,"count":11},"azure-storage-blob-managed-disk","Azure Storage Blob Managed Disk",{"key":55,"name":56,"count":11},"ci-cd-pipelines","Ci Cd Pipelines",{"key":58,"name":59,"count":11},"cloud-architecture-scaling","Cloud Architecture Scaling",{"key":61,"name":62,"count":11},"containers-orchestration","Containers Orchestration",{"key":8,"name":9,"count":11},{"key":65,"name":66,"count":11},"gcp-compute-gce-cloudrun","Gcp Compute Gce Cloudrun",{"key":68,"name":69,"count":11},"gcp-databases-cloudsql-spanner-firestore","Gcp Databases Cloudsql Spanner Firestore",{"key":71,"name":72,"count":11},"gcp-iam-security","Gcp Iam Security",{"key":74,"name":75,"count":11},"gcp-messaging-eventing","Gcp Messaging Eventing",{"key":77,"name":78,"count":11},"gcp-networking-vpc","Gcp Networking Vpc",{"key":80,"name":81,"count":11},"gcp-storage-gcs-persistent-disk","Gcp Storage Gcs Persistent Disk",{"key":83,"name":84,"count":11},"infrastructure-as-code","Infrastructure As Code",{"key":86,"name":87,"count":11},"k8s-config-secrets","K8s Config Secrets",{"key":89,"name":90,"count":11},"k8s-observability-troubleshooting","K8s Observability Troubleshooting",{"key":92,"name":93,"count":11},"k8s-scheduling-resources","K8s Scheduling Resources",{"key":95,"name":96,"count":11},"k8s-services-networking","K8s Services Networking",{"key":98,"name":99,"count":11},"k8s-storage","K8s Storage",{"key":101,"name":102,"count":11},"k8s-workloads","K8s Workloads",{"key":104,"name":105,"count":11},"linux-filesystem-permissions-links","Linux Filesystem Permissions Links",{"key":107,"name":108,"count":11},"linux-networking-tools-troubleshooting","Linux Networking Tools Troubleshooting",{"key":110,"name":111,"count":11},"linux-performance-monitoring-resource-limits","Linux Performance Monitoring Resource Limits",{"key":113,"name":114,"count":11},"linux-process-management-signals","Linux Process Management Signals",{"key":116,"name":117,"count":11},"linux-shell-scripting-ops-automation","Linux Shell Scripting Ops Automation",{"key":119,"name":120,"count":11},"linux-systemd-service-management","Linux Systemd Service Management",{"key":122,"name":123,"count":11},"networking-dns-loadbalancing","Networking Dns Loadbalancing",{"key":125,"name":126,"count":11},"observability-monitoring","Observability Monitoring",{"key":128,"name":129,"count":11},"reliability-incident-sre","Reliability Incident Sre",{"key":131,"name":132,"count":11},"security-iam-secrets","Security Iam Secrets",{"key":134,"name":135,"count":11},"terraform-hcl-language-expressions","Terraform Hcl Language Expressions",{"key":137,"name":138,"count":11},"terraform-modules-workspaces","Terraform Modules Workspaces",{"key":140,"name":141,"count":11},"terraform-plan-apply-drift-import","Terraform Plan Apply Drift Import",{"key":143,"name":144,"count":11},"terraform-providers-lifecycle-provisioners","Terraform Providers Lifecycle Provisioners",{"key":146,"name":147,"count":11},"terraform-state-backend-locking","Terraform State Backend Locking",{"key":149,"name":150,"count":11},"terraform-testing-policy-cicd","Terraform Testing Policy Cicd",[152,156,159,162,165,168],{"key":153,"name":154,"count":155},"aws","AWS",450,{"key":157,"name":158,"count":155},"azure","Azure",{"key":160,"name":161,"count":155},"gcp","GCP",{"key":163,"name":164,"count":155},"kubernetes","Kubernetes",{"key":166,"name":167,"count":155},"linux","Linux",{"key":169,"name":170,"count":155},"terraform","Terraform",[172,190,203,216,230,243],{"id":173,"topic":9,"difficulty":174,"body":175,"options":176,"correct_key":178,"explanation":189},"019f56bb-b934-7a18-b6b9-603980afd0dc",1,"Yazılım teslimatı bağlamında bir 'deployment' en iyi şekilde nasıl tanımlanır?",[177,180,183,186],{"key":178,"text":179},"a","Belirli bir uygulama sürümünün hedef bir ortamda çalışır ve erişilebilir hale getirilmesi süreci",{"key":181,"text":182},"b","Kaynak kod değişikliklerini repository'ye yazıp commit'leme süreci",{"key":184,"text":185},"c","Geliştirme başlamadan önce veritabanı şemasının tasarlanması süreci",{"key":187,"text":188},"d","Yeni bir özellik hiç yayınlanmadan önce onu tüm boyutlarıyla kapsamlı şekilde kapsayan otomatik test yazma ve bakımını yapma süreci","Deployment, build edilmiş bir artifact'ın bir ortamda (staging, production vb.) çalışır hale getirilmesidir. Kod commit'leme (b) source control faaliyetidir, deployment değildir. Test yazmak (d) geliştirme sürecinin parçasıdır ama başlı başına bir deployment adımı değildir.",{"id":191,"topic":9,"difficulty":174,"body":192,"options":193,"correct_key":181,"explanation":202},"019f56bb-b935-72fe-81ae-c401cdb06639","Temel bir rolling update deployment stratejisinde ne olur?",[194,196,198,200],{"key":178,"text":195},"Tüm instance'lar yeni sürümle aynı anda değiştirilir",{"key":181,"text":197},"Yeni sürümü çalıştıran instance'lar, eskilerinin yerini kademeli olarak, birkaçı birden alacak şekilde alır",{"key":184,"text":199},"Yeni sürüm ayrı bir ortama deploy edilir ve trafik tek seferde değiştirilir",{"key":187,"text":201},"Gerçek kullanıcı trafiğinin küçük bir yüzdesi test etmek için yeni sürüme yönlendirilir","Rolling update, instance'ları kademeli olarak değiştirir; bu sırada eski ve yeni sürüm bir süre birlikte trafik karşılar. (a) recreate\u002Fbig-bang deployment'ı, (c) blue-green'i, (d) ise canary'i tanımlar.",{"id":204,"topic":9,"difficulty":174,"body":205,"options":206,"correct_key":184,"explanation":215},"019f56bb-b935-7a5f-808f-c03cf5a23fb3","Bir blue-green deployment'ta temel fikir nedir?",[207,209,211,213],{"key":178,"text":208},"Yeni sürüm kademeli olarak daha fazla trafik alırken eski sürüm geri kalanına hizmet vermeye devam eder",{"key":181,"text":210},"Önce eski instance'lar kapatılır, ardından yeni instance'lar başlatılır",{"key":184,"text":212},"İki özdeş production ortamı bulunur; ortam hazır olduğunda trafik eski (blue) ortamdan yeni (green) ortama geçirilir",{"key":187,"text":214},"Feature toggle'lar, herhangi bir ortam geçişinden bağımsız olarak hangi kullanıcıların yeni kod yollarını göreceğini kontrol eder","Blue-green, iki tam ortamı canlı tutar ve tek seferlik bir cutover geçişi yapar. (a) canary'i, (b) recreate'i, (d) ise ortam geçişiyle ilgisi olmayan feature flagging'i tanımlar.",{"id":217,"topic":9,"difficulty":218,"body":219,"options":220,"correct_key":187,"explanation":229},"019f56bb-b936-743c-bcfa-c14d85664455",2,"Bir ekip release riskini azaltmak için web servisinde blue-green deployment kullanmaya başlıyor. Bu ekibin beklemesi gereken gerçekçi bir trade-off nedir?",[221,223,225,227],{"key":178,"text":222},"Go-live öncesinde yeni sürümün otomatik testini imkansız hale getirir",{"key":181,"text":224},"Rolling update'e kıyasla toplam deployment süresini her zaman artırır",{"key":184,"text":226},"Rollback planına duyulan ihtiyacı tamamen ortadan kaldırır",{"key":187,"text":228},"Cutover penceresi sırasında genellikle iki katı altyapı kapasitesi çalıştırmayı gerektirir","Blue-green, en azından geçici olarak iki tam ortamın aynı anda çalışmasını gerektirir, bu da kaynak maliyetini ikiye katlar. (a) yanlış çünkü boşta olan ortam cutover öncesinde test edilebilir. (b) her zaman doğru değildir; geçişin kendisi hızlı olabilir. (c) rollback (geri geçiş) hâlâ gereklidir ve faydalıdır.",{"id":231,"topic":9,"difficulty":174,"body":232,"options":233,"correct_key":178,"explanation":242},"019f56bb-b936-79af-a24e-fb84b5f04b2b","Bir canary deployment'ı ne tanımlar?",[234,236,238,240],{"key":178,"text":235},"Tam rollout öncesinde kullanıcıların veya trafiğin küçük bir alt kümesi önce yeni sürüme yönlendirilir",{"key":181,"text":237},"Yeni ve eski sürüm tamamen ayrı ortamlarda çalışır ve tek seferlik trafik geçişi yapılır",{"key":184,"text":239},"Tüm sunucular aynı anda yeni sürüme güncellenir",{"key":187,"text":241},"Yeni sunucular hazırlanmadan önce eski sunucular sonlandırılır","Canary, sorunların erken yakalanabilmesi için yeni sürümü önce sınırlı bir trafik dilimine açar. (b) blue-green'i, (c) ve (d) ise recreate\u002Fbig-bang deployment'ın varyantlarını tanımlar.",{"id":244,"topic":9,"difficulty":218,"body":245,"options":246,"correct_key":181,"explanation":255},"019f56bb-b936-7eb5-8d78-cb6ef89a60a5","Bir ekip, yüksek trafikli bir servis için regresyonları erken yakalamak amacıyla canary deployment kullanmak istiyor. Canary'nin etkili olması için ekibin en çok hangi operasyonel yeteneğe ihtiyacı vardır?",[247,249,251,253],{"key":178,"text":248},"İlkini her konfigürasyon detayında birebir yansıtan, tamamen izole ikinci bir production ortamı",{"key":181,"text":250},"Her sürüm için kritik metrikleri izleme ve canary ile baseline davranışını karşılaştırma yeteneği",{"key":184,"text":252},"Yalnızca backend geliştiricilerin erişebildiği bir feature flag sistemi",{"key":187,"text":254},"Canary'yi her zaman tam olarak bir saat sonra promote eden sabit bir zamanlama","Sürüm bazlı izleme ve karşılaştırma olmadan ekip canary'nin gerçekten güvenli davranıp davranmadığını anlayamaz. (a) bir blue-green ihtiyacını tanımlar, canary gereksinimi değildir. (c) ilgisiz bir kısıtlamadır. (d) gerçek sinyalleri göz ardı edip sabit bir zamanlayıcıya güvenmek yaygın bir junior hatasıdır.",{"fields":257,"seniorities":429,"interview_shapes":430,"locales":435,"oauth":437,"question_count":440,"coach_enabled":441,"jd_match_enabled":441},[258,283,303,320,330,343,362,381,403,410,416,423],{"key":259,"name_tr":260,"name_en":260,"sort":174,"specializations":261},"backend","Backend",[262,265,268,271,274,277,280],{"key":263,"name":264,"field":259},"general","Genel",{"key":266,"name":267,"field":259},"go","Go",{"key":269,"name":270,"field":259},"python","Python",{"key":272,"name":273,"field":259},"java","Java",{"key":275,"name":276,"field":259},"csharp","C#\u002F.NET",{"key":278,"name":279,"field":259},"nodejs","Node.js",{"key":281,"name":282,"field":259},"php","PHP",{"key":284,"name_tr":285,"name_en":285,"sort":218,"specializations":286},"frontend","Frontend",[287,288,291,294,297,300],{"key":263,"name":264,"field":284},{"key":289,"name":290,"field":284},"javascript","JavaScript",{"key":292,"name":293,"field":284},"typescript","TypeScript",{"key":295,"name":296,"field":284},"react","React",{"key":298,"name":299,"field":284},"vue","Vue",{"key":301,"name":302,"field":284},"angular","Angular",{"key":304,"name_tr":305,"name_en":305,"sort":306,"specializations":307},"fullstack","Fullstack",3,[308,309,310,311,312,313,314,315,316,317,318,319],{"key":263,"name":264,"field":304},{"key":266,"name":267,"field":259},{"key":269,"name":270,"field":259},{"key":272,"name":273,"field":259},{"key":275,"name":276,"field":259},{"key":278,"name":279,"field":259},{"key":281,"name":282,"field":259},{"key":289,"name":290,"field":284},{"key":292,"name":293,"field":284},{"key":295,"name":296,"field":284},{"key":298,"name":299,"field":284},{"key":301,"name":302,"field":284},{"key":5,"name_tr":6,"name_en":6,"sort":321,"specializations":322},4,[323,324,325,326,327,328,329],{"key":263,"name":264,"field":5},{"key":153,"name":154,"field":5},{"key":160,"name":161,"field":5},{"key":157,"name":158,"field":5},{"key":163,"name":164,"field":5},{"key":169,"name":170,"field":5},{"key":166,"name":167,"field":5},{"key":331,"name_tr":332,"name_en":332,"sort":333,"specializations":334},"ai-engineer","AI Engineer",5,[335,336,337,340],{"key":263,"name":264,"field":331},{"key":269,"name":270,"field":331},{"key":338,"name":339,"field":331},"llm-rag","LLM\u002FRAG",{"key":341,"name":342,"field":331},"mlops","MLOps",{"key":344,"name_tr":345,"name_en":346,"sort":347,"specializations":348},"database","Veritabanı","Database",6,[349,350,353,356,359],{"key":263,"name":264,"field":344},{"key":351,"name":352,"field":344},"postgresql","PostgreSQL",{"key":354,"name":355,"field":344},"mysql","MySQL",{"key":357,"name":358,"field":344},"mongodb","MongoDB",{"key":360,"name":361,"field":344},"redis","Redis",{"key":363,"name_tr":364,"name_en":365,"sort":366,"specializations":367},"mobile","Mobil","Mobile",7,[368,369,372,375,378],{"key":263,"name":264,"field":363},{"key":370,"name":371,"field":363},"ios-swift","iOS (Swift)",{"key":373,"name":374,"field":363},"android-kotlin","Android (Kotlin)",{"key":376,"name":377,"field":363},"flutter","Flutter",{"key":379,"name":380,"field":363},"react-native","React Native",{"key":382,"name_tr":383,"name_en":384,"sort":385,"specializations":386},"security","Güvenlik","Security",8,[387,388,391,394,397,400],{"key":263,"name":264,"field":382},{"key":389,"name":390,"field":382},"appsec","AppSec",{"key":392,"name":393,"field":382},"offensive-pentest","Offensive \u002F Pentest",{"key":395,"name":396,"field":382},"cloud-security","Cloud Security",{"key":398,"name":399,"field":382},"devsecops","DevSecOps",{"key":401,"name":402,"field":382},"blue-team-incident","Blue Team \u002F Incident",{"key":404,"name_tr":405,"name_en":406,"sort":407,"specializations":408},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[409],{"key":263,"name":264,"field":404},{"key":411,"name_tr":412,"name_en":412,"sort":413,"specializations":414},"data-engineer","Data Engineer",10,[415],{"key":263,"name":264,"field":411},{"key":417,"name_tr":418,"name_en":419,"sort":420,"specializations":421},"game-dev","Oyun Geliştirme","Game Development",11,[422],{"key":263,"name":264,"field":417},{"key":424,"name_tr":425,"name_en":425,"sort":426,"specializations":427},"ml-engineer","ML Engineer",12,[428],{"key":263,"name":264,"field":424},[14,15,16],{"junior":431,"mid":433,"senior":434},{"questions":432,"median_sec":3},20,{"questions":432,"median_sec":3},{"questions":432,"median_sec":3},[10,436],"en",[438,439],"google","github",21750,true]