AI Chief of Staff — Build and Run AI Systems Alongside the Principa

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

TYPE OF WORK

Part Time

SALARY

13

HOURS PER WEEK

15

DATE UPDATED

Oct 3, 2026

JOB OVERVIEW

**AI Chief of Staff — Build and Run AI Systems Alongside the Principal**

**Job Overview**

Australian professional services principal (CFO advisory and a migration agency; firm names disclosed to shortlisted candidates) looking for one person to work directly with me, every day, to build and operate AI across my businesses and my personal workflow.

This is not a project role with a fixed scope. It is a daily working partnership. We will pair for one to two hours most mornings (UTC+8 — Philippines time) and you will carry the work forward during the day. You will build agent teams in Claude Code and Grok, set up the automations around them, develop new AI-based products with me, and — critically — teach me as we go so that I can extend and run everything myself.

I am a CPA who uses Claude Code daily. I know what I want built. I need someone who can build it faster than I can, explain it clearly, and challenge my thinking.

**What You Will Work On**

Agent teams for my CFO advisory firm — client bookkeeping review, month-end packs, workpapers, client correspondence.

Agent teams for my migration agency — enquiry handling, document checklists, case preparation and client follow-up.

A personal operating system — calendar, email, task and knowledge management, so my day runs through AI rather than around it.

New products — turning the internal systems above into packaged offerings we can take to market.

Ongoing: documenting everything so the business is never dependent on one person.

**Requirements**

Hands-on with Claude Code (subagents, CLAUDE.md, skill files, MCP) and at least one other frontier model platform (Grok, OpenAI or Gemini). You can show working systems you have built.

Python or TypeScript to a working standard; Git daily; comfortable with APIs, OAuth and webhooks (Xero and Microsoft 365 a strong plus).

A genuine teacher. You can explain a technical decision to a smart non-engineer, live, without jargon — and you enjoy it.

Strong product sense. You will be expected to push back, suggest better approaches and bring ideas, not just take instructions.

Excellent spoken and written English; comfortable on a daily video or voice call.

Available Mon–Fri during UTC+8 business hours; reliable internet and backup power.

**Nice to Have**

n8n, Make or Zapier; Supabase/Postgres; Microsoft Graph API. Any exposure to accounting, bookkeeping or immigration processes. Open-model experience for cost-sensitive workloads.

**How We Work**

Daily pairing session, then independent build time. Weekly written goals and a Friday demo. Everything in Git with a README. Secrets in a vault, never in chat. All IP assigned to the firm under a contractor agreement and NDA. Shortlisted candidates complete a paid four-hour test build; the successful candidate starts on a paid 30-day trial.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0118
Total Execution Time  0.0130
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,484,032 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/AI-Chief-of-Staff-Build-and-Run-AI-Systems-Alongside-the-Principa-1742825
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0066 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1742825
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 1005466
 LIMIT 1 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1742825
AND `misc`.`id` IS NULL 
0.0005   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-10-03',ej.date_added) duration_days, DATEDIFF('2026-10-03',e.rebill_date) duration_rebill, ej.*, e.deactivate FROM employers e, employer_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-10-03',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1742825' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1742825 
0.0008   UPDATE employer_jobs SET hit_counts = '***Oct-03-2026=1293' WHERE job_id= '1742825'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Oct-2026=1292' WHERE job_id= '1742825'  
0.0003   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1742825' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1742825 
0.0016   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '1005466'
AND `date_added` >= '2022-06-08' 
0.0004   select * from teasers 
0.0003   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)