Vladimir Vivien
Software builder | Open Source | Author
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.
Packt Publishing 2017 (ISBN 9781788390552)
I frequently (well, relatively) publish blog posts on the Medium platform about Go, Kubernetes an other topics.
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.
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.
Github.com/kubernetes-sigs/e2e-framework | blog
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.
Github.com/vmware-tanzu/crash-diagnostics | Crash-Diagnostics docs
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.
Github.com/vladimirvivien/ktop
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.
Github.com/vladimirvivien/gexe
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.
Github.com/vladimirvivien/go4vl | GopherCon NA 2022 presentation
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.
Presented at the GopherCon NA 2022 to show how to use Go to capture realtime video data from on the Linux platform (Youtube)
Presented at the GoBridge's Go Developer Network presentation series on using Go for system programming to capture real-time video on the Linux platform (YouTube).
Hosted and participated in the popular VMware’s (formerly Heptio's) TGI Kubernetes show (episodes 151 and 170).
Presentation exploring programming with the Go programming language's type parameters (YouTube).
A lightning talk presentation on higher levels of abstractions for Kubernetes client APIs (YouTube).
Presentation on using Protocol Buffers and gRPC to build IoT solutions with small devices (YouTube).
A short lightning talk presentation about interoperation between Go and other languages (YouTube).