21 Oct
|
Foreplay
|
Canada
Careers / Principle Engineer / VP of Engineering
Principle Engineer / VP of Engineering
Location: Remote. Canada or US, Eastern-time overlap
Reports to: Founder (product direction) and General Manager (cadence and priorities)
Team: 4 engineers plus contractors today. You grow it to 7 or 8.
Split: 50% in the code, 50% working on the system rather than in it
About Us:
Foreplay.co redefines the way marketers engage with ads—empowering them to save ads into a personalized swipe file, curate briefs, and spy on competitors’ entire ad libraries.
Founded in 2021, Foreplay is a quick-growing, bootstrapped, and profitable SaaS company building the future of ad creative workflows. Based in Toronto, Canada, with a fully remote team across multiple countries, we’re a scrappy and fast-moving startup focused on helping marketers discover, analyze, organize, and leverage the best-performing ads.
Today, more than 10,000 marketers, brands, and agencies use Foreplay to make their creative research and advertising workflows faster and more effective.
The Role
This is a player-coach role. Half your week is in the code. The other half is deciding what the code should be, who builds it, and how. If you want a seat where you only manage, this is NOT it. If you want a seat where you only code, this is not it either.
You inherit a real distributed system: an event-driven pipeline that ingests about 2 million new unique ads a day from public ad libraries, enriches them on a self-hosted GPU fleet (transcription, creative classification, embeddings), and projects them into a 220-million-document semantic search index, a 50-billion-row ClickHouse warehouse, and a public API and MCP server that sell the corpus as data.
Alongside it sits Lens, a performance-analytics product that pulls directly from Meta, TikTok, and LinkedIn ad accounts and compiles metric definitions into ClickHouse SQL at query time. It runs on about 80 bare-metal servers, across roughly 40 services and 70 repositories, in Node, Python, and Vue.
It works, it makes money, and it was built fast by a small number of people. Some of it exists in two generations at once. Some of it lives in one person’s head. Your job is not to rewrite it. Your job is to make it boring to operate, retire what should be retired, and ship on top of it faster than we ever have, using agents to do most of the typing.
On that last point we are not neutral. We believe software development has changed permanently, and that the teams who win will be the ones who direct agents well, not the ones who type fastest. You will lead that shift here. By the end of your first quarter, routine code at Foreplay should be written and routine bugs squashed without a human in the loop, and the humans should be spending their time on the problems that deserve them.
What You Will Own
The platform
Every service, every queue, every store, every server. You decide what gets consolidated, what gets retired, and what gets left alone. You own uptime, cost,
and the fact that nobody at Foreplay should learn about an outage from a customer.
The way we build
You define how work gets scoped, how agents are directed, how their output is reviewed, and how that scales across 70 repos and a growing team. Work is scoped as projects and jobs-to-be-done in Linear today; you will make it AI-first and AI-led.
The team
Five engineers today, each of whom owns a piece of the system nobody else knows. You end that. You grow the team to 7 or 8, run their 1:1s, set their scorecards, and hold the standard. If you have people you trust and want to bring, we want to meet them.
Shipping
You work with the founder and GM on what gets built, then you make sure it ships. You will personally ship things customers can see. Product opinion is expected.
Who we are looking for
-
- At least 5 years shipping production code before coding agents existed. You have been paged. You have run a migration that went sideways. You know what a Kafka consumer lag number means at 2am.
- Fully bought in on agentic software development, with a specific and defensible opinion on how agent-driven work should be scoped, implemented, reviewed, and scaled. “I use Copilot” is not an opinion.
- Still in the code and planning to stay there. You are comfortable running agents across many repositories at once, and you know the difference between that and typing in one.
- Language-agnostic. Our stack is Node, Python, and Vue on Cloudflare, Kafka, ClickHouse, Postgres, MySQL, Firestore, and Elasticsearch. You should recognize most of it, but what matters is that you can read an unfamiliar codebase, ship a correct change in it, and
📌 Principle Engineer (Canada)
🏢 Foreplay
📍 Canada