Software I use, tools I love, and other things I recommend.

I get asked a lot about the things I use to build software, stay productive, or buy to fool myself into thinking I'm being productive when I'm really just procrastinating.

AI / Machine Learning / Data Science
Python has become my go-to language for AI/ML development. With an extensive ecosystem of libraries and frameworks, I've been leveraging Python for data science, machine learning, and AI projects for over 2 years now, especially after pursuing my M.Tech in Data Science & Engineering from BITS Pilani.
Deep learning frameworks that power modern AI applications. I've used both TensorFlow and PyTorch extensively for building neural networks, computer vision models, and NLP applications. My experience includes implementing CNNs, RNNs, and transformer architectures.
As evidenced by my recent articles on Agentic AI and cybersecurity, I've been deeply involved in building autonomous AI agents using LangChain. This includes developing agents for threat hunting, automated security tasks, and intelligent incident investigation.
Working extensively with large language models including GPT-4, Claude, and other LLMs. I've integrated these models into production applications, built custom chatbots, and developed AI-powered features for enterprise applications.
Classical machine learning algorithms remain fundamental. I use scikit-learn for everything from decision trees and random forests to SVMs and clustering algorithms. Combined with pandas and numpy for data manipulation and analysis.
Building Retrieval-Augmented Generation (RAG) systems using vector databases like Pinecone, Weaviate, and Chroma. Essential for creating context-aware AI applications and improving LLM responses with domain-specific knowledge.
Frontend Technologies / Skills
As Jeff Atwood said in 2007, "Any application that can be written in JavaScript, will eventually be written in JavaScript." I couldn't agree more. I've been using Javascript for over 10 years now and I'm still learning new things every day.
It's not the newest kid on the block anymore, but it's one of the best out there, I've been using React for over 7 years now and I've built a lot of apps with it. The comfort and familiarity of React makes it a joy to work with.
Next is taking the React ecosystem to the Next* level by storm. It's a great tool for building static and server-rendered applications using React. I have been using Next for over 4 years.
AngularJS was a revolutionary framework for frontend development. I have used AngularJS for over 2 years.
Backend Technologies / Skills
NodeJS is a great framework for building server-side applications. I've been using NodeJS for over 7 years with REST and GraphQL APIs.
After using REST APIs for a long time, I felt like there should be a better way to fetch only the data that I need. GraphQL is that better way. I've been using GraphQL for over 5 years now.
NodeJS is great for building server-side applications, but I struggled with performance and scaling. Go came to my rescue to help me build performant and scalable applications. I've been using Go for around 2 years now.
I've recently started learning Rust and WebAssembly. This combination is game changer, At times I feel like I'm writing C code in Javascript which puts front-end performance on steroid. I've been using Rust for around 1 year now.
Fullstack Framework? (Maybe)
Since initial discussions about React Server Components I was very excited to see how it would change the way we build web applications, but before it was released Remix made a grand entry into the scene. Remix looks like a fullstack framework for building server-rendered applications using React. I've been using Remix for my pet projects to learn more about it.
Database Technologies / Skills
PostgreSQL is a great RDBMS with extensibility and SQL compliance. I've been using PostgreSQL for over 7 years now.
MongoDB is a great NoSQL database. I've been using MongoDB for over 5 years now.
While working on AWS, I've used DynamoDB when I needed a NoSQL database. Though I've used it for a short period of time, I've found it to be a useful one.
DevOps / Cloud Technologies
I've extensively used AWS for building and deploying applications with several AWS services.
I've used serverless architecture to build and deploy variety of application including my pet projects and Alexa skills. These days I'm getting familiar with CDK to build serverless applications.
Netlify is a great tool for building and deploying static websites. My primary usage includes deployment of static websites to netlify.
My primary usage of Vercel is deployment of NextJS applications and my own portfolio website.
Headless CMS
My first interaction with a headless CMS was with Contentful. I've fallen in to love with the ease of use and the flexibility it provides. I've used contentful for several marketing websites for my clients.
Strapi is an open-source headless CMS. It's a great alternative to Contentful. I've used Strapi for my pet projects.
Swell is a headless e-commerce platform. I've used Swell for my pet projects.
Design
We started using Figma as just a design tool, but now it's become our virtual whiteboard for the entire company. Never would have expected the collaboration features to be the real hook.
Source Control
GitHub is my stop solution for all professional and personal projects. With GitHub Copilot and AI-powered coding assistants, the way we write code has fundamentally changed. I'm actively exploring how AI can enhance developer productivity.
I have used bitbucket for numerous client projects, but I've found GitHub more useful for me.
Tools
IntelliJ IDE is one stop solution for most of my development needs.
The future of coding with AI. Cursor has revolutionized how I write code by integrating powerful AI assistance directly into the IDE. It's particularly useful for rapid prototyping and exploring new technologies.
Essential for data science and ML experimentation. I use Jupyter extensively for exploratory data analysis, model prototyping, and creating interactive visualizations for data-driven insights.
I'm honestly not even sure what features I get with this that aren't just part of the macOS Terminal but it's what I use. Though I would like to give a try to Warp.
Notion is a lifesaver app for me with so many features. Shout out to the Notion team for building such a great app.

Let's connect.