Our success is reliant on building teams that include people from different backgrounds and experiences who can elevate assumptions and ideas with fresh perspectives. We're dedicated to hiring the whole human, not just a resume. To that end, we look for a diverse pool of applicants-including those from historically marginalized groups. We would like to invite you to apply even if you don't think you meet all of the requirements listed below. We don't want a few lines in a job description to get between us and the opportunity to meet you.
About the Team/Role
The Queueing and Storage Systems (QSS) team is responsible for the “platform” of our databases (MySQL, PostgreSQL, DynamoDB, Redis/Elasticache, and more) and queues (Kafka, RabbitMQ) across the entire company. The team manages some of these centralized systems for the entire engineering organization, but is primarily an enablement squad -- helping enable other teams to effectively and efficiently manage their own persistent storage infrastructure.
To get there, we are developing tooling platforms to automate provisioning, deployment, management, and interactions with the next generation of databases and queues used by our application teams. Without deep experience scaling databases and queues, feature teams often make common mistakes trying to use these systems. We try to get out ahead of that, building solutions that will scale without running into common problems like hot spots, uneven load distribution, and general poor performance.
The QSS team is building a suite of tooling called SmartStore, a relational database development platform that is fully automatically deployed with a feature squad’s service. Schema management, change data capture, replication, denormalization, and aggregation is all managed automatically by the SmartStore platform. This allows teams to focus on all of the business logic around managing and querying for their entities, without the overhead of every team individually implementing nuanced platforms like entity change queues. This suite of tools will eventually extend into a full platform for real-time data processing/analytics, allowing different data stores to aggregate and roll up into new enriched data sources for the platform to leverage.
Your Daily Adventures Can Include
- Designing/building Kubernetes operators to automatically manage/provision infrastructure, scaling, deployment coordination, and credentials
- Maintaining the reliability and performance aspects for the databases and queues for the production Outreach platform
- Designing reusable storage platforms for feature squads to leverage
- Analyzing solutions and implementing best practices for our database clusters and other stateful components
- Prototyping new managed storage/queue solutions and access patterns for new services and feature roadmaps
- Developing solutions for migrating data between systems
- Providing database expertise to engineering teams (for example through reviews of database migrations, queries and performance optimizations)Supporting and debugging database production issues across services and levels of the stack
- Proactively designing/tuning monitors/alerts/dashboards to alert on symptoms and not on outages
- Documenting every action so your learnings turn into repeatable actions and then into automation.
What you'll Need to be Successful
- You love enabling your coworkers to be successful
- Experience operating scaled/high-throughput database and/or queue platforms in production systems
- Able to write high quality code in a programming language (e.g. Golang, Ruby, Scala, Elixir, Python) that deploys to a production environment used by customers
- Experience designing and supporting internal-facing tooling where the “customers” are your coworkers
- You thrive in an ambiguous environment that requires seeking out and collaborating with both your team and the rest of the company to design effective solutions
- Understanding of which details are important and ability to prioritize incremental delivery over long-term go-dark projects
- Willingness to learn new technologies (most of our time is spent in Golang, with a smattering of Ruby/Rails)You embody our core values. We are hungry craftspeople, we have grit, we are honest, we take ownership, we have each other’s back no matter what, we’re one with our customers, and we find strength in diversity and inclusion
Why You’ll Love It Here
• Generous medical, dental, and vision coverage for full-time employees and their dependents
• Flexible time off
• 401k to help you save for the future
• Company-organized and personal paid volunteer days to support the community that supports us
• Fun company and team outings (or virtual events these days!) because we play just as hard as we work
• Diversity and inclusion programs that promote employee resource groups like OWN (Outreach Women's Network), AAPI, Rainbow (LGBTQIA+), Gender+, LatinX, Black Excellence, Disability Community, and Veterans
• A parental leave program that includes not just extended time off but options for a paid night nurse, food delivery, gradual return to work, and the Gottman Institute's Bringing Home Baby course for new parents
• Employee referral bonuses to encourage the addition of great new people to the team
• Plus, unlimited snacks and beverages in our kitchen
• We’re an equal opportunity employer. All applicants will be considered for employment without attention to race, color, religion, sex, sexual orientation, gender identity, national origin, veteran or disability status