[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:backend\u002Fnetworking-http":4,"config":254},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":148,"samples":168},"backend","Backend","","networking-http","Networking \u002F HTTP","en",75,3300,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,88,91,94,97,100,103,106,109,112,115,118,121,124,127,130,133,136,139,142,145],{"key":19,"name":20,"count":11},"api-design","API Design",{"key":22,"name":23,"count":11},"caching","Caching",{"key":25,"name":26,"count":11},"concurrency","Concurrency",{"key":28,"name":29,"count":11},"csharp-concurrency-async","Csharp Concurrency Async",{"key":31,"name":32,"count":11},"csharp-exceptions","Csharp Exceptions",{"key":34,"name":35,"count":11},"csharp-generics-interfaces","Csharp Generics Interfaces",{"key":37,"name":38,"count":11},"csharp-memory-performance","Csharp Memory Performance",{"key":40,"name":41,"count":11},"csharp-stdlib-http","Csharp Stdlib Http",{"key":43,"name":44,"count":11},"csharp-testing-tooling","Csharp Testing Tooling",{"key":46,"name":47,"count":11},"databases-sql","Databases \u002F SQL",{"key":49,"name":50,"count":11},"go-concurrency","Go Concurrency",{"key":52,"name":53,"count":11},"go-errors","Go Errors",{"key":55,"name":56,"count":11},"go-interfaces-generics","Go Interfaces Generics",{"key":58,"name":59,"count":11},"go-memory-performance","Go Memory Performance",{"key":61,"name":62,"count":11},"go-stdlib-http","Go Stdlib Http",{"key":64,"name":65,"count":11},"go-testing-tooling","Go Testing Tooling",{"key":67,"name":68,"count":11},"java-concurrency","Java Concurrency",{"key":70,"name":71,"count":11},"java-exceptions","Java Exceptions",{"key":73,"name":74,"count":11},"java-generics-interfaces","Java Generics Interfaces",{"key":76,"name":77,"count":11},"java-memory-jvm","Java Memory Jvm",{"key":79,"name":80,"count":11},"java-stdlib-http","Java Stdlib Http",{"key":82,"name":83,"count":11},"java-testing-tooling","Java Testing Tooling",{"key":85,"name":86,"count":11},"messaging-queues","Messaging \u002F Queues",{"key":8,"name":9,"count":11},{"key":89,"name":90,"count":11},"nodejs-error-handling","Nodejs Error Handling",{"key":92,"name":93,"count":11},"nodejs-event-loop-async","Nodejs Event Loop Async",{"key":95,"name":96,"count":11},"nodejs-memory-performance","Nodejs Memory Performance",{"key":98,"name":99,"count":11},"nodejs-modules-streams","Nodejs Modules Streams",{"key":101,"name":102,"count":11},"nodejs-stdlib-http","Nodejs Stdlib Http",{"key":104,"name":105,"count":11},"nodejs-testing-tooling","Nodejs Testing Tooling",{"key":107,"name":108,"count":11},"php-concurrency-async","Php Concurrency Async",{"key":110,"name":111,"count":11},"php-exceptions","Php Exceptions",{"key":113,"name":114,"count":11},"php-generics-interfaces","Php Generics Interfaces",{"key":116,"name":117,"count":11},"php-memory-performance","Php Memory Performance",{"key":119,"name":120,"count":11},"php-stdlib-http","Php Stdlib Http",{"key":122,"name":123,"count":11},"php-testing-tooling","Php Testing Tooling",{"key":125,"name":126,"count":11},"python-concurrency-async","Python Concurrency Async",{"key":128,"name":129,"count":11},"python-errors-context","Python Errors Context",{"key":131,"name":132,"count":11},"python-memory-performance","Python Memory Performance",{"key":134,"name":135,"count":11},"python-stdlib-http","Python Stdlib Http",{"key":137,"name":138,"count":11},"python-testing-tooling","Python Testing Tooling",{"key":140,"name":141,"count":11},"python-typing-oop","Python Typing Oop",{"key":143,"name":144,"count":11},"security","Security",{"key":146,"name":147,"count":11},"testing","Testing",[149,153,156,159,162,165],{"key":150,"name":151,"count":152},"csharp","C#\u002F.NET",450,{"key":154,"name":155,"count":152},"go","Go",{"key":157,"name":158,"count":152},"java","Java",{"key":160,"name":161,"count":152},"nodejs","Node.js",{"key":163,"name":164,"count":152},"php","PHP",{"key":166,"name":167,"count":152},"python","Python",[169,187,201,215,228,241],{"id":170,"topic":9,"difficulty":171,"body":172,"options":173,"correct_key":178,"explanation":186},"019f56bb-b399-71e6-8023-febed412092a",1,"What is the key difference between TCP and UDP?",[174,177,180,183],{"key":175,"text":176},"a","UDP delivers every packet exactly once and in order, while TCP prioritizes raw speed over strict ordering",{"key":178,"text":179},"b","TCP provides reliable, ordered delivery over a connection; UDP sends datagrams without delivery guarantees",{"key":181,"text":182},"c","TCP can only be used between servers, while UDP is meant for browser-to-server traffic",{"key":184,"text":185},"d","UDP encrypts its payload by default, while TCP leaves encryption to the application","TCP establishes a connection and uses acknowledgements and retransmission to guarantee that data arrives complete and in order; UDP just sends independent datagrams, trading those guarantees for lower overhead. Option (a) swaps the two protocols — a classic trap.",{"id":188,"topic":9,"difficulty":189,"body":190,"options":191,"correct_key":184,"explanation":200},"019f56bb-b399-789e-9656-c1855bde5676",2,"You are adding live video streaming to a product. Losing an occasional frame is acceptable, but added delay is not. Which transport protocol fits better, and why?",[192,194,196,198],{"key":175,"text":193},"TCP — video frames must arrive complete and in the exact order they were sent, so reliable delivery is worth any extra delay",{"key":178,"text":195},"TCP — UDP packets are usually blocked outside local networks",{"key":181,"text":197},"UDP — it reserves dedicated bandwidth for the stream so frames arrive faster",{"key":184,"text":199},"UDP — waiting for a lost frame to be retransmitted would make it arrive too late to be useful","For real-time media, a retransmitted frame usually arrives after its display time has passed, so dropping it and moving on is better — which is exactly UDP's model. TCP (a) would stall the stream while recovering lost packets, and UDP reserves no bandwidth (c).",{"id":202,"topic":9,"difficulty":203,"body":204,"options":205,"correct_key":181,"explanation":214},"019f56bb-b39a-7082-ab82-81fbe0db29aa",3,"What actually happens during TCP's three-way handshake (SYN, SYN-ACK, ACK)?",[206,208,210,212],{"key":175,"text":207},"The client and server negotiate which cipher will encrypt the traffic",{"key":178,"text":209},"The server validates the client's credentials before accepting any data",{"key":181,"text":211},"Both sides agree to open a connection and synchronize the initial sequence numbers used for ordered delivery",{"key":184,"text":213},"The client sends its request three times so at least one copy is guaranteed to arrive","The handshake establishes that both ends are ready and exchanges initial sequence numbers, which later let TCP detect loss and preserve ordering. Cipher negotiation (a) belongs to the TLS handshake, which runs only after the TCP connection exists.",{"id":216,"topic":9,"difficulty":171,"body":217,"options":218,"correct_key":175,"explanation":227},"019f56bb-b39c-7807-a3e8-8137f0ab9d24","What is the purpose of a port number in TCP\u002FIP networking?",[219,221,223,225],{"key":175,"text":220},"It identifies which application (process) on the host should receive the traffic",{"key":178,"text":222},"It uniquely identifies the machine on the network, taking priority over the IP address",{"key":181,"text":224},"It determines the order in which packets are reassembled at the destination",{"key":184,"text":226},"It selects which physical network interface the traffic goes through","The IP address locates the machine; the port directs traffic to a specific service on it — 80 and 443 for web servers, for example. Packet ordering (c) is handled by TCP sequence numbers, not ports.",{"id":229,"topic":9,"difficulty":171,"body":230,"options":231,"correct_key":175,"explanation":240},"019f56bb-b39d-741b-9b1e-2c048849e477","By default, which ports do HTTP and HTTPS use?",[232,234,236,238],{"key":175,"text":233},"80 for HTTP, 443 for HTTPS",{"key":178,"text":235},"443 for HTTP, 80 for HTTPS",{"key":181,"text":237},"8080 for HTTP, 8443 for HTTPS",{"key":184,"text":239},"25 for HTTP, 22 for HTTPS","The defaults are 80 and 443, which is why URLs normally omit them. 8080 and 8443 (c) are common alternative or development ports but not the defaults; 25 and 22 (d) belong to SMTP and SSH.",{"id":242,"topic":9,"difficulty":171,"body":243,"options":244,"correct_key":181,"explanation":253},"019f56bb-b39d-7a19-ac3a-7d35c64bf0c5","What is the primary job of DNS?",[245,247,249,251],{"key":175,"text":246},"Choosing the fastest network route for each packet",{"key":178,"text":248},"Verifying that a website's TLS certificate is valid",{"key":181,"text":250},"Translating domain names like example.com into IP addresses",{"key":184,"text":252},"Assigning an IP address to a machine when it joins a network","DNS resolves human-readable names to IP addresses so clients know where to connect. Handing out addresses to machines joining a network (d) is DHCP's job — a frequent mix-up.",{"fields":255,"seniorities":424,"interview_shapes":425,"locales":430,"oauth":432,"question_count":435,"coach_enabled":436,"jd_match_enabled":436},[256,267,287,303,327,340,359,378,398,405,411,418],{"key":5,"name_tr":6,"name_en":6,"sort":171,"specializations":257},[258,261,262,263,264,265,266],{"key":259,"name":260,"field":5},"general","Genel",{"key":154,"name":155,"field":5},{"key":166,"name":167,"field":5},{"key":157,"name":158,"field":5},{"key":150,"name":151,"field":5},{"key":160,"name":161,"field":5},{"key":163,"name":164,"field":5},{"key":268,"name_tr":269,"name_en":269,"sort":189,"specializations":270},"frontend","Frontend",[271,272,275,278,281,284],{"key":259,"name":260,"field":268},{"key":273,"name":274,"field":268},"javascript","JavaScript",{"key":276,"name":277,"field":268},"typescript","TypeScript",{"key":279,"name":280,"field":268},"react","React",{"key":282,"name":283,"field":268},"vue","Vue",{"key":285,"name":286,"field":268},"angular","Angular",{"key":288,"name_tr":289,"name_en":289,"sort":203,"specializations":290},"fullstack","Fullstack",[291,292,293,294,295,296,297,298,299,300,301,302],{"key":259,"name":260,"field":288},{"key":154,"name":155,"field":5},{"key":166,"name":167,"field":5},{"key":157,"name":158,"field":5},{"key":150,"name":151,"field":5},{"key":160,"name":161,"field":5},{"key":163,"name":164,"field":5},{"key":273,"name":274,"field":268},{"key":276,"name":277,"field":268},{"key":279,"name":280,"field":268},{"key":282,"name":283,"field":268},{"key":285,"name":286,"field":268},{"key":304,"name_tr":305,"name_en":305,"sort":306,"specializations":307},"devops-cloud","DevOps \u002F Cloud",4,[308,309,312,315,318,321,324],{"key":259,"name":260,"field":304},{"key":310,"name":311,"field":304},"aws","AWS",{"key":313,"name":314,"field":304},"gcp","GCP",{"key":316,"name":317,"field":304},"azure","Azure",{"key":319,"name":320,"field":304},"kubernetes","Kubernetes",{"key":322,"name":323,"field":304},"terraform","Terraform",{"key":325,"name":326,"field":304},"linux","Linux",{"key":328,"name_tr":329,"name_en":329,"sort":330,"specializations":331},"ai-engineer","AI Engineer",5,[332,333,334,337],{"key":259,"name":260,"field":328},{"key":166,"name":167,"field":328},{"key":335,"name":336,"field":328},"llm-rag","LLM\u002FRAG",{"key":338,"name":339,"field":328},"mlops","MLOps",{"key":341,"name_tr":342,"name_en":343,"sort":344,"specializations":345},"database","Veritabanı","Database",6,[346,347,350,353,356],{"key":259,"name":260,"field":341},{"key":348,"name":349,"field":341},"postgresql","PostgreSQL",{"key":351,"name":352,"field":341},"mysql","MySQL",{"key":354,"name":355,"field":341},"mongodb","MongoDB",{"key":357,"name":358,"field":341},"redis","Redis",{"key":360,"name_tr":361,"name_en":362,"sort":363,"specializations":364},"mobile","Mobil","Mobile",7,[365,366,369,372,375],{"key":259,"name":260,"field":360},{"key":367,"name":368,"field":360},"ios-swift","iOS (Swift)",{"key":370,"name":371,"field":360},"android-kotlin","Android (Kotlin)",{"key":373,"name":374,"field":360},"flutter","Flutter",{"key":376,"name":377,"field":360},"react-native","React Native",{"key":143,"name_tr":379,"name_en":144,"sort":380,"specializations":381},"Güvenlik",8,[382,383,386,389,392,395],{"key":259,"name":260,"field":143},{"key":384,"name":385,"field":143},"appsec","AppSec",{"key":387,"name":388,"field":143},"offensive-pentest","Offensive \u002F Pentest",{"key":390,"name":391,"field":143},"cloud-security","Cloud Security",{"key":393,"name":394,"field":143},"devsecops","DevSecOps",{"key":396,"name":397,"field":143},"blue-team-incident","Blue Team \u002F Incident",{"key":399,"name_tr":400,"name_en":401,"sort":402,"specializations":403},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[404],{"key":259,"name":260,"field":399},{"key":406,"name_tr":407,"name_en":407,"sort":408,"specializations":409},"data-engineer","Data Engineer",10,[410],{"key":259,"name":260,"field":406},{"key":412,"name_tr":413,"name_en":414,"sort":415,"specializations":416},"game-dev","Oyun Geliştirme","Game Development",11,[417],{"key":259,"name":260,"field":412},{"key":419,"name_tr":420,"name_en":420,"sort":421,"specializations":422},"ml-engineer","ML Engineer",12,[423],{"key":259,"name":260,"field":419},[14,15,16],{"junior":426,"mid":428,"senior":429},{"questions":427,"median_sec":3},20,{"questions":427,"median_sec":3},{"questions":427,"median_sec":3},[431,10],"tr",[433,434],"google","github",21750,true]