Session
The "Rabbit Hole" of Dependencies in Golang
Why you should avoid dependencies at any cost. Dependencies in Golang can be deceptive. You start with a simple "Hello, World!" - zero dependencies, a small binary. Then, you add fmt, and suddenly, the build size jumps. A few more dependencies later, and you're lost without even realizing it.
But how bad can it get? Let's say you just need to list S3 buckets. Using the AWS SDK? Your binary is now 14MB. But if you write your own lightweight S3 api implementation? Just 8MB. The culprit? Hidden dependencies, bloated libraries, and engineers not questioning what they import.
This talk isn't just about build sizes: it’s about dependency management culture. In large-scale engineering, poorly managed dependencies cause broken updates, circular dependencies, and the dreaded “helpers” folder that turns into a black hole. I'll share examples from Delivery Hero, showing how small decisions in package design can lead to massive tech debt.
Let’s dig into Golang’s dependency ecosystem, identify the pitfalls, and take a look at how to make better engineering choices without getting sucked into the dependency black hole.

Andrii Raikov
Principal Software Engineer at Delivery Hero SE
Berlin, Germany
Links
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top