# Kushal S T > Kushal S T is a full-stack developer (frontend-heavy) and UI/UX designer in Bengaluru, India - currently SDE 3 at Novopay (Trustt), building fintech products with React, Node.js, and micro-frontends. Kushal S T has 7+ years of experience: SDE 3 at Novopay (Trustt) since 2025 (SDE 2 from Nov 2023), previously UI Developer at Xpresslane (Svelte checkout, PCI DSS), Developer at Dhiyo (Angular portals + growth marketing), Analyst at TCS, and intern at Apttus/Conga. Based in Bengaluru, Karnataka, India. Contact: kushal.st@hotmail.com. ## Pages - [Home](https://resume.kushalst.com/): career timeline with full role details and achievements - [Work](https://resume.kushalst.com/work): 16 projects across web tools, product design, and branding - [Writing](https://resume.kushalst.com/writing): all articles and npm packages - [About](https://resume.kushalst.com/about): bio, skills, education, languages, contact - [Now](https://resume.kushalst.com/now): what he's working on currently - [Résumé PDF](https://resume.kushalst.com/resume.pdf): one-page printable résumé ## Writing - [The Environmental Footprint of a Prompt](https://resume.kushalst.com/writing/environmental-footprint-of-a-prompt): What actually happens in water, energy, and carbon every time you hit Enter on an AI prompt - from 0.24 Wh text queries to 290 Wh agentic workflows - and the prompting habits that shrink the bill. - [Prompting is the New Search: How Conversational Interfaces Are Rewiring the Internet](https://resume.kushalst.com/writing/prompting-is-the-new-search): We spent twenty-five years compressing our questions into awkward keywords; conversational AI flips that loop into stateful, context-rich dialogue. How the shift from link discovery to synthetic answers is reshaping decisions, research, and the web itself. - [The "AI Fatigue" Paradox: Why Your Digital Assistants Are Secretly Exhausting You](https://resume.kushalst.com/writing/ai-fatigue-paradox): Outsourcing the 'easy' tasks to AI removed the mental rest stops from the workday, replacing them with micro-vigilance, prompt-tweaking loops, and inflated output quotas. Why delegating to AI is quietly burning knowledge workers out, and four fixes to break the cycle. - [The Axios Supply Chain Attack of 2026: Why Your package.json is a Security Time Bomb](https://resume.kushalst.com/writing/axios-supply-chain-attack-2026): A hijacked maintainer account shipped poisoned axios releases carrying a typosquatted 'phantom dependency' that dropped RATs through postinstall scripts. How caret and tilde version ranges spread the malware automatically, and the pinning, npm ci, and --ignore-scripts practices that stop it. - [FingerprintJS is Not Enough: How to Track the Silicon, Not the Browser](https://resume.kushalst.com/writing/beyond-fingerprintjs): Browser fingerprints break the moment a user switches from Chrome to Safari. A blueprint for cross-browser device identification that anchors on hardware signals - GPU renderer, audio stack latency, screen geometry - plus server-side fuzzy matching to handle entropy collisions. - [Shadow AI in the Enterprise: The Silent Codebase Killer](https://resume.kushalst.com/writing/shadow-ai-enterprise): When engineers quietly lean on unvetted AI tools, they leave behind 'Ghost AI' - unowned code, invisible data bridges, and IP leaks. What Shadow AI actually costs an enterprise, and how governance beats a ban. - [Deterministic AI: Why Your Agents Need State Machines](https://resume.kushalst.com/writing/deterministic-ai-state-machines): LLMs are probabilistic guessers, which makes free-roaming agents a liability in production. Why wrapping agents in state machines - with tools like LangGraph and n8n - buys you reliability, error handling, and observability. - [AePS Explained: How Your Thumbprint Became Your ATM Card](https://resume.kushalst.com/writing/aeps-explained): How the Aadhaar Enabled Payment System lets anyone withdraw cash, deposit money, or check a balance with just an Aadhaar number and a fingerprint - how a transaction actually flows, why it matters for financial inclusion, and how to stay safe using it. - [Beyond the Nonce: Securing React Apps in the Age of Agentic AI](https://resume.kushalst.com/writing/securing-react-agentic-ai): AI agents now browse and click through your React app - and they can be tricked into doing things a human never would. Practical defences: scrubbing UI text for prompt injection, WebAuthn proof-of-intent for sensitive actions, DOM honeypots, and a stricter CSP. - [The Monolith is Dead (Long Live the Monolith?): A 2026 Guide to Micro Frontends](https://resume.kushalst.com/writing/micro-frontends-2026-guide): A pragmatic look at micro-frontends with Module Federation - why independent deploys and domain-split teams are worth it, the performance and security taxes you pay, and when a monolith is still the right call. - [I Built a Wrapper to Fix the Two Biggest Problems with localStorage](https://resume.kushalst.com/writing/localstorage-wrapper): Why localStorage's lack of expiry and plain-text storage keep biting web developers, and how a zero-dependency TypeScript wrapper - @kushalst/local-storage-expiry - adds per-key TTL and lightweight XOR+Base64 obfuscation to fix both. - [Guide to Mandatory Screen Resolutions for UI Testing with Google Chrome Developer Tools](https://resume.kushalst.com/writing/screen-resolutions-ui-testing): The desktop, mobile, and tablet resolutions worth putting in every UI test suite - from 1920x1080 down to potato-PC 1280x720 - and how to add each one as a custom emulated device in Chrome DevTools. - [Setting up Mac for Web Development](https://resume.kushalst.com/writing/mac-setup-web-development): A checklist for turning a fresh Mac into a web-dev machine: Homebrew, iTerm2, the fish shell, Rectangle, Alfred, VS Code with a starter set of extensions, Fira Code, and Node. - [Discord Notifications on Google Form Submission](https://resume.kushalst.com/writing/discord-notifications-google-forms): Wire a Google Form to a Discord channel in five steps: grab a webhook, drop a small Apps Script into the form's Script Editor, and add an onSubmit trigger that posts each response as a rich embed. ## Full content - [llms-full.txt](https://resume.kushalst.com/llms-full.txt): complete site content in one file ## Elsewhere - [GitHub](https://github.com/JarvisStriker) - [LinkedIn](https://www.linkedin.com/in/kushal-s-t/) - [Medium](https://medium.com/@st.kushal) - [dev.to](https://dev.to/kushalst) - [npm](https://www.npmjs.com/~kushalst)