The Remote Work Setup That Took Me 3 Years to Get Right
Not a gear list. A full setup - hardware, software, habits, and boundaries - that actually works for engineering work done from home.
Not a gear list. A full setup - hardware, software, habits, and boundaries - that actually works for engineering work done from home.
In a large org, doing good work is not enough - it has to be visible to the right people. Here is how to build the right kind of visibility without the politics.
Meetings are the silent tax on your productivity. Here is a systematic approach to attending fewer without damaging your relationships or career.
Most developer setups are layers of accumulated junk. The solution is to wipe everything and rebuild from scratch. What follows is the stack that emerged after three iterations - genuinely fast, with specific tools and config that make a real difference. The Core Stack These are not optional extras. They are the foundation. Tool What it replaces Why it wins zsh + zinit bash + oh-my-zsh Faster load, lazy loading plugins tmux Terminal tabs Persistent sessions, splits, scripting fzf Manual history search Fuzzy everything starship custom PS1 Fast, any shell, zero config needed eza ls Colors, icons, git status inline bat cat Syntax highlighting, line numbers ripgrep grep 10x faster, respects .gitignore zoxide cd Frecency-based directory jumping zsh Without the Bloat Oh-My-Zsh is slow and most people use 5% of it. Switch to zinit with lazy loading. ...
The 50-30-20 rule - 50% on needs, 30% on wants, 20% on savings - was designed in America by Senator Elizabeth Warren. It works reasonably well for a single American professional with no extended family obligations, subsidized housing, and no aggressive savings goals. It does not work well for most Indians. Here is why, and what to use instead. Why 50-30-20 Fails the Indian Reality Test Problem 1 - Indian tax structure is front-loaded. ...
Everyone learns about Pods, Deployments, and Services. Fewer engineers know about the Kubernetes features that prevent 3 AM pages and runaway costs.
Most people know NPS Tier 1 as the retirement account with a lock-in until 60. Far fewer know about Tier 2 - the voluntary savings account attached to NPS that has no lock-in, no withdrawal restrictions, and in one specific scenario, a significant tax advantage over mutual funds. Here is the full picture. What NPS Tier 2 Is NPS Tier 2 is an add-on investment account you can open only if you have a Tier 1 NPS account. The mechanics are nearly identical - same fund managers (SBI Pension, HDFC Pension, ICICI Prudential Pension, etc.), same asset classes (equity, government bonds, corporate bonds), same PFRDA oversight. ...
The Android vs iOS argument has been the same for years: iOS wins on smoothness, software support longevity, and cross-device integration. Android wins on customization, hardware variety, and price range. Android 16 shifts several of those checkboxes. Predictable Updates: The Biggest Structural Change Android’s fragmentation problem has always been update distribution. Google releases Android, OEMs take 6-12 months to ship it, carriers add their own delays, older devices never get it. Three years after release, a flagship Android phone might be running a two-version-old OS. ...
Operators are one of the most powerful patterns in Kubernetes, and also one of the most poorly explained. Every description either assumes you already understand controllers and CRDs, or it explains them with an analogy so vague it tells you nothing. Here is the direct explanation. The Problem Operators Solve Running stateless applications on Kubernetes is straightforward. Deploy a pod, expose it as a service, done. Running stateful applications is different. Databases, message queues, and caches require operational knowledge that goes beyond “run this container.” ...
The dream is obvious: earn in dollars, live in India, work on your own schedule. The reality is messier than the YouTube thumbnails suggest, but it is absolutely achievable if you do it right. Dozens of developers try freelancing, fail in the first 3 months, and give up. The pattern is always the same - they undercharge, pick the wrong platform, and do not treat it like a business from day one. ...
AI coding tools have revived the “junior developers are obsolete” panic. The argument is wrong, but not for the reasons most people give.
PostgreSQL has gone from “solid relational database” to the default choice for almost every new project. Here is why that happened and whether the crown is deserved.
Your college name is not the blocker you think it is. Here is a honest roadmap from someone who has seen both sides of the interview table.
Buying term insurance ten years later does not just mean slightly higher premiums. Here is the actual rupee difference and why it compounds in ways most people never calculate.
Most developers use Redis for one thing: storing session data or caching query results as simple key-value pairs. That is using a Swiss Army knife as a butter knife. Redis has seven distinct data structures, each designed for specific access patterns. Let me walk through the ones that solve real problems in ways you probably did not realize. Sorted Sets: Leaderboards and Rate Limiting A sorted set stores members with a floating-point score. Members are kept in sorted order. Operations are O(log n). ...
Cal Newport’s deep work concept is genuinely useful. The advice to implement it is usually not. “Block 4 hours every morning for focused work” sounds great until you have a daily standup at 10am, a sprint planning at 11am, and a 1:1 with your manager at 2pm. The reality of most developers’ days is a calendar they partially control. Here is how to get real focus time within that constraint. ...
Python’s type hints are optional, which means many codebases have inconsistent coverage - some functions annotated, most not. When coverage is partial, the benefit is also partial. The value of type hints is not documentation. Documentation can be wrong. The value is the ability to run a static type checker (mypy or pyright) and have it find bugs before they reach production. But not all type hints are equally useful. Some annotations describe things that are obvious. Others describe things that are genuinely dangerous - places where a wrong assumption leads to a runtime error. Here are the ones that do the most work. ...
GitHub Copilot has been in widespread use for three years. The productivity claims were partly right. The concerns about code quality were partly right. Here is the real data.
BGP - Border Gateway Protocol - is the routing protocol that makes the internet work. Every time a request leaves your browser and traverses the internet to a server, BGP is responsible for determining the path. Most developers treat networking as a black box below their abstraction level. This is understandable but wrong. BGP failures cause major internet outages, including ones that affect your services. Understanding BGP makes you better at building resilient systems and gives you a mental model for diagnosing problems that would otherwise be inexplicable. ...
React Server Components (RSC) shipped as stable in React 19 and became the default in Next.js 13+. Millions of applications run on them. Most developers who use them do not fully understand the rendering model. This is not an abstract concern. Not understanding RSC leads to performance problems, bugs with client-side state, and incorrect mental models that make debugging difficult. The Old Model First To understand RSC, you need to understand what it replaced and why. ...