August 26, 2021

Expectations of senior+ engineers from a not so senior engineer

Senior(+) engineer. One of the most coveted titles in our field. There are endless articles on the expectations of these engineers. Naturally, these are written by other senior+ engineers. On realising this, I had a thought What would the expectations of a senior+ engineer look like from a non-senior+ engineer? Fitting the bill of that description, I decided, I should write about it! Turns out, they’re not so different from what is already in the public domain. Read more

April 26, 2021

Summary: Raft Consensus Algorithm

This a summary of the Raft consensus algorithm paper. It is currently incomplete as I’ve only written up on the sections I felt I needed to implement a bare bones version. I will add the additional sections as I need them for my implementation. 🌱 Raft is a consensus algorithm for managing a replicated log The primary objective for the algorithm designers was understandability. This was the basis for all design decisions. Read more

March 28, 2021

Ergonomic error handling with Rust

Prior to learning Rust, I never knew error handling was actually a big deal. It never struck me that there are alternative ways to handling errors, that error messages should be as informative as possible, or even that you should take time to write robust error handling logic in your code. It’s obvious in retrospect, but in Python-land, there isn’t as big a chorus on error handling. Rust’s story is still developing and as a result there are conversations about every aspect of the language. Read more

December 31, 2020

Lessons from freshman year

One year into my tech journey as a full-time software engineer - what an amazing ride! I have grown much more than I expected and taken away way too many lessons from the year. I often wonder if it ever slows down but my feeling is that it never does. Given it’s the end of the year, it’s a good time to write about my experience. This is a long post. Read more

October 14, 2020

Data replication in distributed systems

I’ve been reading the book Designing Data-Intensive Applications by Martin Kleppmann. Chapter 5 of the book takes a deep dive into the world of data replication in distributed systems. I have always carried the assumption that data replication is non-trivial but reading the chapter opened my eyes to its true complexity. This post is a summary of the chapter - it can be considered a set of notes. Let’s do this 🚀 Read more

September 14, 2020

Grokking gRPC

If you are similar to me, you’ve heard about gRPC countless times but have little idea of what it actually is, what its use cases are and why everyone keeps speaking about it. Initially, I thought it must be another buzzword being thrown around. Fortunately, I was wrong 😆. I’ve spent a couple of days reading and learning more about it. This blog post is a summary of all I’ve learned. Read more

June 21, 2020

Concepts I learned from diving into Clojure

This year, one of my goals was to learn a functional programming language. I carried this over from last year because who actually achieves their goals, right? To be fair, I did make an attempt - I began learning Haskell. Let’s just say, I’ll try again one day! Around April this year, on recommendation from one of my mentors, I decided to look into Clojure. It turned out to be a great suggestion and I’ve been enjoying hacking away in Clojure ever since! Read more

May 30, 2020

Machine learning in the wild

Machine learning promises to be transformational, providing much needed innovation across industries ranging from financial services to healthcare to agriculture. The resurgence of machine learning owing to the astonishing performance of deep learning in computer vision and natural language processing has prompted industry to jump on the bandwagon and utilise machine learning in their businesses. In fact, entire startups are being built around machine learning alone, promising that their new found algorithms will vastly improve and outperform existing products and services. Read more

February 21, 2020

Lessons learned juggling working and studying

In my final year of undergraduate studies, I had the opportunity to work part-time for Aerobotics ― an agritech startup. With a passion for development, an eagerness to learn and a curiosity for machine learning in the wild, I embraced the opportunity fully, despite having some reservations. How would I manage my final year of undergraduate studies and simultaneously deliver at an acceptable standard at work? As concerned as I was, it turned out to be an exceedingly positive and rewarding experience. Read more

Powered by Hugo & Kiss.