badal.sahani

Experience

The patch log.

In Frappe, every schema change ships as an ordered migration patch. Careers work the same way — each entry below changed the shape of everything after it.

  1. v0001

    Mar 2023

    Joined Hybrowlabs Technologies

    Came aboard as a software engineer on a multi-tenant education ERP built on Frappe/ERPNext — and stayed hands-on with DocTypes, controllers, hooks, and patches every day since.

  2. v0002

    2023 – 2024

    Built the payments core

    Took ownership of the fees & finance engine: payment plans, instalments, deferrals, discounts posting GL entries, refunds — then re-architected it as v2 with a zero-downtime data migration. Integrated 6 gateways and an EMI lender lifecycle whose single-writer settlement design eliminated double-booked payments.

  3. v0003

    2024 – 2025

    Scaled the platform and its frontends

    Multi-entity tenancy with row-level permissions, per-company chart-of-accounts automation, Frappe HRMS extensions, and a fleet of 4 React SPAs plus a tri-lingual parent app. Cut the heaviest API from 4–5s to under 500ms with query restructuring and Redis caching.

  4. v0004

    2025 – present

    Took the infrastructure, then the team

    Provisioned production AWS EKS with ~9k lines of Terraform, moved delivery to Helm + ArgoCD GitOps, and drove a documented 43% cost reduction. Now leading 8–10 engineers — code reviews, sprint planning, architecture standards — while shipping daily with AI tooling in the loop.

Hybrowlabs Technologies · Pune, India · Mar 2023 – present