Vladimir Vivien

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.

Publications

I am a published author on several titles about Go and frequently write about my OSS projects and other topics on my blog. 

Book website http://golang.fyi

Packt publishing 2016 (ISBN 9781784392338)

Packt Publishing 2017 (ISBN 9781788390552)

I frequently (well, relatively)  publish blog posts on the  Medium platform about Go, Kubernetes an other topics.

Open source projects

Kubernetes 

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.

Github.com/kubernetes

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.

Github.com/kubernetes-sigs/e2e-framework | blog

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.

Github.com/vmware-tanzu/crash-diagnostics | Crash-Diagnostics docs

Ktop

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

Gexe

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

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.

Github.com/vladimirvivien/go4vl | GopherCon NA 2022 presentation

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.

Github.com/vladimirvivien/streaming-runtime-go

Public speaking

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)

Realtime video capture with Go / Go Developer Network (2021)

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).


TGI Kubernetes  / VMware  (2021)

Hosted and participated in the popular VMware’s (formerly Heptio's) TGI Kubernetes  show (episodes 151 and 170).


Go Programming with Generic Types / GopherCon Russia (2020)

Presentation exploring programming with the Go programming language's type parameters (YouTube).


Beyond operators / KubeCon NA (2019)

A lightning talk presentation on higher levels of abstractions for Kubernetes client APIs (YouTube).


Efficient IoT with Protocol Buffers and gRPC / KubeCon EU (2018)

Presentation on using Protocol Buffers and gRPC to build IoT solutions with small devices (YouTube).


Calling Go functions from other languages / GopherCon US  (2017)

A short lightning talk presentation about interoperation between Go and other languages (YouTube).