cover image
Scribd, Inc.

Backend Software Engineer (Python)

Hybrid

Toronto, Canada

Mid level

Full Time

11-11-2025

Share this job:

Skills

Python Scala Data Engineering Monitoring Prioritization Research Machine Learning AWS Spark Databricks Terraform

Job Specifications

About The Company

At Scribd (pronounced “scribbed”), our mission is to spark human curiosity. Join our team as we create a world of stories and knowledge, democratize the exchange of ideas and information, and empower collective expertise through our four products: Everand, Scribd, Slideshare, and Fable.

We support a culture where our employees can be real and be bold; where we debate and commit as we embrace plot twists; and where every employee is empowered to take action as we prioritize the customer.

When it comes to workplace structure, we believe in balancing individual flexibility and community connections. It’s through our flexible work benefit, Scribd Flex, that employees – in partnership with their manager – can choose the daily work-style that best suits their individual needs. A key tenet of Scribd Flex is our prioritization of intentional in-person moments to build collaboration, culture, and connection. For this reason, occasional in-person attendance is required for all Scribd employees, regardless of their location.

So what are we looking for in new team members? Well, we hire for “GRIT”. The textbook definition of GRIT is demonstrating the intersection of passion and perseverance towards long term goals. At Scribd, we are inspired by the potential that this can unlock, and ask each of our employees to pursue a GRIT-ty approach to their work. In a tactical sense, GRIT is also a handy acronym that outlines the standards we hold ourselves and each other to. Here’s what that means for you: we’re looking for someone who showcases the ability to set and achieve Goals, achieve Results within their job responsibilities, contribute Innovative ideas and solutions, and positively influence the broader Team through collaboration and attitude.

About The Team

The ML Data Engineering team powers metadata extraction, enrichment, and content understanding across all Scribd brands. We process hundreds of millions of documents, billions of images, and deliver high-quality metadata to enable content discovery and trust for millions of users worldwide.

Our systems operate at massive scale, supporting diverse datasets like user-generated content (UGC), ebooks, audiobooks, and more. We work at the intersection of machine learning, data engineering, and distributed systems, collaborating closely with applied research and product teams to deploy scalable ML and LLM-powered solutions in production.

Role Overview

We’re seeking a Software Engineer II with deep experience building event-driven, distributed, and scalable systems in Python. In this role, you’ll design and optimize large-scale data and service pipelines running on AWS, supporting Scribd’s content enrichment and metadata systems. You’ll work closely with cross-functional teams to design reliable backend services that integrate machine learning models and LLM-based components when needed. This role offers the opportunity to work on cutting-edge generative AI and metadata enrichment problems at a truly global scale.

Tech Stack

Our backend systems are primarily built in Python, leveraging AWS services such as Lambda, ECS, SQS, and ElastiCache for event-driven and distributed processing. We also use Airflow, Spark, Databricks, Terraform, and Datadog for orchestration, data processing, and observability.

Key Responsibilities

Design and implement event-driven, distributed systems to extract, enrich, and process metadata from large-scale document and media datasets.
Build and maintain scalable APIs and backend services for high-throughput content processing.
Leverage AWS services (ECS, Lambda, SQS, ElastiCache, CloudWatch) to design and deploy resilient, high-performance systems.
Collaborate with cross-functional teams to deliver backend solutions that power ML-driven features.
Optimize and refactor existing backend systems for scalability, reliability, and performance.
Ensure system health and data integrity through monitoring, observability, and automated testing.

Requirements

5+ years of professional software engineering experience on Python or distributed systems development.
Strong proficiency in Python (3+ years). Experience with Scala is a plus.
Proven experience designing and building event-driven, distributed, and scalable systems.
Hands-on experience with AWS services (ECS, Lambda, SQS, SNS, CloudWatch, etc.).
Experience with infrastructure-as-code tools like Terraform.
Solid understanding of system performance, profiling, and optimization.
Bachelor’s degree in Computer Science or equivalent professional experience.
Bonus: Familiarity with data processing frameworks (Spark, Databricks) and workflow orchestration tools.
Bonus: Experience integrating ML or LLM-based models into production systems.

At Scribd, your base pay is one part of your total compensation package and is determined within a range. Our pay ranges are based on the local cost of labor benchmarks for each specific role, level, and geographic location. San Francisco is our

About the Company

Scribd, Inc. is a multinational technology company focused on the written and spoken word. Our three brands -- Everand(tm), Scribd(r), and SlideShare(r) -- deliver knowledge, information, and inspiration to billions of people across the globe. Know more