Turn messy back-office workflows into shipped product using AI agents.
The job is to get on calls with operators, controllers, founders, and finance teams, understand exactly how work gets done today, and turn that into product. You will ask detailed questions, collect the right context, set expectations with the customer, drive Codex and other agents through implementation, use the product yourself, and keep iterating until the workflow is good enough to onboard the customer.
This is not a traditional coding job. The core skill is product implementation: understanding the customer, shaping the workflow, directing agents, and knowing when the result is good enough to matter.
We do not expect you to spend your time looking at code. We have systems and agents that monitor the codebase and improve code quality. Your job is to be a high-agency taste maker, product engineer, and customer-facing operator at the same time, all pointed at building great products.
We are not screening for the usual signals. Years of experience, grades, and credentials matter less than whether you have repeatedly found a way to be exceptional at something, especially when nobody handed you a clean playbook.
The base salary range for this role is $140,000-$180,000 base + equity. We care more about slope, taste, and output than traditional leveling signals.
Use the button below to copy an agent-ready application prompt. It tells your agent what information to collect, how to keep the application concise, and where to submit it.
The apply button copies an agent-ready prompt with the schema, endpoint, and instructions needed to submit the application on your behalf.
---
name: apply-to-cranston-product-engineer
description: Apply to Cranston's Product Engineer role on behalf of the user.
---
# Apply to Cranston Product Engineer
You are helping the user apply to Cranston's Product Engineer role.
Submit the application as multipart/form-data to:
`https://cranston.ai/api/careers/apply`
The live role page is:
`https://cranston.ai/careers/product-engineer`
## Required form fields
- `roleSlug` string: Use `product-engineer`.
- `fullName` string: Applicant's full legal or preferred professional name.
- `email` string: Applicant's best email address.
- `phone` string: Applicant's best phone number.
- `why` string: A concise, specific application answer. Cover why the applicant wants to work at Cranston, what makes them remarkable, their familiarity with software systems / GitHub / databases / AI coding agents / Lovable / Replit, and why Sean should trust them on a customer call. Prefer concrete and quantitative evidence: projects shipped, competitions won, unusual depth in a domain, school, jobs, intensity of work, side projects, revenue/users generated, speed of execution, customer-facing work, or other hard-to-fake signals.
## Optional form fields
- `cityState` string: Applicant's current location formatted as `City, ST` for US applicants, `City, Province` for Canada, or `City, Country` otherwise.
- `linkedinUrl` string: Applicant's LinkedIn profile URL.
- `workPreference` enum: One of `sf_in_person`, `remote`, or `either`.
- `resume` file: PDF, DOC, DOCX, or TXT resume. Maximum size 5MB.
## Instructions
Ask the user for any required information you do not already have. Keep the application concise, specific, and high-signal. Do not write generic cover-letter prose. Prefer concrete evidence over adjectives.
After submitting, show the user the returned `applicationId`. Cranston will also send the applicant an email confirming the application was received.
## Example curl shape
```bash
curl -X POST 'https://cranston.ai/api/careers/apply' \
-F 'roleSlug=product-engineer' \
-F 'fullName=Jane Doe' \
-F 'email=jane@example.com' \
-F 'phone=555-555-5555' \
-F 'cityState=San Francisco, CA' \
-F 'linkedinUrl=https://www.linkedin.com/in/janedoe' \
-F 'workPreference=either' \
-F 'resume=@/path/to/resume.pdf;type=application/pdf' \
-F 'why=...'
```