Customer.io is a marketing automation platform that helps teams send smarter messages using real-time behavioral data. They are seeking an experienced backend engineer to build and own the infrastructure that powers their data-intensive platform, tackling complex distributed systems problems and ensuring reliability at scale.
Responsibilities:
- Design and evolve distributed systems in Go to handle billions of daily events and messages and store and index petabytes of data
- Lead architectural decisions around performance, reliability, and real-time event processing
- Improve service-to-service communication through better APIs, messaging systems, and event-driven patterns
- Work across teams to uncover bottlenecks and system issues, and lead initiatives to resolve them for a smoother customer experience
- Tackle high-throughput challenges across data pipelines, queues, and scheduling infrastructure
- Able to debug production systems at scale using effective instrumentation, and resolve issues quickly and confidently
- Share knowledge and raise the bar through sharing your progress publicly with short videos, thoughtful writing, and mentorship
- Leverage AI tools to prototype, move faster, and make better decisions
Requirements:
- Deep experience with distributed systems and large-scale backend architecture
- Strong instincts around reliability, observability, and fault tolerance
- Comfort reasoning about performance, capacity, and trade-offs at scale
- Significant experience (typically 10+ years) building scalable, distributed systems in Go (or similar statically typed languages)
- Deep experience with databases - relational (MySQL, Postgres) and non-relational (DynamoDB, BigTable) - and how to make them fast
- Comfort working in cloud-native environments (AWS, GCP)
- Familiarity with APIs, observability, and operating production systems
- A bias for action over perfection, and pride in owning technical decisions
- A collaborative mindset — you raise the team around you
- Experience with event-driven systems, message queues, or data pipelines is a plus