Concept guides
ReadGuideTrackTopicLevelTime
Keeping a model working after launchMediumSystem designAI in the systemSystem designAI in the systemMedium8 minML system designHardSystem designAI in the systemSystem designAI in the systemHard3 minServing a model inside a latency budgetHardSystem designAI in the systemSystem designAI in the systemHard7 minRole-based access control (RBAC)HardSystem designAI in the systemSystem designAI in the systemHard3 min
Arrays & in-place tricksEasyCodingArrays and stringsCodingArrays and stringsEasy3 minHash maps & setsEasyCodingArrays and stringsCodingArrays and stringsEasy3 minDesigning data structuresEasyCodingArrays and stringsCodingArrays and stringsEasy3 minSet operationsEasyCodingArrays and stringsCodingArrays and stringsEasy5 minSliding windowMediumCodingArrays and stringsCodingArrays and stringsMedium3 minConsistent hashing (key rebalancing)MediumCodingArrays and stringsCodingArrays and stringsMedium3 minConsistent hashing and replica setsMediumCodingArrays and stringsCodingArrays and stringsMedium3 minPrefix sums & difference arraysMediumCodingArrays and stringsCodingArrays and stringsMedium3 minString matching (KMP, Z)MediumCodingArrays and stringsCodingArrays and stringsMedium3 minLinked listsMediumCodingArrays and stringsCodingArrays and stringsMedium3 minRate limitingMediumCodingArrays and stringsCodingArrays and stringsMedium4 minStacks & monotonic stacksMediumCodingArrays and stringsCodingArrays and stringsMedium3 minWindow functions: running totals, ranks and gapsMediumCodingArrays and stringsCodingArrays and stringsMedium4 minTransfer locking and final balanceHardCodingArrays and stringsCodingArrays and stringsHard3 min
Experiment math without floatsEasyCodingBits and mathCodingBits and mathEasy4 minMath & number theoryMediumCodingBits and mathCodingBits and mathMedium3 minBit manipulationMediumCodingBits and mathCodingBits and mathMedium3 minFeature flagsMediumCodingBits and mathCodingBits and mathMedium3 minIndex intersection (bitmap and)HardCodingBits and mathCodingBits and mathHard3 min
DuplicatesMediumCodingSQLCodingSQLMedium5 minJoinsMediumCodingSQLCodingSQLMedium5 minAnti-joinsMediumCodingSQLCodingSQLMedium5 minNULLs and three-valued logicMediumCodingSQLCodingSQLMedium5 minDates and time bucketsMediumCodingSQLCodingSQLMedium5 minSelf-joinsHardCodingSQLCodingSQLHard4 minConditional aggregationHardCodingSQLCodingSQLHard5 minWindow functionsHardCodingSQLCodingSQLHard6 minSubqueriesHardCodingSQLCodingSQLHard6 minFunnel queriesHardCodingSQLCodingSQLHard5 minGaps and islandsHardCodingSQLCodingSQLHard5 minRecursive CTEsHardCodingSQLCodingSQLHard6 minTop N per groupHardCodingSQLCodingSQLHard5 min
Strings & parsingEasyCodingData and ML codeCodingData and ML codeEasy3 minThe User-Agent headerEasyCodingData and ML codeCodingData and ML codeEasy4 minML primitives from scratchEasyCodingData and ML codeCodingData and ML codeEasy3 minReading a log fileEasyCodingData and ML codeCodingData and ML codeEasy4 minDatabase aggregationEasyCodingData and ML codeCodingData and ML codeEasy3 minParsing configuration filesEasyCodingData and ML codeCodingData and ML codeEasy4 minGROUP BY and aggregationMediumCodingData and ML codeCodingData and ML codeMedium5 minDataframesMediumCodingData and ML codeCodingData and ML codeMedium5 minJoins that keep the right rowsMediumCodingData and ML codeCodingData and ML codeMedium4 minHow a domain name is encoded on the wireMediumCodingData and ML codeCodingData and ML codeMedium3 minHTTP range requestsMediumCodingData and ML codeCodingData and ML codeMedium3 minOnline learningMediumCodingData and ML codeCodingData and ML codeMedium3 min