Close

Nikhil Mahajan

Software Engineer

View Resume

About Me

I'm an enthusiastic problem solver who thrives on tackling hard, ambiguous challenges. Give me a blurry roadmap, and I’ll bring clarity through execution—figuring things out as I go. I’ve worked in fast-paced startup environments under tight deadlines, where adaptability, ownership, and speed were key. Over the years, I’ve worn multiple hats—engineering, product, team management, and even customer interaction. I’ve led small teams, collaborated across diverse functions, and know how to stitch together the moving parts into a coherent solution. I’m passionate about building real, impactful products and love being involved end-to-end—from brainstorming ideas and giving product feedback to writing code and gathering insights directly from users. For me, it’s not just about writing great code—it's about contributing to something meaningful and continuously pushing the product and team forward.

Experience

Astrikos.AI

Software Engineer (Full Time)
Bangalore

  • Engineered domain-specific conversational AI chatbots by fine-tuning open-source LLMs and developing backend infrastructures for diverse enterprise clients.
  • Deployed models across multi-GPU environments, implementing model partitioning techniques to overcome singlenode memory constraints.
  • Developed centralized Speech-to-Text (STT) and Text-to-Speech (TTS) backend services, standardizing audio processing and integrating it seamlessly across multiple company products.
  • Architected an automated data ingestion pipeline to periodically extract high-throughput sensor data from industrial historians.
  • Optimized TimescaleDB configurations and chunking intervals, significantly accelerating the performance of complex time-series analytics queries.
  • Managed cloud and network infrastructure, including AWS provisioning, Nginx reverse proxy configuration, and domain management.
  • Packaged custom ISO images to facilitate secure, standardized, and offline on-premise software deployments.

Astrikos.AI

Software Engineer (Intern)
Remote

  • Designed and developed a flow engine to enable dynamic execution of Python code through a node-based system.
  • Built a dynamic console for managing global datacenter operations, improving visibility and control.
  • Worked with real-time telemetry data to support data-driven infrastructure management.
  • Collaborated across multiple teams to coordinate deployments and ensure smooth delivery of features.
  • Utilized ReactJS for the frontend and Django, Celery, PostgreSQL, and TimescaleDB on the backend.

Recepto.AI

Software Engineer (Intern)
Remote

  • Designed and implemented a workflow to regularly retrieve the latest and most relevant leads from the internet.
  • Developed custom web scraping tools to extract leads from multiple online sources, including a specialized LinkedIn scraper for profiles, job listings, and posts.
  • Integrated all tools into the lead generation system.
  • Contributed to both backend (FastAPI, MongoDB) and frontend (React) development during the product’s early stages.
  • Actively participated in product discussions, proposed new features, and collaborated closely with the founders, gaining hands-on experience in a fast-paced startup environment.

Repello.AI

Software Engineer (Intern)
Remote

  • Designed and developed the user interface for an automated red teaming platform, based on a thorough under- standing of product needs.
  • Built the platform with features including real-time log streaming and PDF report generation.
  • Conducted red teaming on emerging AI products to identify and report security vulnerabilities.
  • Implemented frontend components using React and backend services with Flask.
  • Contributed to the improvement of the automated red teaming engine.

Wikimedia Foundation

Open Source Contributor (Google Summer of Code)
Remote

  • Developed end-to-end (E2E) tests for various user journeys to improve application reliability.
  • Contributed to a large-scale codebase by fixing minor bugs in Wikipedia.
  • Gained practical experience working within a global, distributed open-source development team.
  • Utilized WebdriverIO for browser automation to streamline testing workflows.

Self-Employed

Full Stack Developer (Freelance)
IIT Roorkee

  • Developed a web-based platform for simulating stock trading.
  • Integrated third-party APIs to fetch and display real-time stock market trends and data.
  • Built a responsive frontend using React.js and Bootstrap, and implemented backend using Django.

Projects

Redis From Scratch

Built a lightweight, in-memory key-value database from scratch in C, replicating core Redis functionality and underlying data structures. Engineered a concurrent TCP server using standard C socket programming to handle multiple client connections simultaneously. Parsed the REdis Serialization Protocol (RESP) to decode raw network byte streams into executable database commands. Developed support for essential commands (PING, ECHO, SET, GET) and implemented time-to-live (TTL) logic for automatic key expiration. Implemented master-replica synchronization, enabling replica nodes to connect, perform handshakes, and reliably synchronize state with the master server.

View Project

Variational Autoencoder - QuickDraw Dataset

Trained a custom Variational Autoencoder (VAE) from scratch on the Google QuickDraw dataset to autonomously generate and interpolate hand-drawn sketches. Designed an advanced encoder-decoder architecture incorporating ResNet-style Residual Blocks (with SiLU activations) and Scaled Dot-Product Attention to capture long-range spatial dependencies. Implemented the reparameterization trick and a composite loss function, specifically utilizing KL Annealing to successfully prevent posterior collapse during training. Stabilized mixed-precision training by implementing gradient clipping to resolve gradient explosion issues. Engineered custom inference methods, utilizing Aggregate Posterior sampling rather than standard normal priors to significantly improve output quality and prevent blank generations.

View Project

Bhagavad Gita Conversational AI

Curated a custom, domain-specific dataset on the Bhagavad Gita from scratch by scraping websites, running OCR on scanned books, and transcribing YouTube audio. Leveraged the Gemini API to process raw, unstructured text and programmatically generate synthetic questionanswer pairs, yielding a high-quality dataset for LLM instruction tuning. Fine-tuned the Google Gemma-3-1B-IT model using Hugging Face libraries to create an AI capable of answering questions based on the text. Managed the training pipeline on rented GPUs from runpod.io and published the final model weights to the Hugging Face.

View Project

Shopmate

Engineered an AI-powered personal shopping assistant using a multi-step LangGraph agent to automate product discovery, autonomously comparing items and recommending the best options to reduce search time. Created an intent understanding module that analyzes user requests, conducts preliminary searches on product categories, and dynamically asks context-aware clarifying questions before initiating a deep search. Built scraping pipeline to extract and structure product details, pricing, and user reviews directly from Amazon, Flipkart, and Google Search. Designed a recommendation system that scores products based on user preferences and shows the top three matches for easy decisions.

View Project

Election Portal

Developed and maintained the official platform for conducting campus-wide elections at IIT Roorkee, enabling over 10K voters to elect Positions of Responsibility (PORs). Implemented robust security measures to ensure secure and tamper-proof voting processes. Wrote clean, extensible, and production-grade code across frontend and backend. Built using Next.js, Django, PostgreSQL, Strapi, and Docker. Managed scalable infrastructure with AWS and Terraform, ensuring high availability and fault tolerance.

View Project

IKS Console

Developed for the Indian Knowledge Systems (IKS) Division, Ministry of Education, Government of India Built a dynamic certificate generation platform that allows users to upload templates via a web console and generate personalized certificates from excel data. Automated the emailing of generated certificates directly to participants. Utilized Django, React.js, PostgreSQL, Docker, Pillow, and Nginx. Managed infrastructure including AWS SQS, Lambda, and S3 for scalable and efficient processing.

View Project

Education

Indian Institute of Technology Roorkee

November 2021 - April 2025

B.Tech in Chemical Engineering

Extracurricular Activities

Project Manager

MDG Space (Technical Club)
April 2022 – April 2025

Participant

Google Gen AI Hackathon
Sep 2024 – Oct 2024

View Project

Skills

Languages

Software Development

GenAI

DevOps

Github Stats

nik-55
nik-55 Github Stats

Blogs

How does Node Js work behind the scene?

Node Js is not a programming language but it is a Javascript runtime environment. It is built on top of V8 Engine and LibUv. Node Js has the Event-Driven Architecture and the event loop is said to be the heart of this architecture.

Read Blog

Bits on the Move

Files are collections of binary digits. Whether it’s an image, audio, video, text, or any other data type, the interpretation of those binary values determines what the data represents. Binary data might seem a bit strange, but it’s the backbone of our digital world.

Read Blog

Guide to train on multiple GPUs using DDP

A simple, hands-on guide to understanding Data Parallelism. This post walks through a runnable script to show exactly how distributed training works under the hood—handling synchronization, seeding, and how GPUs actually communicate.

Read Blog

Variational Autoencoder (VAE): How to train and inference?

Ever wondered how Variational Autoencoders work? This post breaks down the architecture, the math behind the training process, and how they generate new data. It also covers practical details I learned while building one myself.

Read Blog

Overview of Wan 2.1: Text to Video Model

I spent some time deconstructing the inference pipeline of the Wan 2.1 model. Here is a step-by-step breakdown of how it takes a simple text prompt and transforms it into a full video using its T5 encoder, Latent DiT, and VAE decoder.

Read Blog