Sprout Social

Senior Software Engineer - Back End

Remote Canada
Java Python SQL
This job is closed! Check out or
Description

Description

Sprout Social is looking to hire a Senior Software Engineer to the Engineering team.

Why join Sprout’s Engineering team?

With collaborative cross-functional teams that span mobile, front-end, back-end, QA and site reliability engineering—the Sprout Engineering team is a place to sharpen your craft and solve hard problems with the smartest people in the industry. You’ll get to work on a “tech-giant” scale with smaller, supportive teams where every engineer has the chance to make an impact on our company, and our customers. The best part? In our industry, you often have to switch jobs or even companies to learn a new part of a tech stack or business. But at Sprout, our product is a suite, so you just need to move teams. You’re able to diversify your skills, which not only benefits your team—but also your career. 

What you’ll do

  • Ensure we build, scale, ship, and monitor our platform reliably.
  • Embed in one of our engineering squads to work on both product focused and infrastructural roles.

What you’ll bring

We’re looking for a creative, collaborative, highly motivated, and inquisitive learner to help us deliver a great product to our customers. If you’re passionate about building and scaling reliable systems, we’d love to talk with you!

These are the minimum qualifications that our hiring team is looking for in this role:

  • 4+ years experience developing and supporting software in a production environment
  • 3+ years experience programming in object oriented languages such as Java, Python, or C++

Additionally, these are the preferred qualifications that would indicate a particularly strong candidate:

  • 3+ years experience developing and supporting scalable, distributed backend services
  • 3+ years experience working with databases

How you’ll grow

  • Complete Sprout Social’s new hire training & onboarding program alongside other new Sprout team members. You’ll gain a broader understanding of our products and how your role fits into the organization.
  • 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 building software.
  • Interact with SQL or NoSQL data stores and NSQ messaging queues.
  • Collaborate regularly with product managers, QA engineers, and other product teams to deliver value to our users.
  • Get regular team feedback on your work through code reviews and pairing.
  • Log into our remote Linux servers and monitor the status of our services. 

Within 3 months, you will:

  • Build connections with members from other teams through guild meetings and chapter outings.
  • Decompose work into small, similarly sized units so that estimation is unnecessary.
  • Work with your squad to create and prioritize quarterly team goals.
  • Contribute to our Agile culture of continuous improvement through retrospective meetings and experimentation-oriented thinking.
  • Participate in technical design meetings with your teammates to walk through new feature ideas.
  • Work with product managers, UX developers, and front-end engineers to come up with the MVPs of new features.
  • Be the first line of defense against product outages and bugs while on support duty.
  • Maintain, scale, and build upon systems that handle hundreds of thousands of messages a day. 

Within 6 months, you will:

  • 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.
  • Integrate and use monitoring and alerting tools to know about problems before our users.
  • Be “point person” on a project, including writing design documents, coordinating dependencies, and acting as domain owner.
  • Create and manage concurrent, distributed systems.
  • Build your engineering skills by attending in-house presentations, workshops, and training sessions.
  • Form a career growth plan with your manager and work towards it.
  • Partner with the Infrastructure team to improve your team’s ability to deliver reliable, highly available services.

Within 12 months, you will:

  • Actively mitigate risk of failed delivery and missed deadlines through courageous, transparent communication with colleagues and stakeholders throughout a project life cycle.
  • Lead technical architecture meetings. 
  • Identify technical debt and performance bottlenecks within our systems, come up with a plan to improve the code, and get it pushed to production.
  • Mentor junior engineers, helping them level up technically.
  • Build connections with members from other teams through active networking and community building.
  • Have opportunities to contribute to in-house technical presentations and workshops that share your expertise with large groups of Sprout engineers.
  • Surprise us! Use your unique ideas and abilities to change your team 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.

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

Candidates for this remote work opportunity must be based in either British Columbia or Ontario. If you are based in another location within Canada, we aren’t able to hire in your location at this time; however, if you’d like to stay in touch with us in case that changes in the future, please apply and we’ll save your application for possible future consideration.

#LI-Remote

When you apply for employment with Sprout Social, we will process your job applicant data, including your employment and education history, transcript, writing samples, and references as necessary to consider your job application for open positions. Your personal data will be shared with Greenhouse Software, Inc., and Crosschq, Inc., cloud services providers located in the United States of America and engaged by Sprout Social to help manage its recruitment and hiring process on Controller’s behalf. Accordingly, if you are located outside of the United States, by clicking “Submit Application” on this site, you consent to the transfer of your personal data to the United States. For more information about our privacy practices please visit our Privacy Policy. California residents have additional rights and should review the Additional Disclosures for California Residents section in our Privacy Policy.

There are more than 50,000 engineering jobs:

Subscribe to membership and unlock all jobs

Engineering Jobs

50,000+ jobs from 4,500+ well-funded companies

Updated Daily

New jobs are added every day as companies post them

Refined Search

Use filters like skill, location, etc to narrow results

Become a member

🥳🥳🥳 210 happy customers and counting...

Overall, over 80% of customers chose to renew their subscriptions after the initial sign-up.

Cancel anytime / Money-back guarantee

Wall of love from fellow engineers