Hi there! Welcome to my public github profile! Thanks for visiting!
I started programming to get closer to my Dad. He and my mother studied CS in college. My dad kept up with it for a long career and my mother still uses those skills all the time in her work. When my dad was sick with the flu (I was in high school at the time) his idea of a way to pass the time was call me into the bedroom to pair program a Soduke solver in Javascript!
My favorite aspect of software engineering is learning new things and teaching others those things. The spirit of collaboration is strong in this community! My plan for a long time now has been to have a successful career in software development, then take what I've learned and give back by becoming a professor. Things seem to be going well so far to that end!
I am currently working at LeftLane Software Inc., a vertical SaaS company aiming to deliver modern software solutions to independent car dealerships. I was the first engineer hire in 2022 and was promoted from Founding Engineer to Director of Engineering and Operations in 2024.
We built this application via RedwoodJS, a full-stack Javascript/Typescript framework featuring React, GraphQL, and Prisma.
I am always learning. For ever a student (and teacher!). The biggest part of my identity is that as a learning being.
I periodically take software courses and tutorials. Not just to hone my skills, but to hone my teaching skills. You may have heard that "teaching is the best way to learn". I find the reverse to be true as well, that "learning is the best way to teach", as in giving others a chance to teach you is a great way to have them learn. So training myself as a student is training for being a teacher. I also love to mentor others!
Some books have been the influentual for me in recent years:
- "A Philosophy of Software Design" by John Ousterhout
- Loved the chapter on good documentation. Gave me the words I needed to explain to others what made good/bad inline comments. TL;DR: A useful comment adds context or specificity, describing the code at a high level summary or adding extra details not immediately obvious from the code itself. A sign of a bad comment is one that repeats the variable names or describes the code at the same leve, just in English (fine for learning, but not create for future devs who know how to read code).
- "The Clean Coder: A Code of Conduct for Professional Programmers" by Robert C. Martin Series
- The hottest take on flow state, or "getting in the zone", I've ever heard! TL;DR: avoid flow state when working on long lasting work that multiple devs will work on. You lose sight of the big picture when you get into that focus mode, and 2x speed up you might get from coding in the "zone" will not make up for the compounding architecture decisions you make that didn't take the whole context of the project into consideration.