Michael Cuffaro's personal blog

I've been programming full time for the past 5 years. Am I a senior engineer yet?

When I started my career in software, I’ve always wondered when I would finally be a “senior” engineer. Is it a matter of years of experience? Does it just happen suddenly? After a few years on the job, I can tell that the answer is not so straightforward. a senior engineer from google A little background about me I’m a self-taught programmer, and never had formal education in Computer Science or anything like that.

Speeding up a Go cli application with concurrency

Premise A few months ago I worked with a company which provided fully functional backend for online multiplayer games. As part of their product portfolio, they provided their customers with a cli utility, called ds-uploader (dedicated server uploader). Written in Go, this CLI helped the customer: Process all files and assets in a directory of their choice containing their game server. Synchronize each file to a remote object storage bucket (meaning to upload only files that are new or modified).

My experience passing Certified Kubernetes Security Specialist (CKS) exam

Earlier in 2021, right after taking the exams for CKA and CKAD in succession (the experience of which I documented here), I quickly booked the brand-new (at least at the time) CKS exam. Life happened, and I’ve ended up procrastinating the study and preparation process until now 😅. Today I got the great news of a PASS, and once again I would like to share my experience in obtaining this tough certification.

My experience passing CKA and CKAD

In December last year I was able to sit for the coveted Certified Kubernetes Administrator and Certified Kubernetes Application Developer exams, and clear them both after some preparation. This post is meant to share my exam experience, and all the materials used. TL;DR Read the exam questions carefully. Know imperative commands with kubectl like the back of your hand. Get comfortable looking things up on Build a bookmark folder in Chrome with relevant pages in kubernetes.

Easy workflow for switching Python virtual environments

The problem I set out to solve was simply to avoid manually typing pyenv/venv commands when moving into directories containing different projects, and around my directory tree. If you are like me, you would be working on different things at different times, and switching projects around seamlessly becomes a requirement to avoid waste of time, attention and context. My environment For the sake of clarity, I am using a Macbook Pro with macOS Mojave, and I have iTerm2 set up with ZSH and oh-my-zsh as my shell.

Pitfalls I encountered while learning Go

I started learning Go on and off out of curiosity, late last year. Being mainly a Python developer, I figured learning a different programming language would help to broaden my horizons. Recently though, we adopted the language for some work projects, therefore I took the plunge and got to really hacking around with it. The following are some noobie gotchas that I bumped into during development of my latest project (link below).