~/sahilrajpal.com/resume

Sahil Rajpal

Backend Engineer · SDE 2
// summary

Backend engineer, nearly 5 years, mostly Python. I built the 1Checkout flow at Pragma that lifted conversion 20%, owned ~90% of the procurement platform at FactWise, and at Loopio I'm shipping content migration tooling, a reporting microservice + data warehouse, and document parsing - across Python, PHP, and C#/.NET.

// experience
Sept 2024 - present
India
Loopio - SDE 2
  • Designed and shipped a content migration tool for an enterprise customer (Alight); saved Professional Services months of manual effort and became reusable for future migrations.
  • Stood up the reporting microservice and its data warehouse layer (fact tables, dimensions, views) - pulled project reporting out of the monolith and built the APIs on top.
  • Worked the unsexy plumbing for the Strategic Insights AI product: auth/authz with the monolith, repo-wide unit coverage, Sentry-based monitoring, and technical spikes on context reduction + per-model token thresholds.
  • Led the data foundation and report surfaces for the Library Review Audit Trail - a Q4 commitment for regulated-sector enterprise customers (Harbourvest, Verizon).
  • Shipped Excel parsing and worked on the PDF pipeline (Aspose) for an RFP document-ingestion service in C#/.NET - new stack, Claude-assisted, honest about that scope.
stack: php · codeigniter · mysql · python · fastapi · airflow · redshift · sqs · dynamodb · c#/.net · aspose · sentry · datadog · llm tooling
Jul 2023 - Aug 2024
India
Pragma - Software Engineer
  • Owned the 1Checkout flow end-to-end; integrated PhonePe, Razorpay, Cashfree, and Snapmint - landed a measurable +20% conversion lift.
  • Built partial-COD (deposit + delivery balance to fight COD fraud), shipping configuration, and blacklist controls by email, phone, and city.
  • Drove production incident response across payment-gateway wobbles; ran triage → mitigation → post-mortem → prevention.
stack: python · fastapi · django · drf · postgres · celery · redis · webhooks
Jul 2021 - Jul 2023
India
FactWise - Software Engineer
  • Backend lead on a source-to-pay procurement platform - owned ~90% of modules: events & negotiation, purchase orders, invoices, quality checks, goods receipts, approval flows, audit trails.
  • Designed an approval-flow engine: composable rules, role-based assignment, audit trail on every state change - so the team didn't have to ship bespoke code per customer.
  • Mentored a rotation of PM and dev interns through their ramp-up; drove code review and clean-code discipline as the team scaled.
  • Spent meaningful time on customer calls - most features started in conversation with a procurement lead, not in a Jira ticket.
stack: python · django · drf · postgres · docker · celery · rest apis
// skills
languages
Python, PHP, SQL, JavaScript; C#/.NET (Loopio, Claude-assisted - not claiming fluency)
frameworks
Django, DRF, FastAPI, Celery, CodeIgniter
data
PostgreSQL, MySQL, Redshift, DynamoDB, Redis; data warehouse design
cloud / infra
AWS (SQS, DynamoDB, Redshift, S3), Airflow, Docker
observability
Sentry, Datadog
tooling
LLM-assisted development (Claude Code), Git, GitHub Actions
interests
payment systems, data pipelines, customer-driven feature work, dev tooling
// selected projects
OSS
sitechecker - self-hosted infrastructure monitoring platform
  • Open-source platform monitoring services via HTTP (GET + status validation), TCP (host:port reachability), and ICMP ping checks, scheduled by Celery Beat. Alerts only fire after a configurable consecutive-mismatch back-off, so transient flaps don't page anyone.
  • Two-tier alerting: Warning (≤ 1/day) and Critical (≤ 1/hour), routed through plugin-based dispatchers (SMS, email, Telegram). New channels add without touching the core.
  • Two-queue Celery architecture - separate check_queue and alert_queue so an alert-flood can't starve checks. Stateless Dockerized workers scale horizontally with the number of monitored services.
  • Extensible plugin system: Python modules registered via Django management commands (add_plugin / remove_plugin); reference implementation sitechecker-generic-plugin shows how to add a new alerting channel without forking core.
python · django · postgres · celery · redis · docker · nginx · github →
// education
2017 - 2021
B.E. Computer Engineering
Vivekanand Education Society's Institute of Technology · Mumbai
Keyboard shortcuts
ttoggle theme g hback to portfolio escclose