A few Sundays ago, I found myself on the rooftop of a mall restaurant, catching up with friends over a lazy lunch. As we laughed and lingered, my attention kept drifting to an elderly man seated alone a few tables away. He wasn’t eating—he was ske...
“Confidence comes from preparation. When the game’s on the line, I’m not asking myself to do something I haven’t done thousands of times before.” — Kobe Bryant
Long before I became a software engineer, I felt my f...
Seven months ago, I stepped away from Instagram.
I made the announcement. Simple, honest, no theatrics. I didn’t feel overwhelmed by likes or validation loops. That was never really the problem. I felt something quieter but more persistent:...
It’s been over three years since I last wrote on my engineering blog. Three years of growth, new experiences, and lessons learned but, also three years of silence. Not because I had nothing to say but because every time I thought about writing, an...
Freelancing is becoming a popular trend in the modern work environment. A lot of people go into freelance expecting smooth sailing. The dream is to choose their projects and do what they love when they want to. Unshackled from bureaucratic corpora...
Recently, I had to deploy a project to a DigitalOcean droplet. One of the features I really wanted for this particular project was a Continuous Delivery pipeline.
The continuous delivery website defines this as the ability to get changes of...
I've been using google cloud services over the last year and I thoroughly enjoy their range of services. In this walkthrough, I'll guide you through the process of unzipping files uploaded to Google cloud storage buckets. But first, let me give yo...
I've covered JWT authentication in some of my previous posts. For a quick recap, I'll briefly go over what JWTs are.
JSON Web Token (JWT) is an Internet standard for creating JSON-based access tokens that assert some number of claims. For e...
On the last post of the Django multi-tenant series, we set up a Django project from scratch. In this part, we'll set up the authentication system using JWTs and connect the API to a vue...