Skip to main content

Case Study

GENEALOGY ARCHIVAL SAAS PLATFORM

Role

Backend Engineer

Platform

Collaborative Genealogy & Archival SaaS

Core capabilities

  • Graph ABAC
  • BFS Family Search
  • OCR
  • Record Matching
Genealogy SaaS Platform — application interface

What is Genealogy SaaS Platform?

A collaborative genealogy and historical-archival SaaS platform that connects interactive family trees with national archive records. It combines breadth-first (BFS) graph-scoped access control, unified multi-archive search (NARA and OpenArch), Tesseract OCR with Gemini AI entity extraction, and weighted person-matching workflows with Stripe and PayPal subscription billing.

What I built

  • BFS Graph-Aware ABAC Authorization. Engineered a pure-function permission evaluator (FamilyAccessMatrix) backed by breadth-first graph traversal (GraphContextService) — resolving 5 collaborator roles against a user's exact ancestor/descendant/spouse position in the family tree to compute scoped branch edit rights without per-node DB queries.
  • Multi-Archive Search & Idempotent OCR Pipeline. Built UnifiedSearchService to query local records, the US National Archives (NaraClient), and OpenArchClient in parallel — feeding retrieved documents into an idempotent OcrOrchestrationService (Tesseract OCR + Google Gemini AiExtractionService) that extracts structured person/relationship entities with page-level deduplication.
  • Multi-Signal Identity Matching & GEDCOM Engine. Implemented MatchingService and SimilarityEngine using weighted statistical scoring across normalized names, dates, locations, and gender to power a claim-and-approve profile linking workflow, paired with queued GEDCOM import/export (GedcomImportService) and fingerprint-based duplicate detection.
  • Gateway-Agnostic Billing & Real-Time Chat Service. Designed a PaymentGatewayInterface abstraction unifying Stripe (Laravel Cashier) and PayPal subscription lifecycles, storage quotas, and webhook synchronization, alongside a dedicated Pusher-backed chat-service handling 1-on-1/group messaging and support tickets via an internal API proxy.

System scope

  • Graph-Aware ABAC & Branch IsolationFive-tier attribute-based access control that resolves each user's editable branch scope by breadth-first traversal of the family graph.
  • OCR Record ExtractionAutomated image-to-text pipeline parsing historical death certificates, census logs, and deeds.
  • Intelligent Entity MatchingFuzzy-matching algorithms correlating discovered archives with existing tree nodes.
  • Real-Time Collaborative TreesPusher-powered live editing allowing multiple family members to explore and update records.
  • Archival API ConnectorsDirect integrations with public archives (NARA, OpenArch) for automated source verification.
  • GEDCOM Import & Export PipelinesQueued GEDCOM ingestion and export with fingerprint-based duplicate detection and claim-and-approve profile linking.

Inside the product

A new account has no tree yet, so the empty state says exactly that and offers the upload path instead of rendering a blank canvas.
Once populated, the dashboard carries the scale - total families, people tracked, birthdays today - then surfaces the lineages with the least coverage and the lost-lineage search that fills them.
The tree renders from the graph itself: parent and child links drawn as connectors, every node typed, and the whole subtree navigable rather than paginated.

LET'S BUILD
YOUR NEXT SYSTEM

Whether you are hiring for a backend engineering role, architecting a multi-system SaaS platform, or automating complex operational workflows — let's connect.

0/1500

or download my technical resume →