I am a computer programmer who has been developing and maintaining native and
web applications since 2018. I have also been providing systems administration
services and technical mentoring since 2016. I aim to create simple,
performant, and well-documented software that solves real problems with no
surprises.
I am fluent in Rust, C#, Python, JavaScript, Bourne Shell, and HTML+CSS. I am
also familiar with Java, PHP, C, C++, TypeScript, and PowerShell. I have used
a variety of frameworks and libraries, as well as a myriad of web servers,
databases, and "DevOps" toolkits.
Skills
Software Development
Build performant, correct applications and services with a focus on
automating manual labor and making architects'/operators' lives easier.
Contribute to internal and client-facing front-end software that is simple
and easy to use.
Integrating with organizational build chains and DevOps pipelines for
deployments with zero surprises.
Systems Administration
Architect and arrange physical machines and the servers that run on them for
minimal downtime and secure, speedy operation.
Administer container orchestration clusters with dozens of "micro-services"
that need to communicate together to achieve a common goal. Apply
zero-downtime upgrade practices as well as high-availability horizontal
replica scaling for high-use applications.
Self-host a variety of tools, applications, and web servers for the purpose
of learning and ownership of digital property.
Technical Mentoring, Leadership
Transfer knowledge and skills in a practical, enjoyable fashion in language
that is [hopefully] easy to comprehend.
Take a senior role in directing a flourishing new team of developers to get
started quickly and achieve a state of production in little time.
Co-host informal lectures and "lunch and learns" on a variety of topics,
especially but not limited to computing.
Experience
Automatic Data Processing | Software Engineer | Aughst 2021 to Present
Automatic Data Processing | Application Developer | June 2018 to August 2021
Authored Altruistic Angelshark, an Avaya Communication Manager
automation daemon, to ease friction caused by existing, interactive, and
fragile tools and processes. This tool was used to save the company
rougly half a million dollars per year by enabling unused license
cleanup with little operator input. It was deemed appropriately useful
to release as free and open source software. It was written in Rust and
operates over the SSH2 library using an undocumented Avaya protocol.
Co-authored an authentication/authorization API to specifically serve
the needs of our team. This software interacted with Active Directory
over LDAP, presented users with JSON Web Tokens, and was reworked be
used as a reverse proxy in front of our container services.
On-boarded and mentored team of six developers on organization DevOps
technology and practices. This included configuring and
knowledge-sharing a Jenkins CICD pipeline, local Docker Trusted
Registry, and IBM Cloud Private flavor of Kubernetes. This also
consisted of informal lectures on concepts such as continuous deployment
and delivery, the "12-factor" methodology, and containerization.
For multiple years in a row I offered my services for on-site training
of new college hires. My responsibilities included mentoring and
knowledge sharing for typical industry tools, languages, and frameworks,
as well as the inner workings of the company. Classes typically
consisted of 20-30 new employees.
Freelance | Web Application Designer & Developer | Jul. 2019 to present
Built a from-scratch art studio storefront to exactly fit the customer's
specifications. Site is a mobile-friendly art gallery with a cart and
checkout system. I used Rust and Vue JS for the majority of this
project. Functionality was delivered ahead of schedule and I was able to
quickly compensate for shifting requirements.
Built and maintained a variety of static sites.
The College of William and Mary | Technology Support Specialist | Feb.
2015 to May 2018
Worked directly with customers to diagnose issues and install and
configure software. Interactions were in-person and over the phone.
Responsibilities also included performing basic repairs to enterprise
laptops.
Maintained three to four public access labs at a time during the Summer
months, each with 20-30 machines.
Academics
I have a Bachelor of Science in Computer Science and graduated from the
College of William and Mary in May of 2018. While there, I participated in
several group software development projects such as hybrid Android application
testing and presided over the campus Game Design Club.
About Me
I wrote my first program on a TI-84 in BASIC to help finish my high school
math homework faster. I quickly transitioned to building more complicated
programs but have continued to enjoy finding the smallest amount of code to
solve a problem quickly, correctly, and securely.
I grew up in and still call Hampton Roads, Virginia my home. In my spare time
I drive and maintain a classic car, a 1953 Hudson Hornet. I enjoy travelling
and being at home with my wife and cocker spaniel. I also self-host a web
server in a closet in my home.