
Customer.io is looking for a Staff Software Engineer to set technical direction for the distributed systems that move billions of messages a day. This role is about deciding what gets built, where the architecture needs to go next, and raising the engineering standard across teams.
About Customer.io
Over 9,000 companies — from scrappy startups to global brands — use our platform to send billions of emails, push notifications, in-app messages, and SMS every day. Customer.io powers automated communication that people actually want to receive.
We help teams send smarter, more relevant messages using real-time behavioral data. Under the hood: Go, React, Ember, and AI help us ship fast and scale with confidence.
What We Value
- Ownership at company scale: You take on problems across squads that have no obvious owner and drive them to resolution.
- Engineers with product taste: You think like a user, connecting architectural decisions to end-customer experience.
- A healthy skepticism for "the way things are done": You retire practices that have outlived their usefulness in favor of forward motion.
- Force multiplication: Your impact is measured by what the broader department can now accomplish.
What You'll Do
- Shape the technical direction of distributed messaging systems in Go, making architectural decisions where scale, cost, and reliability intersect.
- Tackle ambiguous, high-stakes problems across squads and guide them to decisive outcomes.
- Build consensus on contested technical questions and communicate tradeoffs clearly to senior leadership.
- Raise the technical bar by setting quality and design standards, mentoring senior engineers, and creating reusable frameworks and documentation.
- Drive engineering process and tooling improvements across multiple squads.
- Interview and calibrate against our career ladder, delivering honest, evidence-based candidate evaluations.
- Leverage AI agents for multi-file changes by scoping work, writing prompts, and validating output.
What We're Looking For
- 10+ years building scalable, distributed systems in Go (or similar statically typed languages), including multiple years as a go-to architectural lead.
- Breadth and depth across multiple systems or technical domains.
- Proven track record of designing for production realities, quantifying throughput, cost, and reliability tradeoffs.
- Experience embedding observability and recovery (metrics, alerting, rollback, backpressure, checkpointing) as core architectural components.
- Comfort in cloud-native environments (AWS, GCP) and working with relational databases (MySQL) with deep performance understanding.
- Demonstrated commitment to elevating peers through mentorship, design reviews, and lasting engineering standards.
- A bias for action coupled with sound technical judgment on when to slow down for critical decisions.
Compensation & Benefits
- Base Salary: $200,000 - $240,000 USD (or local currency equivalent, subject to market adjustments)
- Annual Bonus Target: 10%
- 100% coverage of medical, dental, vision, mental health, and supplemental insurance premiums for employees and dependents
- 16 weeks paid parental leave
- Unlimited PTO
- Remote work stipend and wellness stipend
- Professional development budget
Interview Process
- Application Review
- Recruiter Call (30 mins)
- Hiring Manager Interview & AI-assisted Coding Exercise (60 mins)
- Architecture & System Design Interview (60 mins)
- Take-Home Assignment
- Assignment Review Call (60 mins)
Timezone overlap
UTC-8–-3
Benefits
Bonus, Health, Dental, Vision, Mental health, Parental leave, Unlimited PTO, Home office, Wellness, Learning, Equity, PTO
Open to
NA · LATAM
Sign in to track applications and earn points.