Latest posts

Bidding Adieu to Microsoft

After a roller-coaster 7.5 years at Microsoft, I handed in my ID card and laptops few days back. Even though this moment had been brewing in my mind since long, it was still bittersweet when it finally arrived. Microsoft has been an incredible place to work, especially in terms of hybrid work and perks, which made this decision all the more difficult.

But after spending 21+ years in the software industry working at large corporate behemoths, I felt it was time for change. Time for pause, reflection and reset. I will be taking the next few months to focus on health, sleep, and personal growth, revisit long-neglected passions like writing and traveling, spend more time with family and build some cool stuff while learning new skills along the way.

Problem of autocorrect - A quick solution using Approximate String Matching

I’ve always been curious about Google’s auto-correct feature. Let’s face it, it looks ultra cool, especially when we type in some vague, disjointed letters and Google suggests exactly what we had in mind. It almost feels like Google is reading our thoughts!

With some free time on my hands, I decided to dig into how it actually works. Of course, I don’t have the monstrous server farms that Google has at its disposal to build an equivalent web-scale solution. Hence I thought of and implementing a version more suited to a local/desktop setup.

What matters the most?

Sorry for the clichéd title, yes, I’m trying to hook you in. But stick with me, because this isn’t about vague “life purpose” philosophy. I’m talking about something more practical: what actually makes people succeed in corporate careers?

Think about it. In almost every field, whether marketing, sales, finance, or software development, you’ll find that most people start strong, but many drop out along the way. Some burn out, some others stay put in middle management until retirement, some settle for “good enough” and some others simply drift. And then there are a few who keep climbing, who seem to stand out and rise above the rest.

Pomodoro Technique

People often assume that being an engineer in the software development fiel, I spend all my time solving the most complex and exciting problems out there. While that’s partly true, the reality is a little less glamorous.

Yes, some days are filled with creative challenges like hunting down obscure bugs, brainstorming design decisions, or debating architecture trade-offs. Those days make you glad you chose this field. But every now and then, even we engineers are subjected to the “non–grey-cell-consuming,” soul-crushing, boring, mundane tasks as well. And the irony is, you really can’t have one without the other.

Melancholy

Some days are just off. You find yourself wondering how to pass the time and engage in random activities. The activities themselves don’t need to have any meaning. You just do something, anything, as if your mind is stuck in a cycle of indecision and laziness. And before you know it, BAM! It’s 2 AM, and you’re still staring at your computer monitor. Where did the time go? “Ah, life sucks!” you declare, while continuing to stare, mindlessly browsing, munching on unhealthy snacks that chip away at you bit by bit. Then comes yet another resolution (in vain) to change yourself and upgrade your life first thing the next morning.