Story 000 - Bootstrapping an AI Development Environment

Published:

A fresh engineering graduate was given a normal HP office laptop. No CUDA. No GPU. Just enough to write Python.

Then my manager asks, “Can we build an internal Salesforce chatbot for sales users?” So I start experimenting. I made something out of Flask, HTML, FAISS, all-MiniLM, and one of the smallest LLMs available - Qwen3 0.5B. It wasn’t elegant. It was painfully slow. Responses took 3-4 mins. But it answered questions correctly as per the KB made from manuals, FAQs, and training video transcripts.

The first demo to the CTO. He bore with the slowness. But he saw what the bottleneck was. Not the software nor the architecture. Just compute. Then they trusted me enough to ask if I wanted AWS. I thought for a moment that if I got AWS, I would still have to work on this 14-inch laptop, which I could not bear with. So I asked for a Workstation instead (probably the best save of my early career).

Then the requirement and approval email trail started. I searched, did my research, and gave the specifications for a custom-built desktop. Explained CUDA cores for GPU requirement, VRAM, why AMD Ryzen and not Intel - just for pure multi-core performance. Explained why a custom-built workstation made more sense than prebuilt systems. Even the 24-inch monitor had an engineering rationale: supporting split-screen work across the IDE, terminal, frontend, backend, and documentation.

The second demo. Now the app was deployed on the office local network listening on 0.0.0.0, and the office laptop became just another client. The CTO asks, “Can we also play only the relevant clip of the training video?” That changed things. Now I needed timestamps. Whisper alone wasn’t enough. I discovered forced alignment. I wasn’t just building a chatbot anymore. I was starting to think in terms of systems.

But Windows starts fighting back, as is its reputation. New tools needed specific Torch and CUDA versions, and the conda env was giving the painful build failed for pip install torch+cu. Dependencies start conflicting. Spent more time fighting the env than writing code.

My Linux canon event - then came WSL Ubuntu, fresh env, a stable and widely supported torch+cu, vLLM discovered and installed in the process. env starts working. It was a beautiful transition that shaped almost every engineering project I worked on afterwards.