Software builder | Open Source | Author
I have been involved and working in the tech industry, crafting code in one form or another, for the past 20 years. I am a passionate engineer who finds joy in building useful and well-architected solutions that deliver values to users. I have worked in the cloud-native open source space including as a full-time contributor to Kubernetes, and more recently, as a lead for open source tools that help with the automation of Kubernetes cluster diagnostics and mitigation.
I am a published author on several titles about Go and frequently write about my OSS projects and other topics on my blog.
Open source projects
Worked as a contributor to the Kubernetes project where I collaborated with the storage community and led the initial implementation of the internal resource controllers for the Container Storage Interface (CSI), an API that allows storage providers to uniformly expose storage primitives to running Kubernetes pods.
Kubernenes SIGs / E2E Test Framework
Created and serve as current lead of the Kubernetes Testing SIG e2e-framework project which is a Go testing framework that provides developers a simple API to express end-to-end tests for Kubernetes cluster components. This project has been adopted by many organizations in the community to capture and drive their Kubernetes testing needs.
Tanzu Crash Diagnostics
This project was created as part of the initial release of VMware's Tanzu Kubernetes Grid platform. I conceived, designed, and implemented this toolto automates the collection of Kubernetes cluster diagnostics data. Crash-Diagnostics is distributed as part of VMware’s Tanzu Kubernetes portfolio and plays a prominent role in its supportability.
Ktop is a top-like tool that I created to display useful metrics information about nodes, pods, and other workload resources running in a Kubernetes cluster. The tool works with or without an installed metric-server and can run as a Kubernetes kubectl command-line plugin.
Before platform engineering was a coined term, I created Gexe as an API for the Go programming language to simply the programmability of OS interactions using script-like idioms. Gexe plays crucial roles in several projects including Kubernetes-SIGs/e2e-framework by providing the programmable API to interact with the underlying OS.
Go for Video Linux (Go4VL)
Project Go4VL was created out of a need to use the Go programming language to capture live video from a device attached to a Linux machine. Go4VL hides all the complexities of working with the native Video for Linux (V4L2) APIs and provides idiomatic Go types, like channels, to consume and process captured video frames.
Stream Processing Platform on Kubernetes
Designed and created a stream processing platform that runs on Kubernetes. The platform uses the kube-builder project to allow users to define custom resources that can be assembled together to compose streams and stream functions to process data from different sources and send the result to different collectors.
System Programming for Realtime Video Capture in Go / GopherCon 2022
Presented at the GopherCon NA 2022 to show how to use Go to capture realtime video data from on the Linux platform (Youtube)