Customer.io
Senior Backend Engineer
Job Summary
This role involves designing and building scalable distributed systems in Go, primarily in cloud-native environments like AWS or GCP. The engineer will collaborate across teams to troubleshoot issues, ensure system reliability, and own problems end-to-end from architecture to monitoring. Experience with relational databases and observability tools is valued, along with a bias for action and ownership. The company offers comprehensive benefits supporting employee well-being and growth, emphasizing ownership, collaboration, and technical excellence.
Required Skills
Benefits
Job Description
About Customer.io
Over 7,500 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.
We’re looking for experienced backend engineers who care deeply about reliability, performance, and scalability. You’ll design, build, and evolve the systems that power communication at massive scale - while helping us push the boundaries of what great engineering can look like.
What We Value
Ownership
You own problems end to end. You move fast, act like an owner, and thrive in ambiguity. You've led complex projects before, whether officially or not, and you're ready to do it again.
Engineers with product taste
You think like a user, not just an engineer. You care how your systems power real customer value - and how to make them better.
A healthy skepticism for “the way things are done.”
You bring rigor and creativity. Best practices matter - but never more than forward motion.
What You’ll Do
- Design and build distributed systems in Go that help customers send timely, relevant messages at scale
- Collaborate across teams to debug issues and deliver reliable solutions
- Own problems end to end - from architecture and schema design to testing, deployment, and monitoring
- 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
What we're looking for
- 7+ years of experience building scalable, distributed systems in Go
- Comfort working in cloud-native environments (AWS, GCP)
- Familiarity with relational databases (we use MySQL) and an understanding of performance tradeoffs
- Experience with observability tooling and operating production systems
- A bias for action over perfection, and pride in owning technical decisions
Compensation & Benefits
We believe in transparency. Starting salary for this role is $150,000 - $200,000 USD (or equivalent in local currency) depending on experience and subject to market rate adjustment.
We know our people are what make us great, and we’re committed to taking great care of them. Our inclusive benefits package supports your well-being and growth, including 100% coverage of medical, dental, vision, mental health, and supplemental insurance premiums for you and your family. We also offer 16 weeks paid parental leave, unlimited PTO, stipends for remote work and wellness, a professional development budget, and more.
Our Process
No gotchas, no trick questions - just a clear, human process designed to help both of us make an informed decision.
- Application - We review everyone with care. Tell us why you're interested.
- Recruiter Call (30 mins) - Let’s chat about what you’re looking for and how we work.
- Behavioral Interview (60 mins) - Talk with one of our hiring managers about your experience, values, and working style. We’ll explore topics like ownership, product thinking, and collaboration.
- Technical Interview (60 mins) - A collaborative system design conversation focused on scaling challenges.
- Take-Home Assignment - Complete a short, realistic task similar to what you’d work on here.
- Assignment Review Call (60 mins) - Walk us through your work and discuss tradeoffs, priorities, and how you’d iterate.
All final candidates will be asked to complete a background check and employment verifications as part of our pre-employment process.
Customer.io recognizes the stifling impact of systemic injustice on diverse communities. We commit to using our influence to increase inclusion and equity within the tech industry. We strive to build an inclusive team culture, implement bias-free hiring practices, and develop community partnerships to expand our global impact.
Zoom is the only video conference platform that we use, virtual interviews will be conducted using the video capability (i.e., not via the chat), and offers will be extended in writing on official Customer.io letterhead. Please be vigilant in all of your job search activity, and if you have any questions please contact [email protected].
Join us!
We believe in empathy, transparency, responsibility, and, yes, a little awkwardness. If you’re excited by what you read and want to build software that makes communication better for everyone—apply now.
Customer.io
Explore Customer.io, the data-driven platform for personalized customer journeys across all channels, fueled by first-party data.
See more jobsSafe Remote Job Search Tips
Verify Employer Thoroughly
Research the company's identity thoroughly before applying. Check for a professional website with contacts, active social media, and LinkedIn profiles. Verify details across platforms and look for reviews on Glassdoor or Trustpilot to confirm legitimacy.
Never Pay to Get a Job
Legitimate employers never require payment for applications, training, background checks, or equipment. Always reject upfront payment requests or demands for bank details, even if they claim it's for purchasing necessary work gear on your behalf.
Safeguard Your Personal Information
Protect sensitive data like SSN, bank details, or ID copies. Share this only after accepting a formal, written job offer. Ensure it's submitted via a secure company system or portal, never through insecure channels like standard email attachments.
Scrutinize Communication & Interviews
Watch for communication red flags: poor grammar, generic emails (@gmail), vague details, or undue pressure. Be highly suspicious of interviews held only via text or chat apps; legitimate companies typically use video or phone calls.
Beware of Unrealistic Offers
If an offer's salary or benefits seem unrealistically high for the work involved, be cautious. Research standard pay for similar roles. Offers that appear 'too good to be true' are often scams designed to lure you into providing information or payment.
Insist on a Formal Contract
Always secure and review a formal, written job offer or employment contract before starting work or sharing final personal details. Ensure it clearly defines your role, compensation, key terms, and conditions to avoid misunderstandings or scams.