SEO Specialist - Off-Page

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

TYPE OF WORK

Any

SALARY

N/A

HOURS PER WEEK

30

DATE UPDATED

Jun 2, 2026

JOB OVERVIEW

Off-Page SEO Strategist

Type: Full-Time |

About the role We're an agency building search authority for medical and other sectors looking for an aggressive, analytical off-page strategist who reads a backlink profile the way an editor reads a draft, and who can design and run a link-building strategy per account without being handed a playbook.

This is not a "send 50 outreach emails a day" role. You'll d ---------- what links a client needs, which anchors move the needle without tripping a penalty, and how off-page work compounds the on-page and technical SEO already in motion.

What you'll own

Account-level strategy: Audit each client's backlink profile, competitor gap, and target keyword set, then build a bespoke link plan to boost rankings and AI visibility of accounts.

Anchor text strategy: Plan anchor distribution deliberately: branded, naked, partial-match, exact-match keeping ratios natural and penalty-safe while still pushing target keywords. This is a core competency, not an afterthought.

Keyword-aware link building: Analyze each project's priority keywords and direct link equity where it actually changes rankings. You should be able to explain why a link to page X with anchor Y matters for keyword Z.

White-hat execution: Guest posts, digital PR, broken-link building, unlinked-mention reclamation, niche edits, and genuine relationship-based placements with extra rigor given the medical/YMYL space.

Outreach & networking: Own end-to-end relationships with bloggers, editors, and publishers, building a repeatable network you can pull from across accounts.

Analysis & reporting: Monitor backlink growth, lost links, toxic links, do-follow and no-follow ratio, competitor movements, and ranking impact using SERanking, etc. Tie off-page activity back to measurable SEO outcomes.

You understand that off-page and how it amplifies on-page and technical SEO, and the three have to move toward one ranking goal. You can read an on-page setup and d ---------- where external authority will do the most good.

What we're looking for

3 years and more - off-page SEO experience (agency experience strongly preferred; medical/healthcare niche a big plus).

A demonstrable track record: a portfolio of live placements and, ideally, ranking/authority gains you can point to.

Strong command of written English clear enough to pitch editors, sharp enough to write or brief guest content that actually gets published.

Deep, current knowledge of link-building tactics and the latest algorithm findings. You read the space and adapt

Fluency in Ahrefs, Semrush, SERanking, and outreach/prospecting tools.

Genuine independence - you can strategize, prioritize, and run multiple client campaigns simultaneously without hand-holding.

Tactical judgment around anchors, link velocity, and risk.

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.0154
Total Execution Time  0.0167
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,497,440 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/SEO-Specialist-Off-Page-1520381
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0097 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0008   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1520381
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 878226
 LIMIT 1 
0.0014   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1520381
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-21',ej.date_added) duration_daysDATEDIFF('2026-08-21',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-21',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1520381' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1520381 
0.0008   UPDATE employer_jobs SET hit_counts '***Nov-24-2025=230***Nov-25-2025=79***Nov-26-2025=50***Nov-27-2025=16***Nov-28-2025=3***Nov-29-2025=3***Dec-03-2025=6***Dec-04-2025=2***Dec-05-2025=4***Dec-06-2025=1***Dec-08-2025=1***Dec-11-2025=1***Dec-13-2025=1***Dec-16-2025=1***Dec-19-2025=2***Dec-21-2025=1***Dec-27-2025=1***Dec-31-2025=1***Jan-04-2026=1***Jan-05-2026=1***Jan-07-2026=1***Jan-12-2026=1***Jan-13-2026=1***Jan-15-2026=1***Jan-23-2026=1***Jan-30-2026=1***Feb-02-2026=1***Feb-07-2026=2***Feb-08-2026=1***Feb-10-2026=1***Feb-22-2026=1***Feb-25-2026=1***Mar-01-2026=1***Mar-09-2026=1***Mar-13-2026=1***Mar-21-2026=1***Mar-24-2026=1***Mar-29-2026=1***Apr-06-2026=1***Apr-08-2026=1***Apr-20-2026=2***Apr-21-2026=2***Apr-24-2026=1***Apr-26-2026=2***Apr-28-2026=1***May-21-2026=2***May-31-2026=1***Jun-02-2026=521***Jun-03-2026=104***Jun-04-2026=55***Jun-05-2026=22***Jun-06-2026=13***Jun-07-2026=14***Jun-08-2026=12***Jun-09-2026=6***Jun-10-2026=6***Jun-11-2026=7***Jun-12-2026=2***Jun-13-2026=3***Jun-14-2026=4***Jun-16-2026=8***Jun-17-2026=3***Jun-18-2026=9***Jun-19-2026=3***Jun-20-2026=3***Jun-21-2026=1***Jun-22-2026=1***Jun-23-2026=4***Jun-24-2026=1***Jun-25-2026=5***Jun-26-2026=6***Jun-27-2026=1***Jun-28-2026=3***Jun-29-2026=4***Jun-30-2026=4***Jul-01-2026=4***Jul-02-2026=3***Jul-03-2026=4***Jul-04-2026=1***Jul-05-2026=2***Jul-06-2026=2***Jul-07-2026=2***Jul-09-2026=2***Jul-11-2026=1***Jul-12-2026=3***Jul-13-2026=2***Jul-14-2026=3***Jul-15-2026=1***Jul-17-2026=3***Jul-18-2026=1***Jul-20-2026=1***Jul-21-2026=1***Jul-22-2026=1***Jul-23-2026=2***Jul-24-2026=6***Jul-25-2026=7***Jul-26-2026=2***Jul-27-2026=2***Jul-29-2026=1***Jul-30-2026=1***Jul-31-2026=1***Aug-01-2026=3***Aug-02-2026=2***Aug-03-2026=2***Aug-04-2026=1***Aug-06-2026=4***Aug-07-2026=1***Aug-08-2026=1***Aug-09-2026=1***Aug-10-2026=1***Aug-11-2026=1***Aug-15-2026=1***Aug-21-2026=1' WHERE job_id'1520381'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Nov-2025=381***Dec-2025=22***Jan-2026=8***Feb-2026=7***Mar-2026=6***Apr-2026=10***May-2026=3***Jun-2026=825***Jul-2026=59***Aug-2026=19' WHERE job_id'1520381'  
0.0012   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1520381' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1520381 
0.0023   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '878226'
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)