Stream logo

Fullstack Engineer (Moderation)

StreamData Science

Job Description

About Stream

Stream powers real-time Chat, Video, Activity Feeds, and AI Moderation for more than 1 billion end users across 4,000+ apps, from Strava and Bumble to eBay and Patreon. Our platform processes billions of API requests per month and supports applications with millions of concurrent users, while delivering highly reliable, low-latency services and a great developer experience.

The role

We're looking for a Senior Full Stack Engineer I to join Stream on our mission of elevating the quality of apps for billions of users globally. You'll own the backend of our AI Moderation product: building new capabilities and making the Go services behind them cleaner, faster and more reliable.

This is a full-time role, hybrid with 3 days a week in our Toronto co-working space.

What you'll work on

You'll join our five-person Moderation team, which builds the product customers use to detect, review and act on harmful content in their apps. The role leans backend. Dedicated frontend engineers own the moderation dashboards, and you'll own the Go services, data model and integrations behind them, stepping into React when a feature spans the stack. You'll work closely with the team lead, our other Toronto-based engineer, Infrastructure, and the Customer Success and Support teams, and directly with customers' trust and safety and engineering teams.

Here's the honest current state: the product has grown fast and the backend has grown with it. There's real cleanup, refactoring and simplification to do, and you'll have the room to do it well. You'll also give the team coverage in North American hours, which today rests largely on one engineer.

Job responsibilities

  • Build new moderation features: design and ship Go services from database schema and API endpoints through to production rollout, including work on our new AI moderation flow.
  • Clean up the backend: refactor existing moderation services, reduce technical debt, simplify code paths and raise test coverage.
  • Improve reliability and performance: strengthen alerting and observability, and fix scaling and latency issues in the moderation pipeline.
  • Own third-party integrations: maintain and extend the AI and moderation providers that plug into the pipeline.
  • Keep production healthy: diagnose defects to root cause and take part in on-call, with a focus on North American hours.
  • Work with customers: troubleshoot their issues directly and bring what you learn back into the roadmap.
  • Work across the stack when needed: ship React changes alongside the frontend engineers and review your peers' code.

About you

You're a backend engineer at heart who is comfortable picking up frontend work when a feature needs it. You enjoy leaving a codebase better than you found it, and you'd rather simplify a service than add another layer to it. You like owning problems end to end, including the ones that show up in production or in a customer conversation.

You probably won't enjoy this role if you want a pure frontend position, a large team with a fixed process, or a job with no on-call. The team is small, the product is moving fast, and North American coverage is part of the job.

You have

  • 3+ years of professional software engineering experience, mostly on the backend.
  • Solid backend experience in Go, Python or a comparable language, and willingness to work in Go. We run a 10-week internal Go onboarding programme.
  • Experience designing REST APIs and relational data models (ideally Postgres), and working with Redis.
  • A track record of shipping features used at scale and of refactoring and improving existing production systems.
  • Working knowledge of React and TypeScript or JavaScript.
  • Experience with automated testing across client and server code.
  • Comfort working with customers and handling production incidents.

Bonus points

  • Exposure to trust and safety, content moderation or policy enforcement products.
  • Professional experience with Go.
  • Experience with GCP or another major cloud provider.
  • Experience integrating LLM or ML-based services into production systems.
  • Message queue experience.
  • Full-text search experience.
  • Open-source contributions.

What makes this role exciting

  • Scope: you'll own the backend of a product area, with the room to clean up and reshape it.
  • Impact: AI Moderation is one of Stream's growth products, and you'll help ship its new AI moderation flow and the features that come after it.
  • Stack: Go, Postgres, Redis and React on GCP, with Claude, Cursor and ChatGPT Codex as everyday tools.
  • Starting point: a small team where your work is visible from week one, and a second Toronto engineer to work with closely.

Why join Stream?

We're a Series B company with offices in Boulder, Amsterdam, Skopje and Toronto, and a team of 140+ people from 37 nationalities. We're backed by Felicis Ventures, GGV Capital, 01 Advisors, Techstars, and Arthur Ventures, with angels including Dick Costolo (ex-CEO of Twitter), Olivier Pomel (CEO of Datadog), Tom Preston-Werner (co-founder of GitHub), and Nicolas Dessaigne (co-founder of Algolia).

We'll be straight with you: a startup is more demanding than a large company. There's no fixed playbook, you'll own things end to end, and you'll sometimes pick up work outside your title. That's also what makes it a fast place to grow. If you want real ownership and high scale more than structure and a set career ladder, you'll feel at home here.

What we offer

  • A base salary of CAD 100,000 to 127,998 per year
  • Stream employees enjoy some of the best job benefits in the industry:
    • A team of exceptional engineers
    • The chance to work on OSS projects
    • 20 days of PTO first year of employment, 24 days starting your second year
    • Company equity
    • Extended Healthcare
    • Dental benefit
    • Long & Short-Term Disability
    • Life Insurance
    • Fitness stipend
    • A Macbook Pro provided
    • A Learning and Development budget
    • The opportunity to attend or present to global conferences and meetups
    • The possibility to visit our offices in Boulder, CO and Amsterdam, NL

Our culture

Stream is a casual, transparent team that aims high and supports each other. In engineering, we care about ownership and quality, and our goal is to ship stable software. Management stays hands-on, with less middle management and more time spent doing the work. If that sounds like the environment you want next, apply now.

Equal opportunity

Stream is an equal opportunity employer and welcomes applications from all qualified candidates. We don't discriminate based on any ground protected by the Ontario Human Rights Code. Accommodation is available on request for candidates taking part in all parts of the selection process.

This posting is for an existing vacancy. We don't use AI to screen, assess or select applicants. You must be legally entitled to work in Canada; we can't offer visa sponsorship or relocation for this role.

Hybrid office policy: applicants based (or relocating to) one of our office locations are expected to work according to the applicable local office attendance policy.

Equal opportunity employer statement: Stream provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.

This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.

Note for external recruiters: We currently have this role covered and do not accept unsolicited agency resumes. We are not responsible for any fees related to unsolicited resumes.

Next step

Ready to apply?

Stream · Worldwide · applications close Dec 1, 2026

Apply Now

How to apply

The Apply button opens Stream's own application page in a new browser tab — applying is free, and this board never sits between you and the employer: no middleman, no form of ours to fill first.

This posting runs on Ashby, the applicant tracking system behind Stream's job board — the form you'll see lives at jobs.ashbyhq.com. It asks for the basics first: your name, email, and a résumé/CV upload. After that come the custom questions this employer wrote for the role — Ashby lets each team tailor its application, and some postings add a short questionnaire on top, so set aside a few quiet minutes rather than a thirty-second sprint. Because the questions change per role, re-read the requirements above before you start typing; answers that echo the exact skills the listing names are the ones that survive screening. Two practical notes: apply promptly while the posting is verified live, since teams close applications once a role fills, and use one email address for the application so your details stay under one identity.

Before you start

Tailor your résumé to the skills this listing names — employers screen for the requirements they wrote.
Have your work-authorization details ready — citizenship, visas, and right-to-work countries come up on remote applications.
Use the listed range (CA$100k to CA$128k) as your anchor in salary talk — the employer published it, so it is a fair opening number.

Quick answers

Is this job still open?
Yes. Listings on this board are re-verified 4 times a day and auto-expire 45 days after posting — if this page is visible, the role was open at the last check.
Where does the Apply button go?
Straight to Stream's own application page — never a middleman. Every listing here comes from the employer's own job board, so the Apply button simply opens their page in a new tab.
Is the salary listed?
Yes — the employer publishes an annual range for this role: CA$100k to CA$128k.
Stream logo

Stream

View Company
9 active roles

About the job

Posted on Oct 16, 2026
Apply before Dec 1, 2026
full-time
Worldwide
Salary
CA$100k to CA$128k

Skills

ReactPythonGoTypeScriptJavaScriptGoogle CloudPostgreSQLRedisMachine Learning

Benefits

dental-insurance
stock-options
education-stipend
relocation-support

More Data Science roles

View all