At Sprout Social we are building software that is made to last. Our 20,000+ customers depend on us daily to connect them with their customers, so reliability, scalability, and performance are top of mind. Our software is used by companies like the Chicago Bulls, Sony Electronics, Indiana University, Make-a-wish Foundation, Edelman, and Subaru to create stronger relationships with their customers through social media. Each day, our platform processes 10s of millions of social media messages and our APIs handle over 10 billion requests per year to deliver our software to customers in over 100 countries.
On our Database Reliability engineering team, we strive to create “Paved Roads”: standard production-ready technology that all of our engineering teams can leverage to deliver value quickly. We work to improve all aspects of engineering through automation, observability of metrics, and clear processes in order to build sustainable and fault tolerant solutions. Learning from system failures and human mistakes is part of our culture. We are stewards of our data layer but not gate keepers to it, and we work to empower teams to take on production ownership as much as possible.
We do not operate as lone wolves or “10x devs.” Instead, we are building diverse, collaborative teams that get the best results sustainably. Our Site Reliability Engineers work in tandem with Web, Platform, and QA Engineers to drive our product initiatives to successful outcomes. And we do so by working with database technologies like MySQL, Elasticsearch, Hadoop, and Vault, and we build with Chef, Terraform, and Java.
We are looking for a creative, collaborative, highly motivated, and pragmatic engineer to help us design and build reliable, scalable, performant systems that empower engineers to rapidly and safely deliver value to our customers. If this sounds like you and you want to be on a team that has a huge impact across all of engineering, we’d love to talk with you!
These are the minimum qualifications that our hiring team is looking for in this role:
- 3+ years experience with one or more infrastructure-as-code or configuration-as-code tools, such as: Terraform, Chef, Ansible, SaltStack, etc.
- 2+ years with one or more Cloud providers; AWS, GCP, or similar
- 1+ years operating and maintaining relational databases like MySQL, MariaDB, Postgres, etc.
Additionally, these are the preferred qualifications that would indicate a particularly strong candidate:
- 1+ years working with Hadoop
- 2+ years experience in at least one programming language, such as Python, Java, Golang, Ruby, etc.
- Experience with AWS Managed Database services like RDS, Elasticsearch and Aurora
Within 1 month, you will:
- Experience Sprout’s in-depth onboarding, covering everything from our company mission and values, hearing directly from executives and founders, to deep training on our products and the value that Sprout delivers to our customers
- Make a plan with your manager to set initial priorities, align on expectations for your role, plant goalposts for your career, and learn about Sprout’s approach to site reliability engineering
- Contribute to feature work
- Interact with our hosting platforms and perform operations tasks
- Collaborate with your team members and fellow developers to deliver value to our users
- Receive feedback on pull request(s) and actively pair with teammates
- Shadow a team member for an on-call rotation
- Learn about and interact with some of our key storage technologies: MySQL, Cassandra, Elasticsearch, Hadoop
Within 3 months, you will:
- Contribute to our secrets management toolchain powered by Hashicorp Vault
- Complete your first end to end project, such as a new infrastructure deployment using Chef and Terraform
- Gain familiarity with our platform architecture
- Learn about our use of NSQ in our streaming data ingest pipeline
- Use our observability tools to troubleshoot production performance or stability issues
- Join our on-call rotation (don’t worry we’ve got your back!)
- Focus on code quality with meaningful test coverage
- Participate in code reviews and give feedback to team members
- Contribute to our team’s culture of continuous improvement through retros and experimentation-oriented thinking
- Proactively identify, document, and schedule future work to be done, working toward eliminating operational toil
Within 6 months, you will
- Migrate critical database systems to technologies like AWS Elasticache and Aurora
- Help complete a impactful project that is well-baked and bug-free
- Write design documents, gather feedback from peers, coordinate dependencies, and be a domain owner for a new project
- Form a career growth plan with your manager and begin work towards it
- Accidentally break something, recover, and learn from it
- Interact with and maintain distributed systems
- Build effective working relationships with team members across engineering through active networking, collaboration, and community building
- Have your first performance conversation with your manager, where you’ll discuss your accomplishments in your role and work together to build goals for your professional growth
- Influence other developers and model engineering best practices
- Help promote DevOps culture by working with engineers to assume operational ownership
Within 12 months, you will
- Make key decisions designing and building out our big data platforms
- Be comfortable and confident in most technical aspects of your team’s core systems and services
- Continue growing your knowledge of our environment and services
- Actively mitigate risk of poor quality or missed deadlines
- Continually evaluate and refine your technical toolkit: teach what you learn to the team
- Retire a service that is EOL and clean up artifacts
- Have opportunities to contribute to in-house technical presentations and workshops that share your expertise with large groups of Sprout engineers
- Have opportunities to advocate for Sprout Engineering in the software community by participating/speaking at conferences, user groups, etc.
- Mentor junior engineers via pairing, design review, and code review
- Surprise us! Use your unique ideas and abilities to change Sprout Engineering in beneficial ways that we haven’t even considered yet
Of course, what is outlined above is the ideal timeline, but things may shift based on business needs and other projects and tasks could be added at the discretion of your manager.
About Sprout Social
Sprout Social powers open communication between individuals, brands and communities through elegant, sophisticated software. We are relentless about solving hard problems for our customers and committed to both customer and team success. Our team’s shared belief in Sprout’s mission promotes a culture of openness, empowerment and fun.
We’re proud to regularly be recognized for our team, product and culture. Our benefits program includes:
- Insurance and benefit options that are built for both individuals and families
- Progressive policies to support work/life balance, like our flexible paid time off and parental leave program
- High-quality and well-maintained equipment—your computer will never prevent you from doing your best
- Wellness initiatives to ensure both health and mental well-being of our team
- Ongoing education and development opportunities via our Grow@Sprout program, employee-led diversity, equity and inclusion initiatives and mentorship programs for aspiring leaders
- Growing corporate social responsibility program that is driven by the involvement and passion of our team members
- Beautiful, convenient and state-of-the-art offices in Chicago’s Loop and downtown Seattle, for those who prefer an office setting