Backend Dev — QBO/HubSpot/Monday/FedEx/Zoom Data Warehouse on Google Cloud (BigQuery + Cloud Run)

Posted 4 days ago

Worldwide

Summary

Project overview We're a small events company (Virtual With Us) looking to centralize data from five business systems into a single Google BigQuery warehouse, with dashboards built in Looker Studio. We need a backend service that connects to each system's API, pulls historical and ongoing data, and syncs it into BigQuery on a schedule. This is a phased project. Phase 1 is QuickBooks Online (QBO) only — full financial reporting (P&L, AR, cash flow, balance sheet, customer revenue). Phases 2–4 (FedEx, HubSpot, Monday.com, Zoom) follow once Phase 1 is live, with the same developer if it's a good fit. A complete written brief is ready — architecture, schema, sync strategy, and a step-by-step setup guide. You will not be starting from a blank page. Phase 1 scope (what we're hiring for now) Build a Node.js backend on Google Cloud Run (we already use Google Cloud for BigQuery — please don't propose Railway, Render, or Heroku) Handle QuickBooks Online OAuth 2.0, including token refresh Pull 3–5 years of historical QBO data (invoices, payments, customers, credit memos, purchases, bills, P&L, cash flow, balance sheet) into BigQuery — built as a resumable, chunked job (not a single blocking request) Set up a nightly delta sync plus a weekly safety-net re-pull, using BigQuery MERGE/UPSERT so edited historical records (we frequently revise prior-month entries) update correctly instead of duplicating Build a webhook listener endpoint as a stub for a future real-time alerting phase (signature validation and logging only — no business logic yet) Deploy with Cloud Scheduler for the sync jobs and Secret Manager for all credentials Required skills Node.js / Express — solid backend fundamentals, comfortable with async job processing Google Cloud Platform — specifically Cloud Run, Cloud Scheduler, Secret Manager, and IAM/service accounts Google BigQuery — schema design, MERGE/UPSERT patterns, partitioned/snapshot tables OAuth 2.0 — implementing an authorization code flow from scratch, not just using a pre-built login button REST API integration — comfortable reading third-party API docs and handling pagination, rate limits, and webhooks Strongly preferred Direct experience with the QuickBooks Online API (or Intuit's node-quickbooks SDK) Experience with financial or accounting data — understanding of invoices, AR aging, P&L structure Past projects involving multi-source data syncing or ETL into a data warehouse Nice to have (relevant for later phases, not required now) Experience with the FedEx Track API, HubSpot CRM API, Monday.com API, or Zoom API Experience designing rule-based status engines (e.g. red/yellow/green logic) in SQL Deliverables Working Cloud Run service with all endpoints in the brief (OAuth, sync, manual trigger, health check, webhook stub) All historical QBO data loaded into BigQuery and validated against QBO reports (AR total must reconcile within $1) Nightly, weekly, and monthly sync schedules running and verified Private GitHub repo with README, client added as owner 30-minute handoff call What we provide A complete written developer brief: architecture diagrams, full BigQuery schema, exact SQL for syncs and joins, sync scheduling logic, and a step-by-step environment setup guide All QBO credentials and Google Cloud project access, set up and ready before work begins Clear written acceptance criteria for every deliverable — no ambiguity about what "done" looks like Project details Our rough estimate: 10–14 hours for Phase 1, based on the scope above — but this is our estimate, not a ceiling. We'd rather you review the brief and tell us your own number than anchor to ours. Budget: $500–700 fixed price for Phase 1, open to discussion if your estimate and approach justify it Type: Fixed-price preferred, hourly considered for the right candidate Timeline: Flexible, but ideally completed within 1–2 weeks of start Future work: Phases 2–4 (FedEx, HubSpot, Monday, Zoom) are planned as follow-on engagements, roughly 20–26 additional hours combined by our estimate, for the same developer if Phase 1 goes well To apply, please include A short note confirming you've read this posting (not a copy-paste generic pitch) Any past experience with the QuickBooks Online API specifically Whether you've deployed services to Google Cloud Run before Your own estimate for Phase 1 hours, after reviewing the scope — tell us if you think 10–14 hours is realistic, and explain your reasoning if it's not. We're more interested in a thoughtful number than a number that matches ours.

  • $500.00

    Fixed-price
  • Intermediate
    Experience Level
  • Remote Job
  • Ongoing project
    Project Type

Contract-to-hire opportunity

This lets talent know that this job could become full time.
Learn more
Skills and Expertise
Mandatory skills
Node.js / Express — solid backend fundamentals, comfortable with async job processing Google Cloud Platform — specifically Cloud Run, Cloud Scheduler, Secret Manager, and IAM/service accounts Google BigQuery — schema design, MERGE/UPSERT patterns, partitioned/snapshot tables OAuth 2.0 — implementing an authorization code flow from scratch, not just using a pre-built login button REST API integration — comfortable reading third-party API docs and handling pagination, rate limits, and webhooks
Activity on this job
  • Proposals:5 to 10
  • Last viewed by client:2 days ago
  • Interviewing:
    1
  • Invites sent:
    3
  • Unanswered invites:
    1
About the client
Member since Dec 31, 2019
  • United States
    West Orange5:14 AM
  • $131K total spent
    14 hires, 5 active
  • 8,335 hours
  • Small company (2-9 people)

Explore similar jobs on Upwork

Git
WordPress
PHP
MySQL
JavaScript
Backend Laravel DeveloperFixed-price‐ Posted 2 months ago
Laravel
PHP
MySQL
MySQL Programming

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