Backend Dev — QBO/HubSpot/Monday/FedEx/Zoom Data Warehouse on Google Cloud (BigQuery + Cloud Run)
Budget: $500.0
FIXED /
⭐ 1.12 (7)
United States
google-cloud-platform, api, database
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.
Open job