Data Engineer — Public-Data API Ingestion + Postgres/JSONB Storage

Posted 2 days ago

Worldwide

Summary

We're building the data layer for a content and analytics platform and need an experienced data engineer for ongoing work. Your job is to pull data from external sources via API, store it sensibly in PostgreSQL, and make it available to our headless CMS (Payload) so it can be used downstream in content generation and analytical modeling. This is a steady, build-and-extend relationship, not a single project. What you'll do * Build and maintain ingestion pipelines that pull from external APIs and bulk data sources — handling pagination, rate limits, auth, retries, and incremental/idempotent loads. * Design the storage model in PostgreSQL: decide what gets stored as JSONB (bulk payloads we don't need to query field-by-field) versus what gets promoted to typed columns and a defined schema (fields we filter, join, or call on directly). * Expose the right fields to our headless CMS (Payload) so they can be referenced in structured content fields and downstream processes. * Start with our three core data sources, then extend the same patterns to new domains (e.g., health, education, and others) as we grow. * Document the pipelines and schema so the work is maintainable by the rest of the team. Our core data sources (familiarity is a strong plus, not required) * U.S. Census American Community Survey (ACS), including PUMS microdata * U.S. State voter files * U.S. Survey/crosswalk datasets (e.g., CCES) If you haven't touched these specific sources but have ingested and modeled other large public datasets, please still apply — the patterns transfer. You should be strong in * Python for ingestion and transformation (ETL/ELT patterns, idempotency, incremental loads). * PostgreSQL in depth: JSONB, GIN indexing, when to normalize vs. store as JSON, query performance. * Consuming REST APIs at scale: pagination, rate limiting, auth, error handling. * Working with large, messy public datasets and turning them into something queryable. * Clean, documented, maintainable code and a Git-based workflow. Nice to have * Comfort with TypeScript/Node and headless CMS work (Payload specifically is a bonus). * Cloud deployment experience (we run on GCP / Cloud Run). * Experience with census microdata, voter files, or survey research data. Engagement Ongoing. Expect a steady stream of well-scoped tasks. Please share your weekly availability. To apply Tell us briefly: (1) a pipeline you built that ingested a large external dataset via API into PostgreSQL — what the source was and how you handled scale and problems that surfaced, and (2) how you decide whether a given piece of incoming data should live in a JSONB column or be modeled as typed columns and how you solved related problems. A link or code sample is a plus.

  • More than 30 hrs/week
    Hourly
  • 6+ months
    Duration
  • Intermediate
    Experience Level
  • $10.00

    -

    $35.00

    Hourly
  • Remote Job
  • Complex project
    Project Type
Skills and Expertise
Mandatory skills
Python
PostgreSQL
RESTful API
Nice-to-have skills
Big Data
Activity on this job
  • Proposals:20 to 50
  • Last viewed by client:yesterday
  • Interviewing:
    10
  • Invites sent:
    1
  • Unanswered invites:
    0
About the client
Member since Apr 7, 2022
  • United States
    San Francisco6:39 AM
  • $13K total spent
    17 hires, 7 active
  • 82 hours

Explore similar jobs on Upwork

Database University AssignmentsHourly‐ Posted 8 months ago
SQL
Database
Microsoft Excel
Database Design
Database Management
SQL Server Integration Services
Excel Macros
Excel Formula
Microsoft Power BI
Microsoft Excel PowerPivot
Power Query
Data Entry
Data Cleaning
Data Analytics
Data Extraction
Gcp data engineerHourly‐ Posted 4 weeks ago
Google Cloud Platform
BigQuery
ETL Pipeline
Google APIs
Data Warehousing & ETL Software

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo