Senior Software Engineer
Job Purpose
We're looking for a senior engineer who ships — AI systems, backend services, and the infrastructure that ties them together. We're an AI-first company. That means agentic systems that surface stories before they break, RAG pipelines that turn our archive into queryable institutional knowledge, and workflows that automate production across the organization. You'll build these systems — not prototype them, ship them. You'll work on a modern TypeScript/Next.js stack while helping migrate legacy PHP and .NET systems. You report directly to the CTO. Your focus is backend, AI, and cross-cutting architecture.
Responsibilities
AI Agents & Systems (50%)
- Build agentic systems that scrape, monitor, and alert our newsroom — so our journalists know about stories before they break
- Build and maintain RAG pipelines that turn our archive into queryable institutional knowledge
- Design and ship agentic workflows that automate processes across the company
- Ship production-ready AI systems end-to-end — from data ingestion to deployment
Hands-on Engineering (50%)
- Ship code on our highest-priority projects — both greenfield Next.js products and legacy system maintenance during migration
- Help drive the migration from PHP and .NET to TypeScript/Next.js
- Write technical plans for complex features and participate in code reviews
Must have
- 5+ years of professional software engineering experience
- Strong TypeScript and Next.js skills (or proven ability to ramp fast)
- Experience maintaining legacy codebases (PHP or .NET)
- You've built and shipped agentic systems and agentic workflows in production — scraping pipelines, monitoring tools, multi-step automated workflows — using LLM APIs and frameworks like LangGraph, CrewAI, AutoGen, or similar. We want to see what you've delivered, not what you've demoed
- You've built RAG pipelines in production — vector databases, embedding-based retrieval, document ingestion at scale
Nice to have:
- Experience in media or publishing
- Experience leading a migration from legacy to modern stack
- DevOps familiarity (CI/CD, deployment pipelines)