Two Blogs Worth Following If Serious About Getting Better in System DesignForget about typical system design interview material and start learning about real-world system design challenges faced in the tech…Oct 5Oct 5
Scatter & Gather in Java: The Simplest ApproachThere are many ways to implement scatter and gather using Java’s concurrency constructs. I’ve tried several approaches and will detail in…Aug 23Aug 23
GoLang’s Overlooked StrengthsWhen programming languages are compared, software engineers often fall into the trap of only comparing the syntactic features of the…Aug 21Aug 21
Published inCodeXStop Using **kwargs as a Method Argument For Goodness’ SakeI’ve been recently maintaining a code base that has extensive usage of **kwargs in method parameters which had a frustrating effect on me…Aug 19Aug 19
Protect Your Child’s Android Smart Phone or Tablet From Adult ContentConfigure the Free OpenDNS Cisco FamilyShield using those simple steps that work on Android devicesJul 29Jul 29
Porting Bash Scripts to PythonThis ain’t a tutorial on how to use LLMs for porting bash code, just three small helpful tips to get your started correctlyJul 24Jul 24
Reverse Engineering GFS (Google’s File System)This unfinished article has been hanging around for sometime in my draft stories, it’s a collection of notes in Q&A format trying to…Dec 25, 2023Dec 25, 2023
Dissecting ByteByteGo’s Notification System Design SolutionA closer look into the proposed system design outlined in the solution with an effort to extract the important lessonsNov 19, 2023Nov 19, 2023
Utilizing “Jitter” to Avoid Operational BitterI came across Amazon’s Builder Library article discussing ‘Retries, Timeouts, Jitter’ and thought the Jitter section deserves a closer look…Nov 11, 2023Nov 11, 2023
Designing a “User Settings” Database TableAs much as this task seems simple, many software engineers keep getting it wrong. In this article I’ll quickly explain how a user settings…Nov 9, 2023Nov 9, 2023