Portrait of Matthew Duong

About

Hi, I'm Matt, an Sydney born product-focused Full-Stack software engineer based in Seattle, Washington, USA. Below, you'll find my latest articles and projects.

I Ditched Schemas For PostgreSQL’s JSONB In Our Document Parser - Here’s Why

Software Engineering

I Ditched Schemas For PostgreSQL’s JSONB In Our Document Parser - Here’s Why

About the project In my day job, one of the most interesting projects I’ve worked on is the document parsing and extraction engine, informally known as the “document center.” This engine processes various types of scanned or photographed documents…

Integrating Single Sign-On As A Startup: My Experience and Tips

Startups

Integrating Single Sign-On As A Startup: My Experience and Tips

The customer request Recently in my day job, we received a request from one of our enterprise customers to integrate Single Sign-On (SSO) into our product. The customer was already utilizing Microsoft Azure Active Directory (Entra ID) as their…

Don't use the WIFI When Running Technical Demos

Startups

Don't use the WIFI When Running Technical Demos

Background Last week, my employer made its debut as an exhibitor at the AICPA conference in Las Vegas. Up until now, we have been diligently working behind the scenes, iterating on our core products in collaboration with our accounting firm partners…

5 Things you Should Consider When Building an Enterprise Chat Assistant

Self Hosting;

5 Things you Should Consider When Building an Enterprise Chat Assistant

Imagine you're an executive at a fast-growing startup, scrambling to prepare for an imminent board meeting. As usual, you forgot to prepare, and the calendar alert just reminded you 30 minutes before the meeting starts. In a panic, you quickly…

How to Process 10K Bank Transactions Through an LLM

Self Hosting;

How to Process 10K Bank Transactions Through an LLM

What are LLM Context Limits and How to Overcome Them? LLMs like GPT have changed how we think about AI, providing insights and generating text based on the context provided by extensive training data. However, these models have a limitation known as…

How to Prevent Mangled URLs in OpenAis LLM Chat Completions Api

AI,LLM,Startups

How to Prevent Mangled URLs in OpenAis LLM Chat Completions Api

Introduction: The Task As a founding engineer at Truewind (YC 23) - AI powered accounting software, I was tasked with developing a proof of concept (POC) for a public company. The project involved creating a chat assistant that leverages a collection…

TinyPilot Voyager 2a Review: KVM for consumers?

Self Hosting,Devops

TinyPilot Voyager 2a Review: KVM for consumers?

Background In a home server setup with multiple nodes, streamlined management is essential. Enterprise-grade solutions like iDRAC offer advanced remote management features, but these simply don't exist in consumer-grade servers. This absence made…

What Protocol Should You Choose For Your NAS?

Self Hosting;

What Protocol Should You Choose For Your NAS?

Some of you know I run a YouTube channel covering on premises hosting and homelab. Over time, my raw video footage has really grown in size, now exceeding a whopping 4 Terabytes. To manage this deluge of data, I recently embarked on a mission to…

My Experience Running HeadJobs: Generative AI at Home

Kubernetes;Self Hosting; Software Engineering

My Experience Running HeadJobs: Generative AI at Home

The Problem: The High Cost of Cloud Computing and non-existent inventory As the administrator of Headbot, a generative AI project that creates personalised AI avatars, I found myself grappling with the exorbitant costs and limitations of cloud-based…

Software Mechanics: A Guide to Semantic Versioning

Software Engineering

Software Mechanics: A Guide to Semantic Versioning

The Problem Software, akin to a car, depends on components (dependencies) that require consistent upkeep. Unlike a car, though, software must often be updated without interruption, a process comparable to performing maintenance on a car engine while…

Which Kubernetes Distribution Should You Choose? Lessons From My Failure.

Kubernetes;Self Hosting

Which Kubernetes Distribution Should You Choose? Lessons From My Failure.

Background Last weekend, my home Kubernetes cluster blew up. I was running a 6-node cluster for some extensive workloads for coderone (ai game tournament) and headbot (generative ai avatars), and suddenly, things went south. Here's my journey from…

Cloud-Agnostic MongoDB Backups: Using Kubernetes

Kubernetes;Self Hosting; Devops

Cloud-Agnostic MongoDB Backups: Using Kubernetes

The Problem I've been managing production services in my home lab, including running manual backups. This weekend, I decided to automate backups for my MongoDB in Kubernetes. This would not only save me time and protect my data but also offer me an…

The Maths Behind Privacy That You Use Everyday

Computer Science

The Maths Behind Privacy That You Use Everyday

Introduction This article is about end-to-end encryption and more specifically “secure key exchange”. You use it all the time, including to read this article. It’s used in the secure launch of a nuclear strike, in the banking system or even when you…

Setup your Own Website For Free: Rasberry Pi Tutorial

Kubernetes;Self Hosting; Software Engineering

Setup your Own Website For Free: Rasberry Pi Tutorial

Introduction I've created this tutorial especially for those who might not consider themselves to be too technical—marketers, salespeople, recruiters—really, anyone who's ever dreamed of having their own website. You won't need to navigate technical…

On Prem Kubernetes Container Attached Storage Options

Engineering

On Prem Kubernetes Container Attached Storage Options

Problem As some of you may know I’ve been running my in-home on premises server for the last 6 years. Originally that was accomplished through a single-node micro k8s kubernetes cluster. However due to increased workloads I had to expand to a multi…

© 2023-2024 Matthew Duong