AI Engineer
Build the Monastic Media Dashboard with Claude Code for your first three months, then build AI automation for our D2C clients.
- Department
- Engineering
- Type
- Full-time
- Location
- In-office, Surat
- Interview
- 30 minutes, in person, at our Surat office
Monastic Media runs performance marketing and ads videos for D2C brands: ₹40 Cr+ in ad spend managed, ₹175 Cr+ in revenue created for brands, 5+ years. The whole company runs on one product we build ourselves, the Monastic Media Dashboard: leads, calls, WhatsApp, billing, hiring, attendance, payroll and client reporting, on web, iPhone, Android, Mac and Windows. It is built with AI coding agents, every day.
Months 1 to 3: you build the Monastic Media Dashboard with Claude Code. Real requests from the team, shipped to production: React, Vite and TypeScript screens, Postgres tables and row-level security on Supabase, Deno edge functions, crons, and integrations with Meta, WhatsApp, Google, Slack and Zoho.
After that: we take what we built for ourselves to clients. You build AI automation and AI services for D2C brands, such as order and support agents, ad and reporting tools, and internal dashboards.
You work full-time from our office in Piplod, Surat, with the founder. Pay depends on what you have built, not on years. Apply with your own AI agent through our MCP server, one command in Claude Code:
claude mcp add --transport http monastic-media-careers https://api.monastic.media/functions/v1/careers-mcp
Cursor, VS Code and Claude Desktop setup: www.monastic.media/careers/ai-engineer. Or use the web form.
What you will do
- Ship features to the Monastic Media Dashboard every week with Claude Code: React and TypeScript screens, Supabase tables, row-level security and edge functions
- Write and check the migrations, policies and tests that keep client and team data private
- Connect the tools the team works in: Meta Ads, WhatsApp Business, Google Workspace, Slack and Zoho
- Build agents and MCP servers that take repeated work off the team: reports, follow-ups, hiring, support
- From month 4: scope and build AI automation projects for our D2C clients
What we look for
- Real shipped work: a GitHub profile or live links we can open
- TypeScript and React in production
- Postgres (Supabase or similar): schema design, SQL and row-level security
- Hands-on with LLM APIs, tool use, agents and MCP
- You use an AI coding agent (Claude Code, Cursor, Codex or similar) every day
- Full-time from our office in Surat
Nice to have
- Deno or Supabase Edge Functions
- Capacitor, React Native or other native app builds
- Meta Marketing API, WhatsApp Cloud API or Shopify APIs
- You have published an MCP server, a CLI or an open-source package
- You did the optional fast-track challenge
Apply from your terminal.
Our careers page is also an MCP server. Connect your AI coding agent, let it read the role, and apply from where you already work. It can read what we do and the open roles, read this job and its questions, fetch the fast-track challenge, upload your CV, submit your application, send the challenge and tell you where your application stands.
Claude Code
Run this once in your terminal:
claude mcp add --transport http monastic-media-careers https://api.monastic.media/functions/v1/careers-mcpCursor
Add this to ~/.cursor/mcp.json:
{
"mcpServers": {
"monastic-media-careers": {
"url": "https://api.monastic.media/functions/v1/careers-mcp"
}
}
}VS Code
Add this to .vscode/mcp.json:
{
"servers": {
"monastic-media-careers": {
"type": "http",
"url": "https://api.monastic.media/functions/v1/careers-mcp"
}
}
}Claude Desktop and claude.ai
Settings, Connectors, Add custom connector, then paste the server URL:
https://api.monastic.media/functions/v1/careers-mcpThen ask your agent
Read the AI Engineer role at Monastic Media and help me apply. Ask me before you submit anything.Your agent sends only what you approve. A CV is required, as a link or a file. Any other MCP client works too: the server URL is https://api.monastic.media/functions/v1/careers-mcp
Prefer a normal form? Apply on the web form
Creative fatigue flagger.
About 3 hours with Claude Code or your own AI coding agent. A strong submission is a fast track to the in-person interview. Skipping it does not count against you.
We run Meta ads for D2C brands. A creative's click-through rate (CTR) usually falls as the same people see it again and again. A media buyer needs to know which creatives have worn out compared with how each one did in its own first week, not against an account average.
Download the sample data (CSV)
Synthetic sample data, made up for this challenge. Not real ads and not any client's account. One row per creative per day, 1 to 28 Sep 2026. Columns: date, ad_id, creative_name, format, impressions, clicks, spend_inr.
The rules
- CTR = clicks / impressions.
- Baseline CTR = CTR over a creative's first 7 days with impressions above 0. A day with 0 impressions is a pause, not data.
- Current CTR = CTR over the last 7 days in the file.
- Drop = 1 - current / baseline.
- Flag a creative when the drop is 30% or more (make the threshold a parameter) and it had at least 5,000 impressions in the last 7 days.
- A creative with fewer than 14 days of delivery is 'too new to judge', and one under the impressions floor is 'not enough volume'. Neither is flagged.
- Explain every flag in one line a media buyer understands.
What to build
- A small web app: load the CSV (upload or URL) and list every creative with baseline CTR, current CTR, drop, a status (flagged, ok, too new, not enough volume) and a daily CTR sparkline, sorted by drop.
- The same logic as an MCP tool or a JSON API, for example flag_fatigued_creatives(csv_url, drop_threshold), returning the flagged creatives.
- Tests for the CTR maths, including a paused creative, a creative that launched late, a creative that recovers, and one with low volume.
What to send
- A public GitHub repo
- A live URL (any free host: Vercel, Netlify, Cloudflare, Deno Deploy, Supabase)
- A 2-minute screen recording (Loom, unlisted YouTube or Google Drive)
- The prompts you used and your CLAUDE.md (or AGENTS.md / .cursorrules), committed in the repo
How we judge it
- Correct numbers on the edge cases
- How you steered the agent: your prompts and CLAUDE.md
- Small, readable code that runs the first time
- A recording that shows it working from start to finish
Send it
After you apply, call submit_challenge(application_id, email, repo_url, live_url, video_url, prompts_url).
Or paste the four links into the Optional fast-track challenge box on the web form
Four steps, one interview.
- 1Apply with your AI agent or with the web form. Send your CV and links to work you have shipped.
- 2Optional for the AI Engineer role: do the fast-track challenge, about 3 hours with your coding agent.
- 3We read every application. If it is a fit, we invite you to a 30-minute interview in person at our office in Surat.
- 4Then a decision and an offer. The first 3 months are probation.
Where interviews happen
Monastic Media®, 3rd Floor, Stalwart Insignia,
University Airport Road, beside Shantiniketan,
Piplod, Surat, Gujarat 395007
