Skip to content
Esc
Internships in Canada
New-grad roles in Canada
Remote roles
Roles that show pay
Postings at high ghost risk
PayWhat student tech roles in Canada pay
Check a linkPaste a posting to see its real age and ghost risk
JobsEvery open tech role
CompaniesWho fills fastest, who leaves postings up
Hiring calendarWhen employers open intern and new-grad roles
Skills gapWhat postings ask for that you don't have
Your resumeScore and fixes
Your matchesOpen roles ranked by your resume
ApplicationsSaved, applied, interviewing, offers
SettingsTheme, text size, motion
How it works

↑ ↓ to move, Enter to open? every shortcut

Keyboard shortcuts

CtrlKor/
Search employers, postings and pages
JorK
Next or previous posting in a list
O
Open the posting's page
Enter
Open it in the preview, on wide screens
S
Save or unsave it
?
This list
Esc
Close
Virtuhire

Marketing Data Engineer - Ad Tech (US hours)

  • Seen live on Virtuhire's site today
  • Mid level
  • Remote
Pay
Not stated
Location
South Africa
Open for
9+ days
First seen
Oct 26, 2026
Apply on Virtuhire's site (opens in a new tab)

Posting record

No flags

Open 9+ days

The posting's record, oldest first
  1. Virtuhire's site dates the posting
  2. Ghostless first sees this listing
  3. Last checked: still up
How we know

It hasn't been reposted, listed twice, or left up unusually long, and the posting doesn't say it's a talent pool.

Ghostless records the day it first sees a posting, so a repost can't reset its age. This one was already up when Ghostless started tracking Virtuhire, so its true age is longer.

Last checked Nov 4, 2026.

How well do you match?

See how much of this posting your resume shows, and what it's missing.

Upload your resume

What the posting discloses

Not stated: Pay, real vacancy, AI screening.

Why these three

Ontario requires postings from employers with 25 or more staff to state the pay, whether the vacancy exists, and whether AI screens applicants.

Some employers add pay only on their own site. Check the original posting before you rule it out.

Skills mentioned

About the role

Our client in the US is looking for a Marketing Data Engineer to own the data pipelines and data-quality foundation that power their dashboards, pacing outputs and recurring reporting.

Core responsibilities

  • Build and maintain API/ETL ingestion from DSPs, ad servers and other advertising platforms.
  • Normalize campaign data and maintain metric definitions used across dashboards and reporting.
  • Manage cloud-warehouse structures and client data deliveries where required.
  • Reconcile pipeline output against raw platform exports and investigate material variance.
  • Build automated data-quality checks, alerting and monitoring for pipeline/dashboard health.
  • Manage service-account/API credential workflows in the clients owned environments.
  • Support platform migrations and rebuild data integrations without reporting discontinuity.
  • Partner with Dashboard Developer and Programmatic Lead on definitions, mapping and release validation.

Requirements

Must-have profile

  • 4+ years in data engineering/analytics engineering with production ETL/API responsibility.
  • Strong SQL plus at least one production programming/scripting language such as Python.
  • Experience with cloud data warehouses such as BigQuery, Snowflake or equivalent.
  • Experience reconciling data across multiple source systems and designing data-quality controls.
  • Ability to own production pipelines, troubleshoot failures and document data definitions clearly.

Preferred experience

  • Direct experience with advertising/marketing platform APIs and campaign data.
  • Experience with DV360 or other DSP data models, ad-server data or marketing attribution feeds.
  • Experience with scheduled reporting/alerting and secure client data delivery.

What success looks like

  • Reporting data is reliable and reconciles within agreed tolerance.
  • Pipeline failures or data lag are detected before clients notice.
  • Platform changes do not create reporting gaps.
  • Metric definitions remain consistent across dashboards and recurring reports.

Something wrong with this posting?