>_barehands
Blog

Challenges

86 challenges — solve one in the browser and get graded on correctness and speed.

</>

01backtracking 6 challenges

backtracking, pruning, networking

backtrackingnetworkingscheduling
c go

backtracking, constraint satisfaction, configuration

backtrackingconfiguration
c go

backtracking, string matching, recursion

backtrackingstrings
c go

backtracking, topological sort, configuration

backtrackinggraphsconfiguration
c go

backtracking, constraint satisfaction, RBAC

backtrackinggraphsconfiguration
c go

backtracking, constraint satisfaction, networking

backtrackingnetworkingconfiguration
c go

02caching 5 challenges

consistent hashing, virtual nodes, hash ring

cachingdistributed

cache eviction, doubly-linked list, SIEVE

cachingdata-structures

caching, background refresh, request coalescing, concurrency

cachingconcurrency

sync.RWMutex, time.AfterFunc, Generics, Comparable

cachingconcurrency

cache eviction, O(1) LFU, frequency buckets

cachingdata-structures

03concurrency 7 challenges

Generics, Goroutines, Channels, Context, Benchmarks

concurrencygenerics

Generics, Context, time.Timer, Exponential backoff

concurrencyresilience

generics, time.Timer, channels, graceful shutdown

concurrencybatching

channels, goroutines, generics, context

concurrencychannels

sync.RWMutex, Channels, Goroutines, Generics

concurrencypub-sub

Channels, time.Ticker, Context

concurrencyrate-limiting

sync.Mutex, sync.WaitGroup, Goroutines, Generics

concurrencydeduplication

04crypto 2 challenges

symmetric encryption, AEAD, AES-GCM, nonces

cryptoencryption

RSA, RS256, JWT, JWKS, key rotation, asymmetric crypto

cryptoauthjwt

05data-structures 14 challenges

data structures, heaps, implicit trees

data-structuresc
c

bit manipulation, popcount, fixed-size set

data-structuresc
c

probabilistic data structures, bit manipulation, hashing

data-structuresc
c

data structures, prefix sums, bit manipulation

data-structuresc
c

hash table, open addressing, linear probing, tombstones

data-structuresc
c

intervals, binary search, ordered index, overlap queries

data-structuressearch

intrusive data structures, doubly-linked list, container_of

data-structuresc
c

doubly-linked list, hash map, generics, O(1) eviction

data-structurescaching

LSM-tree, memtable, tombstones, k-way merge, compaction

data-structuresstorage

ring buffer, FIFO queue, fixed-capacity, no allocation

data-structuresc
c

skip list, probabilistic ordered map, range scan

data-structurestrees

data structures, strings, prefix trees

data-structuresc
c

data structures, union-find, amortized analysis

data-structuresc
c

B-tree, balanced search tree, ordered map, range scan

data-structurestrees

06encoding 8 challenges

bit manipulation, encoding

encodingc
c

compression, encoding

encodingc
c

bit manipulation, encoding

encodingc
c

bit manipulation, encoding, RFC 4648

encodingc
c

bit manipulation, serialization, codecs

encodingc
c

bit manipulation, checksums, polynomials

encodingc
c

bit manipulation, encoding, Unicode

encodingc
c

variable-length integers, bit manipulation, encoding

encodingc
c

07graphs 8 challenges

graphs, chain walk, loop detection

graphsnetworking

graphs, BFS, resilience

graphsresilience

graphs, DFS, cycle detection, gateway configuration

graphsconfiguration

graphs, topological sort, orchestration

graphsorchestration

graphs, DFS, cycle detection, authorization

graphsauthorization

graphs, DFS, observability, trace analysis

graphsobservability

graphs, BFS, concurrency, worker pool, visited dedup

graphsconcurrency

graphs, topological sort, concurrency, worker pool

graphsconcurrency

08memory 3 challenges

bump allocator, alignment, memory management

memoryc
c

allocators, free lists, fixed-size objects

memoryc
c

allocator, malloc/free, block splitting, coalescing

memoryc
c

09networking 18 challenges

http.Server, context, connection draining, high availability

networkinghttp

http.Handler, http.HandlerFunc, function composition

networkinghttp

net.Listen, goroutines, io.Copy, context, SetDeadline

networkingtcp

stream framing, length-prefix protocol, partial reads

networkingprotocols

wire-protocol parsing, RESP, in-memory store

networkingprotocols

State machine, sync.Mutex, time, error handling

networkingresilience

Channels, Generics, io.Closer, Context

networkingconcurrency

gRPC, interceptors, middleware composition

networkinggrpc
go

http.RoundTripper, http.Client, context, backoff

networkinghttpresilience

HMAC-SHA256, base64url, JSON, HTTP middleware, context

networkingauthjwt

HTTP middleware, ResponseWriter wrapping, atomics, RED metrics

networkingobservability

crypto/tls, crypto/x509, certificate chains, mutual TLS

networkingcryptotls
go

Redis (INCR/EXPIRE), distributed rate limiting, go-redis

networkingrate-limitingredis
go

bounded channels, backpressure, graceful shutdown, generics

networkingbackpressure

httputil.ReverseProxy, round-robin, health checks, atomics

networkingload-balancing

TCP, line protocol, concurrency, graceful drain

networkingtcp

Server-Sent Events, http.Flusher, streaming, context cancellation, token metering

networkingstreamingsse
go

HTTP Upgrade, frame format, masking, ping/pong

networkingwebsocket
go

10numeric 1 challenges

numeric algorithms, strings, carries

numericc
c

11parsing 2 challenges

stacks, parsing, expression evaluation

parsingc
c

parsing, state machines, zero-copy

parsingc
c

12profiling 5 challenges

profiling, allocations, performance, `testing.AllocsPerRun`

profilingperformance
go go-only by design ⓘ

Go memory model, data races, sync.Mutex, sync/atomic

profilingconcurrency
go go-only by design ⓘ

performance, profiling, allocations, Go runtime/GC

profilingperformance
go go-only by design ⓘ

profiling, pprof data model, flat vs cumulative

profilingdata-structures
go go-only by design ⓘ

profiling, memory optimization, allocations

profilingperformance
go go-only by design ⓘ

13scheduling 5 challenges

scheduling, intervals, sweep line, greedy

schedulingintervals

backtracking, constraint satisfaction, scheduling

schedulingbacktracking
c go

scheduling, greedy, max-heap, Moore–Hodgson

schedulinggreedy

scheduling, priority queue, heap, discrete-event simulation

schedulingdata-structures

scheduling, load balancing, fairness

schedulingload-balancing

14strings 2 challenges

dynamic programming, strings

stringsc
c

strings, algorithms, the failure function

stringsc
c