Platform & Integration/2020 — 2021
Our Way
Salesforce-authenticated app with a two-way Postgres sync
- Role
- Full-Stack Developer
- Year
- 2020 — 2021
- Discipline
- Platform & Integration
- Stack
- 10 technologies
A web application integrated with Salesforce through JSforce, letting users sign in with their own Salesforce accounts to create campaign members and call records, with data mirrored to PostgreSQL and synced back on a schedule.
01The problem
The client needed a purpose-built surface for creating campaign members and call records, but Salesforce had to remain the system of record — and the application needed its own Postgres store to work against without hammering the org.
02The approach
Salesforce integration via JSforce, with users authenticating through their own personal Salesforce accounts so permissions came from the org rather than a parallel user table. Records were written to PostgreSQL, and an API synchronised them back into Salesforce every 30 minutes, driven by scheduler jobs on the Salesforce side. React and TypeScript with Tailwind and Zustand on the front, Node/Express in Docker on AWS EC2 behind it.
03The outcome
Users worked in a purpose-built interface with their own Salesforce identity, and records reconciled into Salesforce on a 30-minute cycle.
04Decisions worth noting
- 01
Users authenticate with their own Salesforce accounts, so the org's permission model is inherited rather than duplicated.
- 02
Scheduled 30-minute reconciliation between PostgreSQL and Salesforce, triggered from the Salesforce side.
- 03
JSforce for the integration layer, keeping Salesforce authoritative.