Product Owner
AidProfDec 2020 — Feb 2022
Co-founded an EdTech SaaS that automated STEM exam grading using computer vision, OCR, and NLP; as the only engineer, designed and shipped the entire platform — Django app, AWS infrastructure, and a 10-stage automated grading pipeline.
AidProf was an early-stage SaaS startup targeting educational institutions in Chile and Latin America. The product let teachers upload scanned student exams and receive automated, annotated feedback reports, gradebooks, and performance analytics — combining computer vision, OCR, and NLP to interpret handwritten math and text responses against teacher-defined rubrics.
Official title was Product Owner, chosen intentionally to signal to investors that the product was driven by both engineering and a deep understanding of business logic. In practice the role was solo full-stack developer, data engineer, ML engineer, DevOps engineer, and product manager — ~90% of the codebase was written single-handedly.
Full-stack ownership. Owned the entire stack end-to-end: the Django web application (auth, multi-institution data model, rubric builder, bulk PDF upload, review dashboard, analytics, grade predictions), the AWS infrastructure (EC2 with nginx + gunicorn, S3, RDS MySQL, Lambda prototypes, IAM), the CI/CD pipeline (GitHub Actions deploying to a single production environment), and a separate WordPress marketing site.
Automated grading pipeline. The technical centerpiece was the automated grading pipeline: PDFs were rasterized via pdf2image + Poppler, ROIs (answer boxes) were detected with OpenCV using Gaussian blur, inverse binary thresholding, and contour hierarchy filtering, then labelled interactively by the teacher. Each ROI was base64-encoded and POSTed to the Mathpix /v3/latex endpoint for handwritten math OCR (chosen after benchmarking AWS Textract via Lambda). Rubric and student LaTeX strings were vectorized with CountVectorizer and compared via cosine similarity, with bucketed thresholds surfacing borderline cases for manual review. Results were pivoted into a multi-index DataFrame, mapped onto Chile's 1–7 grading scale, and exported as styled .xlsx files via openpyxl. Matplotlib generated donut, bar/box, and histogram charts; PIL overlaid ✓/✗ icons and scores on student page images to produce per-student feedback PDFs.
Key technical decisions. Product decisions reflected the startup constraints: Django server-rendered templates over an SPA for delivery speed; bag-of-words + cosine similarity over a fine-tuned model because there wasn't enough data yet; rubric-defined-in-UI as the design choice that made automated grading possible at all — capturing scoring weights, data types, expected answers, and key sections upfront gave the system everything it needed to grade without further annotation.
Outcome & go-to-market. The product was demoed to 3 colleges and 5 independent teachers with consistent positive feedback. The startup concluded in February 2022 not because the technology failed but because of go-to-market resistance: B2C buyers (teachers) wouldn't pay out-of-pocket for institutional tooling, and B2B buyers (institutions) had functioning manual workflows with switching costs that overrode the demonstrated time savings.