Staff Software Engineer - Platform
At Sprout Social we are building software that is made to last. Our 20,000+ users rely on us daily to reliably connect them with their customers, so scalability and performance are top of mind. Code quality is an essential ingredient to keeping our platform flexible and rapidly reacting to changes in the market and social media networks.
We do not operate as lone wolves, cowboy coders, or “10x devs.” Instead, we’re building diverse, collaborative teams that get the best results sustainably. Platform developers work in tandem with web developers, QA, design, and management to drive our product initiatives to successful outcomes.
The Publishing team owns the message composition and campaign planning experiences in the Sprout Social application. Our tools allow our users to build and schedule campaigns of messages across their social networks, using message approval workflows to manage content and creators. The Publishing systems execute at scale while staying nimble enough to keep up with new capabilities being offered by social network APIs.
Within 1 month, you will:
- Complete Sprout’s New Hire training program alongside other new Sprout team members.
- Develop and deploy changes to our Java and Python production systems.
- Interact with MySQL data stores and NSQ messaging queues.
- Log into our remote Linux servers and monitor the status of our services.
- Focus on code quality with meaningful test coverage and legibility.
- Collaborate regularly with your product manager, QA engineers, and fellow developers to deliver value to our users.
- Decompose work into small, similarly sized units so that estimation is unnecessary.
- Get regular team feedback on your code through code reviews.
Within 3 months, you will:
- Work with your product manager and fellow developers to create and prioritize quarterly team goals.
- Contribute to our Agile culture of continuous improvement through retrospective meetings and experimentation-oriented thinking.
- Build connections with members from other teams through active networking and community building.
- Define and drive the MVPs of new features in tandem with the product manager and designers.
- Be the first line of defense against product outages and bugs while on support duty.
- Maintain and build upon systems that handle hundreds of thousands of messages a day.
- Write design documents, coordinate dependencies, and act as the domain owner for new projects.
Within 6 months, you will:
- Integrate and use monitoring and alerting tools to know about problems before our users.
- Mentor developers of all levels, helping them identify and accomplish growth goals.
- Create and manage concurrent, distributed systems.
- Build your engineering skills by attending in-house presentations, workshops, and training sessions.
- Lead technical design meetings with your teammates to walk through new feature ideas.
- Form a career growth plan with your manager and work towards it.
- Identify technical debt and performance bottlenecks within our systems, come up with a plan to improve the code, and get it pushed to production.
- Work and communicate effectively with other groups across the organization to ensure big-picture alignment and encourage cross-team collaboration.
- Partner with the Infrastructure team to improve your team’s ability to deliver reliable, highly available services.
Within 12 months, you will:
- Be the go-to expert of your teams’ systems at the company.
- Actively mitigate risk of failed delivery and missed deadlines through courageous, transparent communication with colleagues and stakeholders throughout a project life cycle.
- Own cross-organizational projects, demonstrating project management skills, consensus building, and strong leadership.
- Build effective working relationships between our Chicago and Seattle engineering teams.
- Have opportunities to contribute to in-house technical presentations and workshops that share your expertise with large groups of Sprout developers.
- Have opportunities to advocate for Sprout Engineering in the software community by participating/speaking at conferences, user groups, etc.
- 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.
Note: When applying please submit your favorite code samples and/or Github profile
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.
Team Sprout is a group of very talented, smart and passionate people with broad interests and backgrounds. We believe that true employee engagement cannot happen if you can’t bring your whole self to work, so we’re committed to building a diverse team, embracing an inclusive culture and investing in equity across our organization. That dedication is core to Sprout. We want all candidates, particularly those coming from traditionally underrepresented groups in the technology industry, to know they are welcome at Sprout.
We’re proud to regularly be recognized for software, product and company culture achievements. Our team’s shared belief in Sprout’s mission promotes a culture of openness, empowerment and fun. We have built a benefits program to match the strength of our team. This program includes:
- Insurance and benefit options that are built for both individuals and families, including generous company contributions
- Progressive benefit programs, like our parental leave program and free Divvy bike memberships
- High-quality and well-maintained equipment - your computer will never prevent you from doing your best
- Beautiful, convenient and state-of-the-art offices in Chicago’s Loop
- Solid programs in some of the staples: transportation, disability and life insurance
- Wellness initiatives to ensure both health and financial well-being of our team
- Breakfast and lunch options onsite, and more healthy snack options and beverages than you can imagine
- Growing corporate social responsibility program that is driven by the involvement and passion of our team members
Sprout Social is an equal opportunity employer. Anyone seeking employment here is considered without regards to race, color, religion, national origin or ancestry, sex (including sexual identity), age, physical or mental disability, pregnancy, veteran or military status, unfavorable discharge from military service, genetic information, sexual orientation, marital status, order of protection status, citizenship status, arrest record or expunged or sealed convictions, or any other legally recognized protected basis under federal, Illinois, or local law. We value the things that make us different and want to see how you can make our team better!