RKRithik Krishna T

CSE (Data Science) · MGIT & IIT Madras · graduating May 2027

Looking for software engineering, ML engineering roles.

I build Android apps, security tools and machine-learning systems — and I measure them on real hardware before I call them done.

How I work

I build complete systems rather than demos, and I check them on the devices they actually run on — then I write down what I measured, not what I hoped would happen.

Two ways to read this portfolio

Built for ML roles and for software roles

ML / AI

For ML and AI roles

Model compression, retrieval, on-device inference and production OCR — with the evaluation designed before the result.

  • 113.5×smaller document index at 86.7% of nDCG@5 on the worst-case benchmark; 94.6–103.4% kept at 53–60× on real pages (OptiVision RAG)
  • 90%+OCR extraction accuracy on complex layouts, under 1.5 s after fine-tuning DBNet on 15,000+ documents (HCLTech internship)
  • 1.5Bparameter model run on-device through llama.cpp with grammar-constrained tool calls — and kept off the answer path by design (Personal Assistant)
  • PyTorch
  • TensorFlow / Keras
  • scikit-learn
  • OpenCV
  • PaddleOCR · DBNet
  • ColPali / ColQwen2
  • Qdrant
  • llama.cpp · GGUF
  • Hugging Face
  • NumPy · Pandas
  • nDCG · Recall@k · Kendall τ
Open the ML view
SDE

For software engineering roles

Native Android, backends and systems tools, shipped whole — with tests, cross-language parity checks and verification on a real device.

  • 646unit tests passing in a multi-module Android app with SQLCipher and a biometric-gated key hierarchy (Personal Assistant)
  • 154actions and 18 trigger types behind a drag-and-drop flow engine with nested control flow (Cascade)
  • 1e-6agreement between Rust, Kotlin and JavaScript ports of one scheduler, held by golden-vector tests (Whetstone)
  • Kotlin
  • Jetpack Compose
  • Java
  • Python
  • TypeScript
  • Rust
  • SQL
  • FastAPI · SQLAlchemy
  • PostgreSQL · SQLite
  • React · React Native
  • Docker
  • Git · Linux
Open the software view

Featured

Selected work

  • Aegis Toolkit

    SDE

    Kotlin · Compose · VpnService

    An Android security toolkit that needs no root: packet capture through VpnService (checked against 162 real flows on a phone), a TLS certificate-chain inspector, an APK tracker scanner and a Keystore-backed vault with TOTP.

    35security tools in one rootless app

  • OptiVision RAG

    ML

    Python · PyTorch · Qdrant

    Compresses a vision-language document index with patch pruning and binary quantization, and measures what each stage costs. On real ViDoRe pages it keeps 94.6–103.4% of retrieval quality at 53–60× smaller.

    113.5×smaller than float32 at 86.7% nDCG@5, on the worst-case benchmark

  • Cascade

    SDE

    Kotlin · Compose

    A drag-and-drop automation builder for Android in the spirit of iOS Shortcuts, with nested If, Repeat, While and Try blocks and no third-party runtime dependencies.

    154actions, 18 trigger types

  • Personal Assistant

    SDEML

    Kotlin · SQLCipher · llama.cpp

    A private Android assistant built on one rule: code owns the facts, a language model owns the wording. Questions about your own data are answered from encrypted SQL in 7–12 ms with no model involved.

    646unit tests passing, none failing

  • Tessera

    SDEML

    Python · FastAPI · mTLS · Kotlin

    Turns the phone and PCs I already own into one compute pool: each job goes to the best device with a stated reason, over mutually authenticated TLS, and an assistant turns plain-English requests into typed jobs.

    12typed job kinds scheduled across my own devices

  • Whetstone

    SDE

    Rust · Tauri · Kotlin · Svelte

    A two-app DSA trainer — a Tauri desk app and an offline Android app — whose FSRS scheduler is ported to Rust and Kotlin and matches a JavaScript reference to 1e-6.

    215cards across 43 patterns, plus 78 problems

Every project

All 18 projects

ML fits ML / AI rolesSDE fits software roles

Showing all 18

Tools I reach for

  • Kotlin
  • Jetpack Compose
  • Room
  • VpnService
  • Rust
  • Tauri
  • Svelte
  • React Native
  • Python
  • PyTorch
  • FastAPI
  • PostgreSQL
  • Qdrant
  • Docker
  • llama.cpp
  • Tor
  • OCI

How I design

Keep the model off the answer path

My Android assistant runs on one rule: code owns the facts, a language model owns the wording. Anything that can be answered from your own encrypted data is answered straight from SQL in 7-12 ms, with no model involved; the model is only asked to phrase things.

factswordingQuestiontyped or spokenRouterfacts firstSQL over your data7-12 ms, no modelLanguage modelwording onlyAnsweron screenfactswordingQuestiontyped or spokenRouterfacts firstSQL over your data7-12 ms, no modelLanguage modelwording onlyAnsweron screen

Journey

Education, work and a few wins

  1. May 2027Education

    B.Tech, Computer Science and Engineering (Data Science)

    Mahatma Gandhi Institute of Technology, Hyderabad · expected

    • CGPA 8.3 / 10
  2. May 2027Education

    BS, Data Science and Applications

    IIT Madras · remote · expected

    • CGPA 7.0 / 10 · machine learning, deep learning, tools in data science
  3. 2026Leadership

    Tech fest coordinator, NEXPLORA

    MGIT

    • Planned an event for 500+ attendees on an INR 2,00,000 budget.
  4. Sep 2025 – Jan 2026Work

    AI/ML Intern

    HCLTech · Hyderabad

    • Raised OCR text-extraction accuracy to 90%+ on complex layouts by benchmarking PaddleOCR against Tesseract.
    • Cut inference latency to under 1.5 s by fine-tuning DBNet on 15,000+ skewed administrative documents.
    • Containerised the pipeline with Docker on Oracle Cloud Infrastructure.
  5. 2025Certification

    Oracle Cloud Infrastructure certification

    Oracle

  6. 2024Award

    HackSavy finalist

    Top 5% of 300+ participants

  7. 2020Award

    IMO Level-2 qualifier

    International Mathematics Olympiad

Contact

Hiring for 2027? Let’s talk.

I graduate in May 2027 and I’m looking for full-time roles in software, Android, security or ML engineering. Email is the fastest way to reach me.