As engineers, we love code-reuse. We DRY up our code to avoid repeating ourselves, we refactor to make our code cleaner, and we pull in external dependencies for common needs like background jobs, unit testing, metrics, retries with exponential backoff, etc. etc, etc. However, external dependencies are a liability, a ticking time bomb waiting for another xz-style attack or a crypto coin miner attack. In a post-AI world, it's hard to imagine why we wouldn't invest the time in building and maintaining our own tools that we understand fully and are built with our local problems in mind, not some generic abstraction. Elixir already ships with everything you'd need to write a good-enough async job processing system like Oban, test helpers, and integrations with external systems like prometheus. The way is lit, the path is clear, we require only the strength to follow it...
Tim Jarratt is a walking contradiction. Californian by birth, he grew up on an island but never learned how to swim nor drive (how he managed to escape remains a mystery). Across twenty years of experience, he's held a variety of roles (director of engineering, lead engineer, chief metaphor officer, to name a few). What keeps him interested and motivated in tech is the human element - pair programming, test-driven development, and a stubborn insistence that we can build better software for our users if we only tried things that seem impossible. After a decade sweating in Silicon Valley he moved to Paris, France, where he lives with his family and two cats.