Tejashwi Kalp Taru

About Tejashwi Kalp Taru

New Delhi, India

Running water never goes stale. So you just have to keep on flowing.

How I got here

It started on a Windows 98 machine with a piece of software I wanted and could not get. Going after it dropped me into reverse engineering instead: static and dynamic debuggers, Win32, a bit of kernel work. That never got put down. In 2012 I presented a paper on polymorphic encryption for software license security at the Indian Workshop on Reverse Engineering at IIT Kanpur.

Paid work began on a LAMP stack in a team small enough that I ended up doing a bit of everything, which taught me more than anything since. After that came MEAN and Android. These days most of my working hours go on AI work, Node and Go services, cloud architecture, and working with a team of developers. The low level work did not stop. It moved to the evenings.

The day job

Most of my time goes on backend and platform work for other people's products. Recently that has meant an energy management platform, a fitness and wellness marketplace, a senior care product built around AI assistants, a gifting marketplace using generative models, and enterprise reporting software where compliance shapes most of the design decisions.

A good part of my job now is architecture calls and code review across web, mobile and cloud, and I try to keep enough hands-on work that I still understand what I am asking other people to build. If that sounds useful for your project, I take consulting and contract work.

Hardware

Away from the day job I build things with microcontrollers, single board computers and whatever sensor or IoT module I have talked myself into buying. I like doing the whole loop rather than one slice of it: schematic, PCB layout, getting boards fabricated, then soldering and bring-up, then the firmware. EasyEDA for quick boards, Altium when it needs to be serious, 0805 parts because they are still solderable by hand.

A lot of it is small 8-bit work, where the constraints are real and you feel every byte. The handheld console I built runs on an ATtiny85: 8KB of flash, six pins, no I2C hardware. Making an OLED work on that meant fixing the driver library rather than picking a different one. I have looked after it since, with help from people I have never met. Bigger boards get Raspberry Pi treatment instead, which is how the retro gaming build happened.

Taking things apart

The reverse engineering habit is still there. Ghidra, IDA Pro and x64dbg, usually for the same reason as when I started: something is a black box and I want to know how it works. Sometimes that is a licence check in a crackme that fights back. Sometimes it is a trojan hiding in a git hook that arrived on a real machine, which is a less relaxing version of the same exercise.

Find me elsewhere

What I work with

  • Backend

    • TypeScript
    • Node.js
    • NestJS
    • Express
    • Go
    • Python
    • Java / Kotlin
    • C
    • C++
    • C#
    • PostgreSQL
  • Cloud and infrastructure

    • AWS
    • AWS CDK
    • Lambda
    • ECS Fargate
    • GCP
    • Cloud Run
    • BigQuery
    • Vertex AI
    • Docker
    • OpenTelemetry
  • Embedded and hardware

    • Microcontrollers
    • AVR / ATtiny
    • Arduino
    • Raspberry Pi
    • Embedded C / C++
    • I2C / SPI / USI
    • OLED and TFT displays
    • PCB design
    • EasyEDA
    • Altium
    • PlatformIO
  • Reverse engineering

    • Ghidra
    • IDA Pro
    • x64dbg
    • x86 assembly
    • Win32 internals
    • Static and dynamic analysis
    • Malware analysis
  • Web and mobile

    • Next.js
    • React
    • Angular
    • Android
  • AI and machine learning

    • Generative AI
    • LLM integration
    • Vertex AI
    • TensorFlow
    • TensorFlow Lite
    • YOLO
    • RetinaNet
    • On-device inference

Open source

Publications and talks