Site Reliability Engineer
Who We Are
- We reward shoppers for digitizing their shopping experience.
- Our mission is to delight the world’s shoppers with a free smartphone app that is easy, smart and fun.
Why Join the Fetch Family?
- We make it better for users even when that's difficult for us
- We empower people with information and trust
- We challenge ideas, not people
- We think bigger and keep building
- We find ways to bring the fun to Fetch!
We're committed to building an empowered and inclusive community of innovative and passionate people. As a growing organization, we need team players who can go above and beyond their individual responsibilities to help our company build towards its vision. If you are a creative, hard-working, and fun-seeking person interested in working with a close-knit group of highly talented people, this is the right place for you.
Fetch Rewards is an equal employment opportunity employer.
Fetch’s next step in evolving the shopping experience will require a Site Reliability Engineer.
The Site Reliability Engineering (SRE) team combines software and systems engineering to build and run distributed, fault-tolerant systems at scale. SRE’s ensure that Fetch’s services - both our externally visible and internally critical systems - have reliability and uptime appropriate to our users’ needs. In addition, we keep an ever watchful eye on system capacity and performance. We’re proud to be our engineers’ engineers, and much of our software development focuses on optimizing existing systems, building infrastructure, and eliminating work through automation.
Fetch’s culture of diversity, intellectual curiosity, problem solving, and openness is key to our success. Our organization brings together people with a wide variety of backgrounds, experiences, and perspectives. We encourage them to collaborate, think big, and take risks in a blame-free environment. We promote self-direction to work on meaningful projects, while we also strive to create an environment that provides the support and mentorship needed to learn and grow.
- Experience programming in one or more of the following: Java, Python, Go, C/C++, etc.
- Experience with Unix/Linux operating systems internals, networking, or cloud platforms (i.e., AWS, Azure, GCP).
- Experience with analyzing and troubleshooting systems.
- Bachelor's degree in Computer Science, related technical field, or equivalent practical experience.
- Experience designing, analyzing, and troubleshooting distributed systems.
- Experience designing and developing software oriented towards systems or infrastructure automation.
- Ability to debug/optimize code and automate routine tasks.
- Systematic problem-solving approach, coupled with effective communication skills and a sense of ownership and drive.
- Engage in and improve the whole lifecycle of services - from inception and design, through deployment, operation, and refinement.
- Support services before they go live through activities such as system design consulting, developing software platforms and frameworks, capacity planning, and readiness reviews.
- Maintain services once they are live by measuring and monitoring availability, latency, and overall system health.
- Scale systems sustainably through mechanisms like automation, and evolve systems by pushing for changes that improve reliability and velocity.
- Practice sustainable incident response and blameless postmortems by participating in the on-call rotation.