- Salary
- $4k – $5k/mo
- Location
- South America
- Workplace
- Remote
- Type
- Full-time
- Department
- Company-Wide
- Seniority
- Lead
- Source
- Lever
Description
Engineering Manager / Tech Lead — Distro
Location: Remote Reports to: CEO Team: 2–3 engineers
About the role
Distro is an AI-powered recruiting platform. We connect to our customers' existing ATS, sync their jobs and candidates, and run an automated multi-stage pipeline that parses, scores, and interviews applicants using LLMs. AI isn't a feature bolted onto the product — it's the flow the product runs on.
We're looking for someone to lead that engineering effort: own the architecture, own the AWS environment it runs on, and grow a small team. This is a hands-on, full-stack role. You'll be writing code across the stack, not just reviewing it.
What you'll own
- The AI processing pipeline. A chained, asynchronous, multi-stage system built on queued jobs. Every stage depends on the last, and every stage involves a non-deterministic model call that can fail or return something subtly wrong. Keeping it correct, observable, and cost-efficient is the core technical challenge of the job.
- Full-stack feature work. Laravel on the backend, React on the front. You'll move between both — this isn't a backend role with occasional UI tickets.
- AWS infrastructure end to end. ECS, Aurora, S3 and supporting services. You're the person accountable for it, including keeping the bill under control.
- SOC 2 Type 2 compliance. We're certified and intend to stay that way. Expect evidence collection, control remediation, access reviews, and backup restoration testing as part of the normal rhythm.
- A small team. Two engineers today. Code review, technical direction, unblocking, and growth conversations are yours.
- Product input. Our engineers argue about what we build, not just how. If you want a seat at that table, it's here.
Stack
Backend: PHP / Laravel, Laravel Horizon, Redis, Aurora (MySQL)Frontend: JavaScript / TypeScript, ReactInfrastructure: AWS — ECS, Aurora/RDS, S3, CloudWatch, CloudFormation; DockerAI: OpenAI API — completions, structured outputs, vector stores, prompt caching, evaluationTooling: GitHub Actions, Jira, Claude Code
What we're looking for
Required
- 5+ years building and running production systems as a full-stack engineer — genuinely comfortable in both Laravel and React, not strong in one and passable in the other
- Strong PHP/Laravel, or strong equivalent experience in another modern backend framework with a real willingness to work in Laravel
- Hands-on AWS ownership — ECS, Aurora/RDS, and the operational side: monitoring, incident response, and cost optimization. Not "I've used AWS," but "I've been the person who gets called when it breaks and the person who noticed the bill was too high."
- Experience with asynchronous job processing: queues, workers, retries, idempotency, dead-letter handling
- Production experience with the OpenAI API — completions, structured outputs, vector stores — including handling non-deterministic output and controlling token cost at scale
- Fluent with AI-assisted development. We use Claude Code daily, and we expect you to work the same way: not just chat prompts, but planning, review, and repo-level context. You should be able to raise the team's ceiling here, not just keep up.
- Experience leading or mentoring engineers, formally or informally
- Professional working English
Nice to have
- SOC 2 or similar compliance experience
- ATS, HR tech, or recruiting domain knowledge
- Infrastructure as code (CloudFormation, Terraform, CDK)
- Experience building or integrating MCP servers or agentic workflows
Who does well here
- Owns outcomes, not tickets. The most valuable work anyone has done in this role wasn't assigned to them. If you need a fully specified backlog to be effective, this isn't the right fit.
- Thinks about the product, not just the implementation. Understands why we're building something and pushes back when the "why" doesn't hold up.
- Explains trade-offs clearly. Can say why one approach was chosen over another and what the long-term cost of that choice is.
- Comfortable being the most senior person on a problem. The team is small. There often isn't someone above you to escalate to.
- Uses AI with judgment. Knows when to reach for it and when not to, and owns whatever ships regardless of what wrote it.
- Coaches instead of blames. When something breaks, the first question is what made it possible, not who did it.
Distro is a product company. You'd be building and owning what we ship, not staffing someone else's roadmap.