SEO Specialist

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

TYPE OF WORK

Full Time

SALARY

Depends on experience

HOURS PER WEEK

40

DATE UPDATED

Dec 27, 2025

JOB OVERVIEW

We’re hiring a full-time SEO Specialist who understands SEO end-to-end and can execute without supervision. You’ll be working across multiple client accounts (primarily service-based businesses) and owning the strategy + implementation for local SEO, on-page, off-page, technical SEO, content, and reporting.

We’re looking for someone who plays the long game: no risky shortcuts, no spam, no “SEO hacks.” The biggest priority is protecting and improving rankings through clean, proven, ethical SEO practices.

What you’ll be doing
Build and execute SEO strategies for multiple clients (service-based + local markets)

Local SEO:
Google Business Profile optimisation (categories, services, photos, posts, Q&A, citations, review strategy support)
Local citation consistency (NAP audits, cleanup, structured citations)
Location-based strategy that drives map pack and organic leads

On-Page SEO:
Keyword + competitor research based on real search intent
Optimise pages for titles, meta descriptions, headings, internal linking, topical structure, schema, and conversion flow
Create and refine service pages + service-area/location pages that match brand tone and convert

Technical SEO (with dev support when needed):
Site audits (indexing, crawlability, site structure, canonicalisation, redirects, Core Web Vitals, page speed, sitemap/robots, broken links)
Implement fixes and QA results

Off-Page SEO + Link Building:
Create safe link-building plans (quality-first)
Outreach and acquisition (relevant placements, local links, industry links, partnerships)
Monitor backlink profile health and prevent toxic link issues

Create content that ranks:
Blog strategy and content planning based on search intent
Write or manage writing of blog posts that are industry-relevant and structured to rank
Content briefs, outlines, optimisation, and publishing workflow

Reporting + communication:
Weekly or monthly reporting (rankings, traffic, conversions, leads, technical health)
Clear insights: what moved, why it moved, what we’re doing next

Quality standards (non-negotiable)
No spam tactics, no automated junk, no link farms, no PBNs, no keyword stuffing
SEO must be safe, ethical, and sustainable
Every recommendation must have a clear reason behind it
Attention to detail: clean execution and documentation
Brand matters: pages must be written professionally and match each client’s voice

What we’re looking for
Proven SEO experience across local + technical + content + link-building
Strong ability to execute (not just audit and “suggest”)
Deep understanding of how Google evaluates:
local intent, relevance, proximity, prominence
topical authority, internal linking, helpful content, E-E-A-T signals
technical foundations (indexation/crawl, site structure, performance)
Experience creating service/location pages that don’t look spammy or duplicated
Strong writing skills or strong ability to manage writers and optimise content
Comfortable managing multiple accounts with clear prioritisation

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0157
Total Execution Time  0.0171
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,507,416 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/SEO-Specialist-1541900
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0098 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1541900
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 881451
 LIMIT 1 
0.0015   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1541900
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-15',ej.date_added) duration_daysDATEDIFF('2026-04-15',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-04-15',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1541900' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1541900 
0.0008   UPDATE employer_jobs SET hit_counts '***Dec-27-2025=41***Dec-28-2025=175***Dec-29-2025=104***Dec-30-2025=20***Dec-31-2025=11***Jan-01-2026=11***Jan-02-2026=21***Jan-03-2026=10***Jan-04-2026=10***Jan-05-2026=10***Jan-06-2026=11***Jan-07-2026=7***Jan-08-2026=1***Jan-09-2026=8***Jan-10-2026=4***Jan-11-2026=11***Jan-12-2026=10***Jan-13-2026=5***Jan-14-2026=7***Jan-15-2026=14***Jan-16-2026=20***Jan-17-2026=12***Jan-18-2026=10***Jan-19-2026=17***Jan-20-2026=10***Jan-21-2026=8***Jan-22-2026=3***Jan-23-2026=8***Jan-24-2026=2***Jan-25-2026=2***Jan-26-2026=3***Jan-27-2026=3***Jan-28-2026=1***Jan-29-2026=3***Jan-30-2026=1***Feb-02-2026=2***Feb-03-2026=6***Feb-05-2026=1***Feb-06-2026=1***Feb-07-2026=1***Feb-08-2026=2***Feb-09-2026=2***Feb-11-2026=1***Feb-12-2026=2***Feb-13-2026=2***Feb-14-2026=1***Feb-15-2026=1***Feb-16-2026=1***Feb-17-2026=2***Feb-18-2026=1***Feb-19-2026=1***Feb-20-2026=1***Feb-21-2026=1***Feb-22-2026=1***Feb-23-2026=2***Feb-24-2026=2***Feb-25-2026=1***Feb-26-2026=1***Feb-27-2026=1***Mar-01-2026=1***Mar-04-2026=2***Mar-05-2026=1***Mar-11-2026=1***Mar-13-2026=1***Mar-16-2026=2***Mar-17-2026=1***Mar-23-2026=9***Mar-26-2026=6***Mar-27-2026=4***Apr-01-2026=1***Apr-04-2026=1***Apr-09-2026=3***Apr-10-2026=2***Apr-11-2026=2***Apr-15-2026=1' WHERE job_id'1541900'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Dec-2025=351***Jan-2026=243***Feb-2026=37***Mar-2026=28***Apr-2026=10' WHERE job_id'1541900'  
0.0014   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1541900' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1541900 
0.0020   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '881451'
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)