DATA, ANALYTICS & ML · PARIS, FR

Kushath Nanduri

I turn data into decisions and build the systems behind it, across analytics, business intelligence, and machine learning.

STATUS: MSc Data Science, EDC Paris (graduate) · Open to data, analytics, and ML roles

ABOUT · PARIS, FR

About

What I build

I build data and ML systems. Five of them are finished enough to stand on their own, and each was built to answer a question rather than to fill a portfolio.

forge-prep is a data-readiness toolkit: a published Python package (v0.1.0) that audits an enterprise corpus and scores it 0–100 across six dimensions before that data reaches Mistral’s Forge fine-tuning pipeline. It runs on the Python standard library alone, carries a 38-test suite under GitHub Actions CI.

KrisCodec is a neural audio codec for music, written from first principles. It uses Snake activations and a residual vector quantizer, ships a custom .kris format, and decodes in roughly 7.4 ms. I built it to understand codec design end to end, not to wrap an existing one.

ARIA is a reasoning architecture. A frozen GPT-2 Small (124M parameters) holds the knowledge, a recurrent reasoning core (~20M) iterates over it, and a halting controller (~2M) decides when to stop. About 146M parameters in total, ~22M of them trainable. I trained it on ARC, GSM8K, and PIQA to test whether test-time reasoning depth can be added without retraining the backbone.

VOXMAX is a shipped consumer product: an Expo / React Native app over a FastAPI backend that turns about twelve seconds of speech into a score, computed on a real acoustic-feature pipeline rather than an API call.

ZXERO v0 shipped too. It was a full-stack content-access firewall, built on Next.js and FastAPI with Stripe Connect payouts and an ML bot-detection engine, that reached paying customers and took $1,247 in live Stripe revenue before I shut it down. The through-line across all five is that their behaviour is measurable, and none of them are demos.

Two more are newer, and I'm not going to describe either as more finished than it is. Stickbook is a shared scrapbook for group trips: no app, no account, tap a link or QR to join, stick a photo to the page with a handwriting-font caption, and it appears live for everyone in the group. ZXERO, the current one, built on what ZXERO v0 taught me, is an AI operating layer: memory that persists across tools, perception of what's on screen and active, and the ability to execute rather than only answer. It's in active development; I'm not calling it more than that yet.

How I got here

Hardware first

I started at the physical layer. My BTech is in Electrical, Electronics & Communications Engineering, from Mahatma Gandhi Institute of Technology (December 2020–July 2024): signal processing and systems thinking learned from the hardware up, before any of it was abstracted behind a framework.

In the middle of that I spent four months at Zonta Technologies in Hyderabad (October 2022–January 2023). I developed and executed test strategies and test plans for platform evaluation, and supported NDL (Network Design Lab) and FIT (First in Test) product integration, certification, trial, and interoperability testing. It was test and integration engineering, and it taught me what it takes to hold a claim to a standard before it ships.

Then Paris

I moved to Paris for an MSc in Data Science & Business Intelligence at EDC Paris Business School (September 2024–September 2026). I chose a programme that sits between engineering and business on purpose: that intersection is where data work actually lands, and pretending otherwise makes for worse systems.

What I’ve learned

The lesson I hold onto came from switching ZXERO v0 off. It worked. It shipped, it detected crawlers, and it took real money. I shut it down anyway, because when Cloudflare moved into pay-per-crawl the unit economics no longer justified scaling a solo-built firewall against a CDN incumbent. Killing something that works costs more than abandoning something that doesn’t: you have to override the part of you that reads “it runs” as “it should continue.” Making that call on a read of the market is the same judgment that justified building it.

The second thing I keep returning to is the distance between a system that runs and a system whose behaviour you can measure. Getting something to run is the easy part. The KrisCodec decode figure, roughly 7.4 ms, exists because I measured it, and the evaluation tooling in forge-prep exists because a corpus you cannot score is a corpus you cannot trust. I optimise for the second kind of system: the kind that tells you when it is wrong.

Working with

Day to day I work in Python and SQL, building pipelines and ETL, packaging and CI, and the schema and data-quality checks that keep them honest. I use Power BI, Tableau, and pgAdmin where the work is analysis, dashboarding, and reporting. On the ML side that means PyTorch, audio DSP, evaluation tooling, fine-tuning data preparation, and vector quantization. When something has to ship it is usually FastAPI and REST backends, React Native / Expo, Web Audio, and the deployment around them.

I leave off the things I have touched once but never shipped. That is the whole point of this page.

Open to data, analytics, and ML roles: teams building evaluation tooling, data infrastructure, or ML systems where the work is measured, not asserted.

CV (Français)CV (English)
01 / PROJECTS

Projects

forge-prep

data-readiness tooling for LLM fine-tuning

  • audit command emits a 0–100 Forge Readiness Score across six dimensions: volume, quality, dedup, PII, language, format.

KrisCodec

neural audio codec

  • Benchmarked at ~7.4 ms decode latency.

ARIA

recurrent reasoning architecture

  • Frozen GPT-2 Small (124M) + recurrent reasoning core (~20M) + halting controller (~2M): ~146M total, ~22M trainable.

VOXMAX

shipped voice-scoring product

  • ~12 s of speech yields a VoxScore (0–100) with four sub-dials and one improvement drill.

ZXERO v0

content-access firewall, shipped and sunset

  • Reached first paying customers with $1,247 in live Stripe revenue before sunset, then wound down deliberately after ~5 months, once Cloudflare entered pay-per-crawl and the unit economics no longer justified scaling.
Stickbook home screen: name your stickbook, shared or private, join by link or QR

Stickbook

shared scrapbook for group trips

    ZXERO homepage: "ZXERO is the AI operating layer for builders", with the Build/Codex/Stripe/Supabase/Vercel node graph

    ZXERO

    AI operating layer, memory + perception + action

      Tableau dashboard: KPI tiles (104 projects, 89.62% in alert), a world map of alerts by country, and planned vs. actual cost/duration lines

      Project Performance Monitoring Dashboard

      Tableau dashboard for project performance monitoring

      • 520 project-phase records across 20 fields.
      Power BI key-influencers view: attrition count by job role, and influencer panels for job satisfaction and work-life balance

      Employee Attrition Analysis

      Power BI HR attrition analysis

      • Average job satisfaction above 3 raises the likelihood of no attrition by 1.29x.