Custom Fivetran connector for Affinity CRM data sync
A custom Fivetran connector that syncs data from Affinity CRM to BigQuery. Extracts multiple company lists, companies, and person data from the Affinity API v2 using cursor-based pagination with retry logic and error handling.
Features automatic company deduplication across lists, field name normalization for database compatibility, soft delete management, and GitHub Actions CI/CD pipeline for auto-deployment to Fivetran.
Tech: Python, Fivetran SDK, DuckDB, GitHub Actions
Features
- Syncs potential investments, portfolio companies, and VC firms
- Cursor-based pagination with exponential backoff retry
- Automatic company deduplication across all lists
- Soft delete management for removed records
- Automated CI/CD deployment to Fivetran
More from the portfolio
This project is part of tvsguide.io, the personal portfolio of Tim Veil — software engineer and CIO at Two Bear Capital, previously at StarTree, Cockroach Labs, and Hortonworks. The full collection covers distributed systems, data infrastructure, JDBC drivers, AI services, build pipelines, real-time analytics, and a couple of personal apps. Each project ships with source code, tech notes, and links to live deployments where applicable.
Browse the project index, read about Tim's background, follow the blog, or return to the homepage. Source code lives on GitHub; professional history is on LinkedIn.