{
  "id": 16336430,
  "title": "I Matched 10,000 People to Loans. It Took Just 1 AI Call.",
  "url": "https://urgent.news/2026/10/24/i-matched-10-000-people-to-loans-it-took-just-1-ai-call",
  "topic": "ai",
  "section": "AI",
  "published": "2026-10-24T14:55:09.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/kaushaly4s5s7/i-matched-10000-people-to-loans-it-took-just-1-ai-call-1mh3"
  },
  "original_language": "en",
  "account": "The challenge of assigning personal loans to 10,000 individuals proved far more complex than initially anticipated. Key factors such as loan rules sourced from bank websites, which are human-written and subject to change, posed significant hurdles. Additionally, technical issues like file size limitations, email service interruptions, and potential inaccuracies from AI were also critical considerations.\n\nTo address these complexities, the author developed Loan Match, a system that simplifies the process. Users upload a CSV file, and Loan Match accesses 15 lenders' websites daily to determine loan eligibility for each individual. The system then emails each person a personalized list of loans they qualify for, along with the rationale behind the decision.\n\nThe architecture of Loan Match is built on AWS services, including API Gateway, Lambda (written in Go), S3, SQS, RDS PostgreSQL, and SES for email. The workflow starts with the user uploading the CSV file, which is then stored in S3. The file is broken down into 8 MB pieces, each carrying a SHA-256 checksum to ensure data integrity. These pieces are uploaded to S3, which then notifies SQS, triggering a Lambda function to process the data.\n\nThe Lambda function reads the file row by row, cleansing the data of any real-world spreadsheet issues such as formatting inconsistencies and missing or incorrect information. Valid rows are then inserted into a PostgreSQL database using the COPY command, which is significantly faster than traditional row-by-row inserts.\n\nTo handle potential issues like message loss or corrupt data uploads, Loan Match employs two methods of triggering: a fast doorbell (an HMAC-signed, timestamped webhook) and a sweeper (a scheduled task that checks for unprocessed uploads every 2 minutes). This ensures that even if one method fails, the other can still complete the task. Additionally, the system is designed to accommodate changes in lender websites and potential AI inaccuracies, ensuring a reliable and robust loan matching process.",
  "summary": "Here's a problem that sounds simple: \"I have a spreadsheet of 10,000 people. Tell each of them which personal loans they might actually get.\" Then you start asking questions, and it stops being simple. Where do the loan rules come from? They're on bank websites, written for humans, and they change without warning. What if the spreadsheet is 1 GB instead of 1 MB? What if the email service hiccups…",
  "key_points": [
    "Developed Loan Match to simplify loan assignment for 10,000 individuals.",
    "System accesses 15 lenders' websites daily to determine eligibility.",
    "Built on AWS services with data integrity checks and redundancy measures."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}