GopherCon UK 2022
2022-08-16..2022-08-18
London, United Kingdom
[GopherCon UK 2019, GopherCon UK 2021, GopherCon UK 2022, GopherCon UK 2023, GopherCon UK 2024, GopherCon UK 2025, GopherCon UK 2026]
who it's for
Go developers, backend engineers, platform engineers, site reliability engineers, engineering managers, embedded developers, open source maintainers
topics
golangci-lint enforcement; goroutine concurrency patterns; TinyGo microcontroller builds; go.work multi-module workspaces; Go build cache and linking; buf + protoc code generation; eBPF for Go programmers; OpenTelemetry cloud-native observability; generics and type parameters; profiling slice-to-interface allocations; GitOps deployment pipelines; dependency management and modules
| title | author | length |
|---|---|---|
| Engineering Innovation - why constraints are critical | André Eriksson | 27m |
Argues that enforced limits enable practical innovation by example: encore enforces a single API, cron and pubsub definition so the system can generate… | ||
| The Joy of Linters: Good Engineering Practices & Productivity Boosters | Artur Kondas | 29m |
Practical recipe for getting linters from theory into habit: use golangci-lint with a checked-in .golangci.yml, run linting in CI and on git diffs so only… | ||
| Building Scalable Deployments with Multiple Goroutines | Sadie Freeman | 44m |
Built a Pack Delivery Service to mint and sell millions of NFT packs, using Go goroutines and sync waitgroups to parallelize work; initial single-threaded code… | ||
| TinyGo: Getting the upper hen | Donia Chaiehloudj | 35m |
Build uses TinyGo to compile a 29 KB microcontroller binary vs Go's 1.8 MB so it fits a 256 KB Arduino Nano 33 IoT, reads a DHT22 every 10s, and sends HTTP… | ||
| Module Magic: Multi Module Workspaces to the rescue | Sushmita Wable | 35m |
Shows how to replace local replace directives with real workspaces so local edits in one module immediately affect dependents: run go work init listing… | ||
| Zero to Hero: How we make great Golang engineers at Luno | Andrew Wormald | 30m |
Luno’s onboarding turns non-Go hires into idiomatic Go engineers by having them build a toy service that runs a customer→service→supplier→worker flow over gRPC… | ||
| Obscure Go Optimisations | Bryan Boreham | 51m |
Shows how a hidden conversion silently allocates when Go casts a slice to an interface, causing Prometheus startup to do a million allocations and lose ~25%… | ||
| Deep dive into Go's build system | Daniel Martí | 43m |
Go builds the toolchain three times when bootstrapping and can compile the whole repo in ~53 seconds on a laptop; builds work by loading package patterns… | ||
| A History of Dependency Management: 1.0 to Workspaces | John Anthony | 29m |
Chronicles Go dependency management from GOPATH chaos through the 2016 left‑pad fallout to official modules and recent workspace support, showing what changed… | ||
| The drunk Gopher’s walk: A talk about fuzzy, I Ching and ale. | Sheimy Rahman | 31m |
Describes a small Go fuzzy package (three source files and currently three functions) that implements a find-best-match algorithm comparing strings by sound… | ||
| Protocol Buffers- A Banked Journey | Christopher Reeves | 48m |
Banked defines shared error and message schemas once using proto3 and generates Go/TypeScript/Ruby types with protoc + protoc-gen-go until switching to… | ||
| How Go Helped Accelerate Software Delivery at the BBC | Beth Anderson | 30m |
BBC Digital Distribution handles 1,000 hours of catch‑up, 3–4 TB of live audio/video and about 13 million play events weekly across 17,000 GitHub repos, 4,000+… | ||
| Production Go Service Essentials | Elliot Williams | 40m |
Shows how a simple Go REST API becomes production-ready by applying the 12‑factor checklist and concrete tooling: use go mod vendor for reproducible builds… | ||
| eBPF Superpowers for Go programmers | Liz Rice | 39m |
Explains eBPF as programmable kernel code (attach points like execve kprobe or XDP for NIC offload), shows a C eBPF “hello” attached to execve and a practical… | ||
| Generics Unconstrained! | Roger Peppe | 29m |
Claim: prefer unconstrained type parameters combined with existing Go features because they produce simpler, more general APIs. Shows concrete rewrites… | ||
| Generics, Reflection, and Efficient Collections | Eleanor McHugh | 01h 05m |
Covers concrete patterns for building collection types (array, slice, map, channel), shows runnable examples of user-defined types with range/append/reduce… | ||
| Detecting and Fixing Unbound Concurrency Problems | Ivan Valkov | 41m |
Service crashes stem from millions of goroutines spawned by a work queuing routine that is created per request and blocks waiting on a five-worker channel… | ||
| All work and no play makes Gophers something something | John Gregory | 51m |
Retro terminal-based 3D adventure written in Go that actually renders a maze using pure text characters and ASCII block pixels, runs as a terminal-based 3D… | ||
| Canonical GitOps | David Flanagan | 36m |
Argues for canonical GitOps: one deployment manifest plus an environment contract rather than many overlays. Shows a Pulumi-based platform that installs a… | ||
| The Humn Side of GraphQL | Robbie King | 36m |
GraphQL becomes the central data layer for a Go microservice stack on AWS using AppSync, Kafka, Apache Flink, DynamoDB and OpenSearch; a naive string-based… | ||
| What's a front-end dev doing writing Go and why is the FBI here? | Kevin Centeno | 20m |
A front-end dev prototypes a browser and Node pipeline that styles maps so only water pixels remain using the Google Maps Static API, scans outward with an… | ||
| The misunderstood human resource management tool: Microservices Architecture | Adam Luzsi | 24m |
Argument: microservices are primarily a tool for scaling human resources, not a magic performance fix; they trade shared code simplicity for independent team… | ||
| Cloud-Native Observability with OpenTelemetry | Austin Parker | 55m |
OpenTelemetry supplies vendor-neutral OTLP traces metrics and logs, favors a traces-first model where spans (per-request units) turn into aggregated metrics… | ||
| From Service to Platform- A Ranking System in Go | Konrad Reiche | 42m |
An experimental livestream-ranking service becomes a reusable platform by modeling every step as a Stage implemented in Go with a single method interface… | ||
| Dreaming of high performance- a story about DORA metrics and Go | Catarina Bombaca | 38m |
Explains how a team measures DORA’s four metrics end to end and the concrete tooling used: Tekton CI, Prometheus + Grafana dashboards, Docker builds with Go… | ||
| Causal's 1000x Spreadsheet; Performance beyond profiling | Angad Nadkarni | 37m |
Engine moved from browser to Node then rewrote in Go, using go tool pprof, causal profiling (cause), sync.Pool and memoization to find high‑ROI fixes. Napkin… | ||
| Leading in Tech | Michael Cullum | 47m |
Outlines concrete leadership roles (mentor, tech lead, principal/staff engineer, manager, public leader), argues that leadership means promoting change for… | ||
| gogoprotobuf: How NOT to run an open source project | Walter Schulze | 44m |
A fork of golang/protobuf called GoGo protobuf generates pointer-free structs and custom marshallers to cut allocations and deliver roughly 2x speed… | ||
| nothing matches | ||