![Little ol' me](/_next/image?url=%2Fme.jpg&w=256&q=75)
Seth Johnson (He/Him)
Advanced Software Engineer @ Kroger Technology
š Portland Metro Area
>Ā code with a little magic
about me
Welcome! I'm a dynamic full-stack software engineer known for my proficiency across a diverse range of programming languages and my expertise in driving projects through the entire software development life cycle (SDLC). With a keen eye for detail and a passion for innovation, I thrive in transforming ideas into scalable and reliable solutions.
some of my fun projects
krgr.us
A "20 percent time" project I undertook in 2018 to make the case that building, scaling, and maintaining an in-house URL shortener could be done more cheaply and effectively than proposed third party solutions. The proof of concept was developed with Java, Webflux and Reactor Netty, the last of which I became a contributor to while developing this solution.
I take great pride in the methodical architecture and implementation that enabled this project to grow with the unprecedented demand. It remains the chosen solution for all of Kroger's internal and customer facing short URLs.
RaspGary-PiGax
Personal project to build a mental health and mindfulness chatbot configured with personas from tabletop roleplaying games designed for simple deployment to Raspberry Pi or other low power SBCs.
Users could interact with the chatbot via "wisdom saving throws" designed to self-rate state of mind across several criteria. The bot would (in character) offer a range of physical or mindfulness exercises, recommendations, or resources and contacts depending on the ratings.
Coming up with the name was at least as fun as building the service :)
JaCob
A DX tool I developed during my time building microservices that interacted directly with IMS mainframes. Designed to be an ORM for the mainframe, this tool would consume Message Input Descriptors and Message Output Descriptors (MID/MOD) and generate Java models and service interfaces.
I undertook this project early in my career and it served as a great crash course into the complexities around recursive descent parsing of structured text.
Roomr
A progressive web application that enabled employees and guests of a company's offices to quickly book meeting rooms by shortest distance and quickest availability, as well as provide turn by turn directions to a booking through vectorized maps of building schematics. Application used geolocation, and barometric sensor to place a user on a particular floor as calculated by building height relative to sea level + height of each floor in a building.
Hour of Code
One of the greatest privileges of my life has been the opportunity to inspire and educate elementary school children about technology and software engineering for several years through Hour of Code. As someone who grew up watching the likes of Bill Nye, Carl Sagan, and Steve Irwin I know the transformative power that passionate educators can have.
Tech library/Homelab
I consider myself (or at least aspire to be) somewhat of a cyberpunk with roots in the early 90's - experimenting and hacking on any tech I could find. Often I feel that the tremendous computing power we have today goes underutilized, and that power is not distributed as equally as it should be.
In response to this, I maintain a lending library of sorts with upcycled and repaired devices - phones, tablets, laptops, wearables, etc. My library serves to freely lend or gift devices to folks I know without adequate access to computing devices for education, employment, or simply equity. I also offer some maintenance, computer competency, and even software engineering tutelage as I am able.
The devices I am not lending out at a particular time, or are too old/low powered for general use get added to a very non-standard microk8s cluster. This cluster hosts a Kanban board, Home Assistant, and serves as a sandbox for much of my local development. The unpredictability and uniqueness of this cluster also afford me seemingly unlimited opportunities to learn and relearn device administration, disaster recovery, and scaling.