[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:data-engineer\u002Fdata-quality-validation":4,"config":126},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},"data-engineer","Data Engineer","","data-quality-validation","Data Quality Validation","en",75,600,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,37],{"key":19,"name":20,"count":11},"data-governance-lineage","Data Governance Lineage",{"key":22,"name":23,"count":11},"data-modeling-warehousing","Data Modeling Warehousing",{"key":25,"name":26,"count":11},"data-partitioning-scaling","Data Partitioning Scaling",{"key":28,"name":29,"count":11},"data-pipeline-design","Data Pipeline Design",{"key":31,"name":32,"count":11},"data-pipeline-orchestration","Data Pipeline Orchestration",{"key":34,"name":35,"count":11},"data-pipeline-reliability","Data Pipeline Reliability",{"key":8,"name":9,"count":11},{"key":38,"name":39,"count":11},"streaming-fundamentals","Streaming Fundamentals",[],[42,60,74,87,100,113],{"id":43,"topic":9,"difficulty":44,"body":45,"options":46,"correct_key":54,"explanation":59},"019f6a40-d73c-78e2-b116-82c0e930b63a",1,"What does \"schema validation\" mean in a data pipeline?",[47,50,53,56],{"key":48,"text":49},"a","Encrypting every column before it is written to storage",{"key":51,"text":52},"b","Compressing records to reduce the storage footprint of a table",{"key":54,"text":55},"c","Checking that incoming data matches the expected structure",{"key":57,"text":58},"d","Renaming columns automatically to match a naming convention","Schema validation checks that incoming records conform to an expected structure — field names present, types correct, required fields non-missing — before the data is trusted downstream. It is a structural check, not encryption, compression, or renaming.",{"id":61,"topic":9,"difficulty":62,"body":63,"options":64,"correct_key":48,"explanation":73},"019f6a40-d73e-71f7-a5bc-84eb655e019e",2,"At which point in a pipeline is schema validation most useful?",[65,67,69,71],{"key":48,"text":66},"As early as possible, right when data enters the pipeline",{"key":51,"text":68},"Only at the very end, right before a dashboard reads the final table",{"key":54,"text":70},"Only inside the analytics team's reporting queries",{"key":57,"text":72},"Only once a year during an annual data audit","Validating as close to ingestion as possible prevents malformed data from propagating through every downstream stage, which is cheaper to fix than catching the problem after many transformations have already consumed the bad data.",{"id":75,"topic":9,"difficulty":44,"body":76,"options":77,"correct_key":51,"explanation":86},"019f6a40-d73e-7d77-9f4c-70b811fbac40","What is a \"data contract\" between a data producer and a data consumer?",[78,80,82,84],{"key":48,"text":79},"A legal document signed once a year covering all company data",{"key":51,"text":81},"An explicit agreement about the shape and guarantees of the data a producer delivers",{"key":54,"text":83},"A physical storage quota assigned to each team's database",{"key":57,"text":85},"A billing agreement about cloud infrastructure costs","A data contract is an explicit, often machine-checkable agreement between the team producing data and the team(s) consuming it, covering schema, semantics, and delivery guarantees — so changes on the producer side don't silently break consumers.",{"id":88,"topic":9,"difficulty":62,"body":89,"options":90,"correct_key":57,"explanation":99},"019f6a40-d73f-7574-b885-6bb88a511521","What main problem does a data contract help prevent?",[91,93,95,97],{"key":48,"text":92},"Slow query performance caused by missing indexes",{"key":51,"text":94},"High cloud storage bills from keeping too much historical data",{"key":54,"text":96},"Network latency between two data centers",{"key":57,"text":98},"A producer silently changing data shape or meaning","The core value of a data contract is catching producer\u002Fconsumer breakage early: if the producer changes a field's type, meaning, or removes a field, the contract makes that visible instead of letting it silently corrupt downstream consumers.",{"id":101,"topic":9,"difficulty":44,"body":102,"options":103,"correct_key":48,"explanation":112},"019f6a40-d73f-7aec-9865-9968d0d0bae9","What does a \"null check\" on a column look for?",[104,106,108,110],{"key":48,"text":105},"Whether values are missing in a required column",{"key":51,"text":107},"Whether the column name contains the literal word \"null\"",{"key":54,"text":109},"Whether the table has zero rows",{"key":57,"text":111},"Whether the column's data type is a string","A null check verifies that required fields are actually populated, flagging rows where a value is unexpectedly missing — a basic completeness safeguard.",{"id":114,"topic":9,"difficulty":62,"body":115,"options":116,"correct_key":54,"explanation":125},"019f6a40-d740-7671-a510-ea2223e2b372","What does a \"duplicate check\" typically detect?",[117,119,121,123],{"key":48,"text":118},"Rows where a numeric column contains a negative value",{"key":51,"text":120},"Columns that have been renamed since the last pipeline run",{"key":54,"text":122},"Multiple rows representing the same logical record",{"key":57,"text":124},"Tables that have not been queried in the last 30 days","A duplicate check looks for rows that logically represent the same entity appearing more than once, typically identified by a unique key or business identifier repeating — which can silently inflate counts and sums downstream.",{"fields":127,"seniorities":311,"interview_shapes":312,"locales":317,"oauth":319,"question_count":322,"coach_enabled":323,"jd_match_enabled":323},[128,153,173,190,214,227,246,265,287,294,298,305],{"key":129,"name_tr":130,"name_en":130,"sort":44,"specializations":131},"backend","Backend",[132,135,138,141,144,147,150],{"key":133,"name":134,"field":129},"general","Genel",{"key":136,"name":137,"field":129},"go","Go",{"key":139,"name":140,"field":129},"python","Python",{"key":142,"name":143,"field":129},"java","Java",{"key":145,"name":146,"field":129},"csharp","C#\u002F.NET",{"key":148,"name":149,"field":129},"nodejs","Node.js",{"key":151,"name":152,"field":129},"php","PHP",{"key":154,"name_tr":155,"name_en":155,"sort":62,"specializations":156},"frontend","Frontend",[157,158,161,164,167,170],{"key":133,"name":134,"field":154},{"key":159,"name":160,"field":154},"javascript","JavaScript",{"key":162,"name":163,"field":154},"typescript","TypeScript",{"key":165,"name":166,"field":154},"react","React",{"key":168,"name":169,"field":154},"vue","Vue",{"key":171,"name":172,"field":154},"angular","Angular",{"key":174,"name_tr":175,"name_en":175,"sort":176,"specializations":177},"fullstack","Fullstack",3,[178,179,180,181,182,183,184,185,186,187,188,189],{"key":133,"name":134,"field":174},{"key":136,"name":137,"field":129},{"key":139,"name":140,"field":129},{"key":142,"name":143,"field":129},{"key":145,"name":146,"field":129},{"key":148,"name":149,"field":129},{"key":151,"name":152,"field":129},{"key":159,"name":160,"field":154},{"key":162,"name":163,"field":154},{"key":165,"name":166,"field":154},{"key":168,"name":169,"field":154},{"key":171,"name":172,"field":154},{"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":133,"name":134,"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":133,"name":134,"field":215},{"key":139,"name":140,"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":133,"name":134,"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":133,"name":134,"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":133,"name":134,"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":133,"name":134,"field":288},{"key":5,"name_tr":6,"name_en":6,"sort":295,"specializations":296},10,[297],{"key":133,"name":134,"field":5},{"key":299,"name_tr":300,"name_en":301,"sort":302,"specializations":303},"game-dev","Oyun Geliştirme","Game Development",11,[304],{"key":133,"name":134,"field":299},{"key":306,"name_tr":307,"name_en":307,"sort":308,"specializations":309},"ml-engineer","ML Engineer",12,[310],{"key":133,"name":134,"field":306},[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},[318,10],"tr",[320,321],"google","github",21750,true]