headshot

Welcome

My name is Chris and I'm a software developer with experience spanning SDK development, firmware engineering, QA automation, and some DevOps thrown in there for good measure. This page outlines my experience as well as my professional and personal projects, so please have a look around.

  • Software Development

    Without trying to sound too meditative, my approach to software development is one of balance, for example the balance between complexity and maintainability or between optimization and reusability. I think this leads to software of enduring value and is always a goal for which I strive.

  • Firmware Development

    There is something fulfilling about squeezing every bit of performance from challenging environments, and for me, firmware development provides that satisfaction. It's thrilling to overcome hardware limitations and see the tangible results as a system comes to life.

  • Test Automation

    Another avenue I've found to scratch that efficiency itch is in test automation. Not only does it free up manual testing bandwidth to solve larger challenges, but can also test deeper and further than would be otherwise feasible. The rapid feedback and iteration that this enables can be transformative and I love being a part of that.

  • DevOps

    Given the aforementioned, it makes sense that I would enjoy expanding into DevOps as well, since it can make a similar impact across the entire build, test, and release workflow. The integration of diverse tools and technologies ensures there is always something new and exciting to master. Knowing its integral importance to a project, the rewarding feeling of crafting a speedy and reliable CI pipeline is hard to match.


Selected Projects


Just for Fun

Personal projects to explore programming languages, platforms, technologies, etc.

Peg Game

Peg Game

A classic brain teaser that involves arranging 15 golf tees (or pegs) in an equilateral triangle on a board. One peg is then removed creating an available hole. The goal is to jump over each peg with another peg, removing the jumped-over peg, until only one remains. It is recreated here for the Apple Watch.

Uses: Swift, SwiftUI, watchOS, XCTest, XCUITest

Link
Peg Game Solver

Peg Game Solver

Having trouble with the Peg game above? In addition to the many solutions published on the internet, this program will solve game boards with 4, 5, or 6 rows. Both Python and C versions are provided.

Uses: C, CMake, Python

Link
Jump To The Recipe

Jump To The Recipe

A 100% text-based recipe website that eschews long descriptions, stories, images, ads, and any other bloat the comes between the recipe and the cook. It is designed to display pleasantly on screen sizes from mobile phones to desktop monitors. Currently under-development and not yet published.

Uses: Python, Flask, Jinja2, SQLAlchemy, SQLite, Bootstrap CSS

This Website

This Website

This website is generated and served via GitHub Pages and customized using Jekyll, a static site generator. By utilizing the Liquid template language, formatting and content can be updated easily and independently. The frontend is powered by Bootstrap CSS and extended with Material Design for Bootstrap (MDB) and the Animate-on-scroll (AOS) library.

Uses: GitHub, Jekyll, Liquid, Bootstrap, MDB, AOS

Link