A case study on tapping into an existing event-driven architecture using a publish-subscribe model over Kafka. Covers a three-component design — consumer, API, and database — modelled around typed information flow contracts. Includes practical traps to avoid, from parallelism pitfalls to coupling the API and consumer into the same application.
Practical tips on navigating the developer job interview process in Germany, based on nine years of industry observation. Covers where to find roles, how to stand out in the virtual selection round, strategies for both timed and take-home code challenges, and what to expect in onsite interviews.
Three approaches to handling missing JSON properties when unmarshalling into Scala case classes with the Play Framework. Covers Play 2.6’s built-in WithDefaultValues, the Reads.pure() fallback pattern, and a reusable JsonDefaultValueFormatter trait that deep-merges incoming JSON with a default object — useful for large, deeply nested case classes where backward compatibility matters.
Four progressively improved approaches to concurrent programming in Go, demonstrated through a URL health checker. Covers synchronous iteration, goroutines with a naive sleep workaround, WaitGroup-based synchronization from the sync package, and typed channels for structured goroutine communication — illustrating Go’s concurrency model from basic to idiomatic.
Step-by-step tutorial for building a REST API server in Go using the httprouter multiplexer. Covers creating endpoints, structuring the project across multiple files, writing tests with the httptest package, and adding middleware for logging — finishing with a recommended package layout for larger projects.