~/sahilrajpal.com/experience/loopio

Loopio · SDE 2

Backend engineering across content migration, data + AI platform, document parsing, and now a graph-based knowledge base.
Aug 2024 - present
≥6mo
PS team effort saved
6
domains shipped
2
ENT customers, audit features
4
tech stacks ramped to prod

Joined Loopio in August 2024. Two years in, the common thread across my work has been picking up unfamiliar terrain and shipping something that holds - five distinct areas, five different stacks, one company.

01Centralized knowledge base (graph)WIP

Aug 2026 - present

Moved onto a new team after the hackathon, working the ML side of what's now core Loopio infrastructure: a centralized knowledge base meant to be consumed by every other component in the codebase, built on a graph database (Neo4j).

It's early and still WIP. I ran an end-to-end POC to validate the approach against the actual requirements - multi-tenancy, latency under load, text-to-knowledge-graph ingestion, vector search, and semantic search over the graph - rather than taking the design on faith.

stack: pythonneo4jgraph dbvector searchsemantic searchtext2kg

02RFP document ingestion

Feb - Jul 2026

In mid-Feb 2026, moved onto a sister product during a churn-heavy patch - customers were leaving over bugs and missing features and the team needed reinforcing. The ingestion path takes an uploaded RFP (docx, pdf, excel) and converts it to a normalized document - a common JSON shape the frontend can render uniformly regardless of source format.

I shipped Excel parsing support into the service and worked on the PDF rendering pipeline (heavy use of Aspose). The codebase is C#/.NET, which was new to me - Claude Code did a lot of heavy lifting and I'd be honest about that in an interview. I'm comfortable in the codebase, I know the algorithms, but I'm not going to claim C# fluency.

Wound down at the end of July, then spent the first three weeks of August captaining a cross-repo PR-impact system (Neo4j knowledge graph + a hosted agent) at an internal hackathon - the graph work there fed directly into what came next.

stack: c#.netasposedocument parsing

03Audit trail

Oct 2025 - Jan 2026

Library Review Audit Trail. Regulated-sector enterprise customers needed full visibility into every review cycle on a library entry - not just the current one - including the comments logged when an assignee passed a review along. It was a Q4 commitment.

I worked on the data foundation and the report surfaces - Review Cycle Export Report and Library Review Workload Report - letting users search across library entries and download the complete review history as CSV from the Library Reporting page. Took the prior feedback about seeking early review seriously this round: shared design + approach with stakeholders before writing the implementation, which paid back in a much cleaner foundation.

Peer review · Sanket Sharma
Analytical thinking played a key role in defining the foundation for Library Review cycle reports… he proactively shared his approach and designs early, gathered feedback, and incorporated it effectively.
stack: phpmysqlcsv pipelines

04Data warehouse + AI platform

Feb - Sept 2025

Two adjacent projects under the same umbrella.

Reporting microservice. Pulled Loopio's project reporting out of the monolith into a standalone service. On the data side: stood up the data warehouse layer - fact tables, views, dimensions - and built the microservice's APIs against it. Also cleared a backlog of critical bugs in the existing reporting surfaces on the way in.

Insights. Loopio's Strategic Insights product surfaces win-themes, library health, and readiness scores from 10+ years of RFP response data. I worked on the unsexy plumbing that makes it shippable: granular permissions auth/authz with the monolith, repo-wide unit test coverage, Sentry-based monitoring, and the bug bash before alpha. Then a stretch of technical spikes on context reduction and per-model token thresholds - the findings ended up feeding into how other teams pick models against cost and latency budgets.

Manager review · Q2 2025
Sahil demonstrated strong initiative and a willingness to dive into areas that were completely new to him. Instead of stepping back when faced with unknowns, he leaned in - taking the time to understand complex systems and figuring out how to make them work.
stack: pythonfastapiairflowredshiftmysqlsqsdynamodbphpmicroservicesdata warehouserest apissentrydatadogllm tooling

05Content migration tooling

Sept 2024 - Jan 2025

Shortly after I joined, Alight divested Strada - a real, time-boxed customer split that needed every Alight customer's library content cleanly moved off the shared instance. Professional Services scoped the manual path at ~6 months. I owned the alternative.

I designed and built an automated migration tool that compressed that timeline by months and secured the customer renewal. Architectural decisions ran through the team lead; code review went through the senior engineers on the platform. The framework I left behind is what Loopio now reaches for when other migrations come up (e.g. LFS → Loopio Core).

I had zero prior experience with PHP, CodeIgniter, or domain-driven design when this started. I treated that as the job rather than a blocker - read the codebase end-to-end before writing anything substantive, then iterated tight loops with the people who owned the schemas I was reading from.

Manager review · Mar 2025
Sahil independently designed and implemented a migration tool that streamlined the transition process for Alight customers… saved months of manual work for the Professional Services team and provided a scalable solution that can be leveraged for future migrations.
stack: phpcodeigniterdomain-driven designmysql

Through-lines


← back to experience Pragma → FactWise → resume → email me →