SEO & AI Content Specialist (City Pages + Data-Driven Research)

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

TYPE OF WORK

Full Time

SALARY

50,000 - 80,000 PHP per month

HOURS PER WEEK

40

DATE UPDATED

Jul 31, 2026

JOB OVERVIEW

OB OVERVIEW

Type: Full-Time | Remote | Long-Term
Location: Philippines preferred
Hours: 40/week, with meaningful overlap with Eastern Time

Who We Are

Hellamaid is one of Canada's leading home cleaning brands, operating in 60+ cities with 70,000+ homes cleaned. We've been featured in Forbes, Martha Stewart Living, and Costco Connection. We're now franchising across Canada, and content is central to how we grow.

You work directly with the founder. No layers, no agency middlemen. Your work goes live and you see the results in real dashboards.

The Role

We're hiring an SEO and content specialist who understands that ranking in 2026 means writing for two audiences at once: humans on Google, and AI systems (Google AI Overviews, ChatGPT, Perplexity, Claude) d ---------- what to cite.

This is not a keyword-stuffing or word-count job. We care about content that earns rankings, backlinks, and AI citations because it is genuinely useful and backed by real data.

You'll work across three areas:

- City pages. Rich, locally specific content for our city service pages. Real depth: neighbourhoods, pricing context, seasonal cleaning realities, entity coverage that AI search can understand and surface. Not thin "we clean homes in [city]" filler.
- Data-driven research. We have booking data from thousands of real cleanings. You turn it into original, stat-driven articles and reports that journalists and AI models cite because they contain actual numbers and findings, not recycled listicles. We help source the data, you make it compelling and citable.
- On-page optimization. Structure content for AI Overviews and GEO visibility: clear headings, direct answers, entity coverage, schema-friendly formatting. Refresh existing pages that underperform.

What You'll Own
- Writing and publishing city page content at consistent quality and pace
- Producing data-driven blog posts and research pieces from our booking data
- Optimizing pages for rankings and AI citations
- Refreshing and upgrading pages that underperform
- Keeping content consistent in quality across 60+ cities

What We're Looking For
- Excellent written English. Clear, natural, zero fluff. You write like a smart human, not a content mill
- Strong grasp of on-page and local SEO, and how AI search interprets and cites content
- Experience writing local or city service pages, or programmatic-style local content
- Comfort working with data: pulling stats, framing findings, making numbers interesting
- Someone who can explain WHY a piece will rank or get cited, not just produce word count

Bonus: schema markup, WordPress/Elementor, digital PR, or tools like Ahrefs

Why This Role Is Good
- Long-term, stable full-time role with a growing brand (we've had tea ---------- mbers for years)
- Direct access to the founder, and your ideas actually get implemented
- We invest in AI tools (Claude, and more) so you work with the best stack, not against it
- Bonus and performance pay

How to Apply (Required)

Send:
1) Your CV and 2-3 writing samples (ideally a local/city page and a data or stat-driven article)
2) A Loom video (under 5 minutes) covering:
Pick any home cleaning company's city page (or one of ours) you can find online
Walk us through what you would change, add, remove, or restructure to make it perform better in Google AND get referenced by AI search

Tell us one data blog idea you'd write for a cleaning company that AI models would actually cite

Applications with a Loom video get priority. Applications that are clearly AI-generated with no personal thought will be skipped.

Here is our site:
----------

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0271
Total Execution Time  0.0284
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,514,480 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/SEO-AI-Content-Specialist-City-Pages-Data-Driven-Research-1699880
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0210 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1699880
 LIMIT 1 
0.0013   SELECT *
FROM `employers`
WHERE `employer_id` = 690761
 LIMIT 1 
0.0021   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1699880
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-12',ej.date_added) duration_daysDATEDIFF('2026-08-12',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-12',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1699880' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1699880 
0.0007   UPDATE employer_jobs SET hit_counts '***Jul-31-2026=646***Aug-01-2026=75***Aug-02-2026=38***Aug-03-2026=69***Aug-04-2026=52***Aug-05-2026=63***Aug-06-2026=45***Aug-07-2026=38***Aug-08-2026=36***Aug-12-2026=1' WHERE job_id'1699880'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jul-2026=646***Aug-2026=417' WHERE job_id'1699880'  
0.0013   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1699880' 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` = 1699880 
0.0118   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '690761'
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)