[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:en:backend\u002Fgo-memory-performance":4,"config":251},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","","go-memory-performance","Go Memory Performance","en",75,3300,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,58,61,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],{"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":8,"name":9,"count":11},{"key":59,"name":60,"count":11},"go-stdlib-http","Go Stdlib Http",{"key":62,"name":63,"count":11},"go-testing-tooling","Go Testing Tooling",{"key":65,"name":66,"count":11},"java-concurrency","Java Concurrency",{"key":68,"name":69,"count":11},"java-exceptions","Java Exceptions",{"key":71,"name":72,"count":11},"java-generics-interfaces","Java Generics Interfaces",{"key":74,"name":75,"count":11},"java-memory-jvm","Java Memory Jvm",{"key":77,"name":78,"count":11},"java-stdlib-http","Java Stdlib Http",{"key":80,"name":81,"count":11},"java-testing-tooling","Java Testing Tooling",{"key":83,"name":84,"count":11},"messaging-queues","Messaging \u002F Queues",{"key":86,"name":87,"count":11},"networking-http","Networking \u002F HTTP",{"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,212,225,238],{"id":170,"topic":9,"difficulty":171,"body":172,"options":173,"correct_key":178,"explanation":186},"019f5b0c-5b4f-7430-af11-8848c8335a41",1,"In Go, a slice value is a small header containing a pointer, a length, and a capacity. What does the capacity represent?",[174,177,180,183],{"key":175,"text":176},"a","The number of elements currently stored in the slice, same as its length",{"key":178,"text":179},"b","How many elements fit in the underlying array from the slice's start onward",{"key":181,"text":182},"c","The total memory in bytes allocated for the slice header itself",{"key":184,"text":185},"d","The maximum number of elements Go allows any slice to ever hold","Length is how many elements the slice currently exposes. Capacity is how far the underlying array extends past the slice's start, so append can grow into that space without allocating a new array until capacity runs out.",{"id":188,"topic":9,"difficulty":189,"body":190,"options":191,"correct_key":175,"explanation":200},"019f5b0c-5b50-71c3-8a92-7ffa421e8184",2,"What does this program print?\n\n```go\na := make([]int, 3, 3)\na[0], a[1], a[2] = 1, 2, 3\nb := append(a, 4)\nb[0] = 99\nfmt.Println(a[0])\n```",[192,194,196,198],{"key":175,"text":193},"1",{"key":178,"text":195},"99",{"key":181,"text":197},"4",{"key":184,"text":199},"This does not compile","a has length 3 and capacity 3, so it is already full. append(a, 4) has no room to grow into, so Go allocates a brand new backing array for b and copies the elements over. b and a no longer share storage, so modifying b[0] leaves a[0] unchanged at 1.",{"id":202,"topic":9,"difficulty":203,"body":204,"options":205,"correct_key":181,"explanation":211},"019f5b0c-5b50-7b05-9273-821589407121",3,"What does this program print?\n\n```go\na := make([]int, 3, 5)\na[0], a[1], a[2] = 1, 2, 3\nb := append(a, 4)\nb[0] = 99\nfmt.Println(a[0])\n```",[206,207,208,209],{"key":175,"text":193},{"key":178,"text":197},{"key":181,"text":195},{"key":184,"text":210},"panic: index out of range","a has length 3 but capacity 5, so there is room for one more element without reallocating. append(a, 4) reuses the same backing array for b, meaning a and b alias the same storage. Writing b[0] = 99 changes that shared array, so a[0] becomes 99 too.",{"id":213,"topic":9,"difficulty":189,"body":214,"options":215,"correct_key":184,"explanation":224},"019f5b0c-5b51-73f3-9409-5cfeaa39f56a","What does this program print?\n\n```go\nnums := []int{10, 20, 30, 40, 50}\nsub := nums[1:3]\nsub[0] = 999\nfmt.Println(nums[1])\n```",[216,218,220,222],{"key":175,"text":217},"20",{"key":178,"text":219},"0",{"key":181,"text":221},"30",{"key":184,"text":223},"999","sub := nums[1:3] does not copy any elements; it is a new slice header pointing into the same backing array as nums, starting at index 1. sub[0] refers to the same memory cell as nums[1], so writing through sub is visible in nums.",{"id":226,"topic":9,"difficulty":189,"body":227,"options":228,"correct_key":178,"explanation":237},"019f5b0c-5b51-7cc6-9e17-18a906237376","What does this program print?\n\n```go\nsrc := []int{1, 2, 3, 4, 5}\ndst := make([]int, 3)\nn := copy(dst, src)\nfmt.Println(n, dst)\n```",[229,231,233,235],{"key":175,"text":230},"5 [1 2 3 4 5]",{"key":178,"text":232},"3 [1 2 3]",{"key":181,"text":234},"3 [1 2 3 4 5]",{"key":184,"text":236},"5 [1 2 3]","copy(dst, src) copies min(len(dst), len(src)) elements and returns that count; it never grows dst. Here len(dst) is 3, so only the first 3 elements of src are copied, and copy returns 3.",{"id":239,"topic":9,"difficulty":171,"body":240,"options":241,"correct_key":175,"explanation":250},"019f5b0c-5b52-7486-ae72-795b1df90e5e","A function repeatedly needs to start from an empty slice on each call while reusing the same backing storage, to avoid extra allocations. Which technique achieves this without allocating a new array?",[242,244,246,248],{"key":175,"text":243},"Reset with `s = s[:0]`, which keeps the same backing array and capacity while setting the length to zero",{"key":178,"text":245},"Reassign with `s = []int{}`, which is guaranteed to reuse the same array pointer as before",{"key":181,"text":247},"Call `s = make([]int, 0)` each time, which always reuses the previous backing array",{"key":184,"text":249},"Set `s = nil` and rely on the next `append` reusing the array that was freed","s[:0] re-slices s to length zero but keeps the same pointer and capacity, so subsequent appends can reuse the existing backing array up to its old capacity before any new allocation is needed. Both []int{} and make([]int, 0) create a fresh, independent slice.",{"fields":252,"seniorities":421,"interview_shapes":422,"locales":427,"oauth":429,"question_count":432,"coach_enabled":433,"jd_match_enabled":433},[253,264,284,300,324,337,356,375,395,402,408,415],{"key":5,"name_tr":6,"name_en":6,"sort":171,"specializations":254},[255,258,259,260,261,262,263],{"key":256,"name":257,"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":265,"name_tr":266,"name_en":266,"sort":189,"specializations":267},"frontend","Frontend",[268,269,272,275,278,281],{"key":256,"name":257,"field":265},{"key":270,"name":271,"field":265},"javascript","JavaScript",{"key":273,"name":274,"field":265},"typescript","TypeScript",{"key":276,"name":277,"field":265},"react","React",{"key":279,"name":280,"field":265},"vue","Vue",{"key":282,"name":283,"field":265},"angular","Angular",{"key":285,"name_tr":286,"name_en":286,"sort":203,"specializations":287},"fullstack","Fullstack",[288,289,290,291,292,293,294,295,296,297,298,299],{"key":256,"name":257,"field":285},{"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":270,"name":271,"field":265},{"key":273,"name":274,"field":265},{"key":276,"name":277,"field":265},{"key":279,"name":280,"field":265},{"key":282,"name":283,"field":265},{"key":301,"name_tr":302,"name_en":302,"sort":303,"specializations":304},"devops-cloud","DevOps \u002F Cloud",4,[305,306,309,312,315,318,321],{"key":256,"name":257,"field":301},{"key":307,"name":308,"field":301},"aws","AWS",{"key":310,"name":311,"field":301},"gcp","GCP",{"key":313,"name":314,"field":301},"azure","Azure",{"key":316,"name":317,"field":301},"kubernetes","Kubernetes",{"key":319,"name":320,"field":301},"terraform","Terraform",{"key":322,"name":323,"field":301},"linux","Linux",{"key":325,"name_tr":326,"name_en":326,"sort":327,"specializations":328},"ai-engineer","AI Engineer",5,[329,330,331,334],{"key":256,"name":257,"field":325},{"key":166,"name":167,"field":325},{"key":332,"name":333,"field":325},"llm-rag","LLM\u002FRAG",{"key":335,"name":336,"field":325},"mlops","MLOps",{"key":338,"name_tr":339,"name_en":340,"sort":341,"specializations":342},"database","Veritabanı","Database",6,[343,344,347,350,353],{"key":256,"name":257,"field":338},{"key":345,"name":346,"field":338},"postgresql","PostgreSQL",{"key":348,"name":349,"field":338},"mysql","MySQL",{"key":351,"name":352,"field":338},"mongodb","MongoDB",{"key":354,"name":355,"field":338},"redis","Redis",{"key":357,"name_tr":358,"name_en":359,"sort":360,"specializations":361},"mobile","Mobil","Mobile",7,[362,363,366,369,372],{"key":256,"name":257,"field":357},{"key":364,"name":365,"field":357},"ios-swift","iOS (Swift)",{"key":367,"name":368,"field":357},"android-kotlin","Android (Kotlin)",{"key":370,"name":371,"field":357},"flutter","Flutter",{"key":373,"name":374,"field":357},"react-native","React Native",{"key":143,"name_tr":376,"name_en":144,"sort":377,"specializations":378},"Güvenlik",8,[379,380,383,386,389,392],{"key":256,"name":257,"field":143},{"key":381,"name":382,"field":143},"appsec","AppSec",{"key":384,"name":385,"field":143},"offensive-pentest","Offensive \u002F Pentest",{"key":387,"name":388,"field":143},"cloud-security","Cloud Security",{"key":390,"name":391,"field":143},"devsecops","DevSecOps",{"key":393,"name":394,"field":143},"blue-team-incident","Blue Team \u002F Incident",{"key":396,"name_tr":397,"name_en":398,"sort":399,"specializations":400},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[401],{"key":256,"name":257,"field":396},{"key":403,"name_tr":404,"name_en":404,"sort":405,"specializations":406},"data-engineer","Data Engineer",10,[407],{"key":256,"name":257,"field":403},{"key":409,"name_tr":410,"name_en":411,"sort":412,"specializations":413},"game-dev","Oyun Geliştirme","Game Development",11,[414],{"key":256,"name":257,"field":409},{"key":416,"name_tr":417,"name_en":417,"sort":418,"specializations":419},"ml-engineer","ML Engineer",12,[420],{"key":256,"name":257,"field":416},[14,15,16],{"junior":423,"mid":425,"senior":426},{"questions":424,"median_sec":3},20,{"questions":424,"median_sec":3},{"questions":424,"median_sec":3},[428,10],"tr",[430,431],"google","github",21750,true]