Why do I know shell, and how can you?

“Why do you know so much shell?” is a question I’m getting a lot at work lately. So yeah, why? And how can you learn it too? There is no secret here: I know the shell well because I was “forced” to write tools in it for a while and, because of that, I made a conscious effort to learn the language and get better at it. You see, most people that write shell don’t want to deal with it. They stitch together whatever works into a script and call it a day, making a bunch of spaghetti even if it goes against the coding best practices they already know. And when they encounter some odd syntax they don’t recognize, their reaction is to say “this has to be rewritten in Python!” instead of taking a breath and trying to really understand what’s going on. It doesn’t help that plenty of senior engineers scoff at shell scripts. And it is true: the shell is arcane and has many flaws as a programming language. I don’t want to convince you to start writing new tools in it. But the shell is also an incredible rapid prototyping language, and you can use it to solve business problems really quickly and with surprisingly little code. If you pause for a second to learn it, you’ll realize that you can bend tradition and write maintainable shell code too. Hear out how I got into writing so much shell and how you can get better at it too.

November 10, 2023 · Tags: blogsystem5, personal-story, shell
Continue reading (about 7 minutes)

Farewell, Microsoft; hello, Snowflake!

After two years, it’s time for a change: I left Microsoft last week and I’m starting at Snowflake today. Read on for details on my stint in Azure Storage, why I ended up looking for a new role, and how I landed at this new company.

October 31, 2022 · Tags: featured, microsoft, personal-story, snowflake
Continue reading (about 10 minutes)

My interviews with Facebook, Twitter, and Microsoft

Now that you know about my recent departure from Google, it is time to look into how the whole interviewing process went with all of Facebook, Twitter, and Microsoft. Read on for details on engineering levels, the timeline of all three processes, and some key observations of each.

October 23, 2020 · Tags: facebook, google, microsoft, personal-story, twitter
Continue reading (about 21 minutes)

Farewell, Google; hello, Microsoft!

After a little over 11 years, it’s time for a much longed change: I’m leaving Google and I’m joining Microsoft as a Principal Software Engineer for Azure. These job changes are effective as of this week, but my family and I already moved from New York City to Redmond, WA about three weeks ago. Read on for a recap on my tenure at Google, the whys behind my departure, and how I ended up choosing the position in Microsoft Azure after mulling over offers from Facebook, Twitter, and Microsoft.

October 19, 2020 · Tags: featured, google, microsoft, personal-story
Continue reading (about 13 minutes)

"Your English is pretty good!", they said

As I spend September in Seoul and attend an intensive Korean language course, my story with English comes to mind. This is a story I have told a bunch of times to friends and coworkers and it’s time to write it down for posterity’s sake. In the title of this post is a verbatim quote of something I have been told many times throughout the years: Your English is pretty good!

September 20, 2015 · Tags: english, essay, featured, personal-story, writing
Continue reading (about 9 minutes)

Six years at Google

Mission: Site Reliability Engineer for the Storage Infrastructure at Google D-Day: May 25th, 2009 Location: Dublin, Ireland Duration: Unspecified Six years have passed. Six years since I dropped out of a Ph.D. program, left home, and took a plane to Dublin, Ireland, to start my work life adventure by joining Google. Two years later, I moved to New York City and I am still here without any specific plans to leave.

May 26, 2015 · Tags: essay, featured, google, personal-story, work
Continue reading (about 9 minutes)