Senior AI Automation Developer (Claude Code) - Beautiful UX + Bulletproof Backend

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

800

HOURS PER WEEK

45

DATE UPDATED

Jul 3, 2026

JOB OVERVIEW

We sell across Europe and run multiple brands on one central engine. AI is not a side project here. It is how we run the company, and I am hiring one senior developer to build it with me.

You will work directly with me, the owner. No agency, no project manager in between.

Why this role is different

Most automation developers build things that work but look like a spreadsheet from 2009. That is not good enough here. Everything you build goes into our internal dashboard, the tool my whole team opens every morning. It has to work flawlessly AND feel great to use. Clean, fast, intuitive, something people actually enjoy.

So this role is two things in one person:

A backend/AI engineer who builds automations that survive month two
A frontend developer with real UX sense who makes the experience beautiful
If you only have one of the two, this is not your job. If you have both, keep reading.

The work

Built with Claude Code and the Anthropic API, straight into our dashboard. Examples from the current list:

Pipelines that generate highly realistic AI product and model images, at scale, with consistent quality
Flows that read incoming emails and answer them automatically, and move internal processes between departments without a human in the loop
New Shopify stores set up from scratch: products, metafields, collections, bulk operations
Crawlers that pull information from the internet (competitors, suppliers, trends) and turn it into clean data our dashboard can use
AI agents on top of Shopify, Klaviyo, Meta, Gorgias and ---------- that do not just report, but act
Replacing fragile Make/Zapier flows with robust, monitored code
And for every single one of these: an interface in the dashboard that is simple, polished and a pleasure to use
You get a written brief with user stories. From there it is yours: UX, architecture, build, deploy, monitoring. If it breaks at 2 AM, you find out from your own alerting, not fro ---------- .

What you must bring

Frontend and UX:

You design and build interfaces that non-technical people love: clear layouts, sensible defaults, loading states, empty states, error states, all of it
Strong modern frontend skills (React or similar, TypeScript, component thinking)
An eye for detail: spacing, typography, hierarchy. You notice when something is 2 pixels off
You can show me dashboards or tools you built that look genuinely good
AI and Claude Code:

Claude Code or similar agentic tools used for real work, not just ChatGPT chats
Anthropic API: tool use, structured outputs, prompts that stay stable in production, cost control
Image generation APIs (FLUX, Gemini or similar) with consistent, realistic results
You test AI outputs so automations never fail silently
Integrations and backend:

Shopify Admin API and GraphQL at a senior level, including store setup from scratch (must-have)
REST APIs in general: Klaviyo, Meta, Gorgias, ---------- or similar

Email
parsing and automated replies done safely
Web scraping with Playwright/Puppeteer and turning messy data into clean structured data
Webhooks, cron, queues, retries, idempotency, logging, alerting
Security (must-have):

Secrets handling, least-privilege API keys, access control
GDPR awareness. You will touch EU customer data
How you work:

100% self-driven: from written brief to deployed, monitored, polished solution without hand-holding
Short daily update (text or Loom) without being asked
You push back. If my brief is wrong, I want to hear it before you build it, not after
You own your mistakes and fix them
Strong written English. Almost everything we do is async
The setup

Full-time, long-term. I hire for years, not projects
100% remote, flexible hours, with 3-4 hours overlap with European mornings (CET)
Direct line to the owner and real influence on what we build
A company where AI is the strategy. Your work is used by the entire team every single day
How to apply

This is the first test. Follow it exactly.

Start your application with the words: RUNS IN PRODUCTION
Link or short video (Loom is fine) of an automation YOU built that is live in production right now
Screenshots or a link to a dashboard/interface YOU designed and built. I want to see your UX taste
What broke in month two, and how did you fix it?
Two or three sentences about your Shopify API experience
Skip any of the five points and your application will not be read. Follow them and I will personally read it.

Process: application, one video interview, one technical conversation, decision. Shortlisted candidates hear from us within a week.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0394
Total Execution Time  0.0408
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,525,008 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Senior-AI-Automation-Developer-Claude-Code-Beautiful-UX-Bulletproof-Backend-1681818
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0342 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1681818
 LIMIT 1 
0.0012   SELECT *
FROM `employers`
WHERE `employer_id` = 174244
 LIMIT 1 
0.0007   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1681818
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-13',ej.date_added) duration_daysDATEDIFF('2026-08-13',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-13',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1681818' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1681818 
0.0007   UPDATE employer_jobs SET hit_counts '***Jul-03-2026=520***Jul-04-2026=141***Jul-05-2026=126***Jul-06-2026=123***Jul-07-2026=43***Jul-08-2026=29***Jul-09-2026=14***Jul-10-2026=12***Jul-11-2026=2***Jul-12-2026=3***Jul-13-2026=1***Jul-14-2026=11***Jul-15-2026=7***Jul-16-2026=8***Jul-17-2026=11***Jul-18-2026=6***Jul-19-2026=2***Jul-20-2026=5***Jul-21-2026=6***Jul-22-2026=6***Jul-23-2026=3***Jul-24-2026=8***Jul-25-2026=1***Jul-26-2026=10***Jul-27-2026=12***Jul-28-2026=8***Jul-29-2026=10***Jul-30-2026=9***Jul-31-2026=26***Aug-01-2026=9***Aug-02-2026=6***Aug-03-2026=5***Aug-04-2026=1***Aug-05-2026=5***Aug-06-2026=4***Aug-07-2026=4***Aug-08-2026=4***Aug-12-2026=1***Aug-13-2026=1' WHERE job_id'1681818'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jul-2026=1163***Aug-2026=40' WHERE job_id'1681818'  
0.0006   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1681818' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1681818 
0.0281   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '174244'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)