My Resume
Summary
I'm a software engineer with 10+ years of experience building web applications and services, as well as leading software teams both as a technical leader and manager. Lately my focus has been in building large-scale data platforms in the observability space.
I'm most fluent in Go and JavaScript, but have programmed in many other languages. I pick up new skills quickly, build minimally, and think big.
I currently work remotely from Huntsville, AL. I'm open to remote work and some travel.
Skills
Software development
- Develop backend web systems and services that are simple and performant. I've used many languages, frameworks, and databases, and am experienced with the scaling challenges of building internet scale systems. I try to balance building minimally to deliver value quickly and building well-designed systems without overengineering.
- Build frontend user applications: I've used vanilla HTML/CSS/JavaScript as well as React. I've also built mobile applications for Android.
- Build infrastructure and automation: I have experience building Linux-based systems in Google Cloud, deploying containerized applications in Kubernetes, and automating code deployments with infrastructure as code and scripts.
Leadership
- Lead engineering teams in designing simple systems for complex problems. Review code and technical designs, and help establish engineering practices.
- Work with product managers to understand plan and prioritize engineering efforts.
- Mentor engineers in career growth and setting pragmatic goals.
- Manage hiring of new engineers, participating in all stages of the hiring pipeline, including top of funnel.
Experience
LogRocket - Engineering Manager, Senior Engineer (2022 - Present)
Joined the newly formed data platform team as it was beginning to lead the company through migrating to ClickHouse for powering the product's analytical workloads. As an IC, I took on the development of a few key components of the migration: data ingestion, schema management, and operational monitoring. Eventually I took over as Engineering Manager of the team at a time where the migration project was winding down and the team began to expand its scope to other areas of the product's backend infrastructure.
- Leading the data platform team: responsible for the core data infrastructure of the product, building abstractions and tools for the other product teams and focused on the scalibility and performance of backend systems.
- Conduct 1:1s, mentor engineers in career growth, and participate in technical design and code reviews to ensure technical alignment with product goals.
- Work with product managers and stakeholders to understand product vision and roadmaps; build the data platform strategy and communicate project status to stakeholders.
- As an IC, contributed heavily to the migration from Elasticsearch to ClickHouse; developed a new batch ingestion system and schema management tools; setup monitoring and alerting for operations.
- Technologies used: JavaScript/TypeScript, Nodejs, ClickHouse, Python, Django, GraphQL, GCP, BigTable, PubSub, Kubernetes, Helm, PostgreSQL, Elasticsearch
MITRE - Lead Software Engineer (2015 - 2022)
First job out of college. I joined as a Software Engineer in what MITRE called the "tech center", which basically meant I was an internal "for-hire" engineer to join projects in need of my skills and allowed me to learn a lot of different technologies. Most of the projects I supported were dealing with distributed systems in tactical networks and visualizing geospatial data. Towards the end, I gravitated more towards building internal platforms for projects to leverage for their development.
- Led a small team in the development of multiple Android application prototypes for interfacing with soldier-worn devices. Developed systems for collecting device telemetry from field testing.
- Developed and maintained infrastructure as code automation pipelines for creating and configuring per-project compute environments.
- Designed and developed software systems in Go for reliably routing messages between devices in tactical networks. Extensive experience with configuring tactical radio networks, system integration, and field testing.
- Developed web applications and tools for machine learning researchers to easily label and categorize geospatial imagery.
- Technologies used: Go, Android, JavaScript, React, Ansible, Kubernetes, Terraform
Education
I have a Bachelor of Software Engineering degree, graduating from Auburn University in 2014. Curriculum consisted of general CS coursework enhanced with practical engineering courses focused in software process, architecture and design, and quality assurance. As an undergraduate research assistant, I worked on language refactoring tools for C and Go which included extending the lexical grammar for parsing and developing an text editor API.
About Me
Growing up in rural Alabama, I was a late bloomer when it comes to being exposed to the internet, not having untethered internet access until I left home for college. There I got a job as a web developer and cut my teeth on JavaScript and ColdFusion maintaining webpages for the university. The joy of building things and problem solving sparked me to swap majors to Software Engineering and the rest is history.
My hobbies and interests are all over the place, most revolve around being outdoors and include mountain biking, rock climbing, and hiking. I have a passion for natural materials and also enjoy woodworking and spoon carving. I also brew my own beer.