Rahul Kumar

Rahul Kumar

ML Engineer @ Google Core ML (Keras)

Hi, I'm Rahul. I make frontier GenAI models run on the devices in people's pockets, and I contribute the open-source plumbing that gets them there. If it involves Gemma, Llama, or quantized transformers on NPUs, it probably crosses my desk.

50+ PRs merged into keras-team I wrote the keras.io LiteRT guide 75% memory ↓ via QAT 10M+ synthetic samples Top 0.05% HackerRank

⚡ Open-Source Impact


50+ pull requests merged into Google's Keras ecosystem — LiteRT export for the PyTorch backend, Llama 3.1 in KerasHub, torch-backend performance, and the keras.io guide that explains the first one. I don't keep the tally on this page; GitHub does, and GitHub is never out of date.

keras-team/keras
Enabled on-device deployment of PyTorch-trained Keras 3 models via TensorFlow Lite / LiteRT.
keras-team/keras-hub
Implemented Llama 3.1 natively in KerasHub.
keras-team/keras
Fixed a serialization bug that broke persistence for a whole class of custom architectures.
keras-team/keras
Made symbolic-shape tracing survive the torch export path — required for reliable LiteRT conversion.
keras-team/keras
Keras was assembling debug metadata on every op call and throwing it away. Now it only runs when something actually throws. One of a run of fixes off keras#22561, where I root-caused a large gap between Keras[torch] eager and raw PyTorch on small models.
keras-team/keras-hub
First landed piece of KerasHub → LiteRT-LM export. A small LLM on a phone wants two graphs: one that chews the prompt in parallel and one that emits a token at a time. I built both, and a 270M-parameter Gemma generates text end-to-end on Android — the demo app is public.
keras-team/keras-io
In the Keras developer guides, byline and all. If you go looking for how to get a Keras model onto a device, this is the page you land on. (keras-io#2373, merged Jul 2026.)

🏗 Edge Deployment Architecture


How frontier models travel from research to the NPU in your pocket — via Keras and LiteRT.

flowchart LR A["🤖 Frontier Model\nGemma · Llama · Flux"] --> B["Keras 3\nPyTorch / JAX / TF"] B --> C["LiteRT Export\nPrefill · Decode sigs"] C --> D["On-Device Runtime\nNPU · DSP · GPU"] D --> E["📱 Android / Edge\nGemma 3 270M ✓"] style A fill:#eef2ff,stroke:#4f46e5,color:#1f2328 style B fill:#eef2ff,stroke:#4f46e5,color:#1f2328 style C fill:#dbeafe,stroke:#3b82f6,color:#1f2328 style D fill:#d1fae5,stroke:#10b981,color:#1f2328 style E fill:#d1fae5,stroke:#10b981,color:#1f2328

Keras 3 abstracts the training backend; LiteRT-LM export produces hardware-optimised prefill + decode TFLite graphs. Gemma 3 270M has been validated end-to-end on Android.

💼 Experience


flowchart LR A["Samsung R&D\nJul 2022 – Sep 2024"] --> B["Qualcomm\nSep 2024 – Jan 2025"] B --> C["Google\nFeb 2025 – Present"] style A fill:#f7f8fa,stroke:#d0d7de,color:#1f2328 style B fill:#fff7ed,stroke:#f59e0b,color:#1f2328 style C fill:#eef2ff,stroke:#4f46e5,color:#1f2328
Google — Core ML / Keras Team
Software Engineer, Machine Learning · Feb 2025 – Present · Hyderabad, India
KerasLiteRTPyTorch JAXTensorFlowStarlarkONNX
  • Shipped LiteRT export for the PyTorch backend in Keras 3, enabling on-device deployment of PyTorch-trained models via TFLite / LiteRT (keras#22758).
  • Built LiteRT-LM export for KerasHub with prefill / decode signatures — validated Gemma 3 270M on Android, end-to-end.
  • Implemented Keras-native Llama 3.1 and Multimodal Gemma 3; fixed 4/8-bit quantization instabilities across backends.
  • Wrote the official Keras guide to LiteRT export — live on keras.io, under my name.
  • Migrated Adbrain ad-recommendation model to Keras 3; TF 2.20 / Python 3.13 / Orbax compatibility fixes.
  • 50+ PRs merged across keras, keras-hub and keras-io — serialization and quantization fixes, torch-backend performance, cross-backend compatibility (the list is public).
Qualcomm
Machine Learning Engineer · Sep 2024 – Jan 2025 · Hyderabad, India
QATSnapdragonNPU DSPLiteRTC++Android
  • Applied Quantization-Aware Training (QAT) on Snapdragon mobile SoCs, reducing memory bandwidth 75% while retaining model quality.
  • Redesigned Magic Keeper generative inpainting pipeline for the Snapdragon Summit demo — NPU and DSP accelerated.
  • Built voice-controlled Camera Copilot demo for on-device AI showcase at client briefings.
  • Delivered hardware-accelerated Android reference apps demonstrating GPU, DSP, and NPU delegation for benchmarking.
Samsung R&D Institute India (SRI-N)
R&D Engineer — Computer Vision · Jul 2022 – Sep 2024 · Noida, India
YOLOMask R-CNNTFLite OpenCVKotlinJavaAndroid
  • Knox Capture: End-to-end damaged-barcode scanning pipeline — 10M+ synthetic samples via geometric/probabilistic transforms; accuracy 70% → 90% with YOLO, Mask R-CNN and U-Net.
  • SRIN-Satyapan: Anti-cheat proctored exam platform — 2,000+ concurrent users, 10,000+ registered faces, real-time face-recognition auth on Android + web portal. MD Appreciation Award.
  • Face recognition optimisation: Embedding search O(n) → O(log n); lookup time 1,200 ms → 87 ms on Android tablets serving 10k+ users.
  • Drop detection: Replaced deep learning with statistical feature engineering — 99% parameter reduction, 95% power reduction, accuracy drop <2%.
Samsung R&D Institute India (SRI-N)
Intern · Jan 2022 – Jun 2022 · Noida, India
CycleGANPyTorchAndroidJava
  • Trained CycleGAN for generative-AI use cases in Samsung's software competency programme; converted to full-time R&D Engineer in July.

🚀 Projects


🧠
Keras / KerasHub — LiteRT Export Pipeline

On-device deployment infrastructure for frontier models (Gemma, Llama, Flux) via Google's Keras 3 ecosystem. Covers PyTorch-backend export, LiteRT-LM prefill/decode signatures, and the official keras.io documentation.

📈
RL Alpha Labs — Algorithmic Trading

JAX-native PPO and DQN agents trading across 746 NSE instruments with 3.5+ years of OHLCV data. 128 vectorised environments for parallel rollout, full portfolio simulation with risk controls.

📱
Gemma on Android — LiteRT-LM

A 270M-parameter Gemma generating tokens on a phone, end-to-end: KerasHub → LiteRT-LM export with separate prefill and decode signatures, then a minimal Android app that runs it on device.

🛠 Skills


Core ML & GenAI
Keras TensorFlow PyTorch JAX Hugging Face Quantization Transformers Diffusion LoRA/PEFT RL
Computer Vision
OpenCV YOLO Mask R-CNN U-Net Synthetic Data
Edge & On-Device AI
LiteRT TFLite ONNX OpenVINO Android NDK Hexagon DSP NPU
Data & Statistics
NumPy Pandas Statistics Feature Engineering
Languages
Python C++ Java Kotlin SQL Starlark
Tooling
Android Studio Docker Git Django Flask

🏆 Achievements


#1 Global
HackerRank Python
Top of the global Python practice leaderboard.   Leaderboard →
Top 0.05%
HackerRank Algorithms
Global rank 1,026 / 2,219,538.   Leaderboard →
Top 0.06%
HackerRank Data Structures
Global rank 540 / 931,788.
🥇 Rank 29
HackFest 2020 — Gold Medal
Out of 8,051 participants. Rating: 1500 → 2042.   Result →
Rank 242
TCS CodeVita Season 9
International rank, Round 2.
Rank 69
World Programming Championship
IIT Bombay Techfest — global rank.
🏅 MD Award
Samsung R&D Appreciation
From Managing Director for architecting and delivering SRIN-Satyapan.
AIR 5,648
GATE 2021
All-India Rank in the Computer Science & Information Technology paper.
O(n log log u)
Van Emde Boas Tree in Python
Predecessor and successor in O(log log u) time, in O(n log log u) space instead of the textbook O(u) — so it stays usable on a sparse key range.   Code →

🎓 Education


🎓
MITx MicroMasters in Statistics and Data Science
💻
B.Tech Computer Science Engineering
BIT Sindri · 2018 – 2022

👋 Let's Connect

Open to collaborations, interesting problems, and good coffee chats.