

I started my college career at the University of Arkansas, pursuing a degree in finance. It took me a few years, but slowly I recognized business probably wasn't for me. At the beginning of my junior year, I happened to be sitting in a lecture hall learning all about the finer points of accounting. Without quite realizing what I was doing, I stood up and walked out. On the bus home, a plan started to formulate. A few months later, I found myself in a different lecture hall — this time learning the foundations of computer science at Texas State University.


My favorite course across both majors, Business Law provided a foundation that would prove surprisingly valuable years later when I launched Dorado.

An introduction to concepts I would later revisit in Discrete Math, this course was the first to truly challenge me academically: and I discovered I quite liked the challenge.
When I started at Texas State, I knew virtually nothing about computer science or software engineering. The first semester was a steep learning curve—the coursework was far more demanding than I was used to, and adjusting to life in a new city added to the challenge. Despite the initial struggles, I persevered, and over time, everything began to click.
Built a simple program to generate matchup predictions based on league-wide match results, using the Elo rating formula popularized in chess. While functional, the model required a larger dataset and more meaningful inputs to improve accuracy.
For my Machine Learning course's final project, I worked on predicting NBA game scoring margins. We ingested box score data from the previous season, added advanced stats, normalized the dataset, and ran various ML models. Our predictions ranged from 18-21% accuracy. We identified opportunities for improvement, such as incorporating player-level data, historical player matchups, and other deeper statistical features.
My first substantial software development project. I approached the admins of an amateur DOTA 2 league and offered to build a Discord bot to run our seasonal player draft. With guidance from a mentor, I delivered a feature-complete bot in time for draft day. It included automated bidding logic, timers, fallback rules, and robust error handling, serving hundreds of league members in a live, downtime-free event.
My professional career began at Sock Club, a small Austin-based startup specializing in custom socks. Customers would submit ideas and logos, the design team would create sock patterns, and the factory would handle production. I joined just as development began on a major new initiative: a unified storefront and customer dashboard. While I contributed to that project, my most impactful work was developing the Logo Color Converter and the Will-it-Knit tool.


Migrated the public-facing frontend from Rails to Next.js, improving site performance and user experience for over 170,000 annual visitors. This involved iterative enhancements, UI consistency improvements, and cross-browser/device compatibility fixes. I also triaged frontend bugs and resolved persistent UI inconsistencies, improving maintainability and user satisfaction.
Developed a long-requested tool to automate logo color matching. Sock Club had 52 yarn colors, but incoming logos often contained subtle variations—sometimes 10 pixels that appeared identical were actually slightly different colors. Previously, designers manually mapped each pixel to the closest yarn color, a process that could take hours. Using ImageMagick for posterization and palette mapping, I built a tool that achieved 95% accuracy in automated conversions, drastically reducing turnaround time.
Created a tool to verify if a design template could be knitted by the factory's machines. Previously, templates that violated machine specifications were returned multiple times per week, wasting hours for both the design/operations team and the factory. Instead of encoding hundreds of rules as conditionals (as a previous, non-functional tool attempted), I simulated the knitting machine as a state machine. The tool has maintained a 100% approval accuracy—no template it approved has ever been rejected.
At GMF — the captive finance arm of General Motors—I joined the Cybersecurity organization's Vulnerability Management team. We safeguarded the company's infrastructure and applications by detecting, ingesting, and reporting vulnerabilities across the enterprise, ensuring risks were identified and addressed quickly.
As part of my daily responsibilities, I supported developers across the company in identifying and resolving vulnerabilities. This involved reviewing and interpreting their code, pinpointing the root cause of security issues, and finally providing both clear and actionable guidance to help them implement secure remediations of their vulnerabilities.
Our legacy codebase was extensive and often difficult to navigate. A key initiative was cleaning and refactoring this code without disrupting critical vulnerability ingestion and reporting processes. The work involved large Python and PHP codebases, as well as complex SQL scripts. Debugging could take days to trace a single issue, followed by additional time to implement and validate a fix.
My primary focus at GMF was developing the EVMS dashboard alongside two other developers. Our team lead guided architectural and design decisions, while another teammate managed deployments and DevOps. My responsibilities spanned both the frontend and backend, including UI/UX design and database architecture. Given the sensitivity of the data presented to users, we implemented strict security measures, adhering to the principle of least privilege. We integrated the organization's Azure Active Directory (Entra) via MSAL to provide a robust RBAC solution. Additionally, we were required to maintain near-perfect scores in vulnerability scans to set a security benchmark for the company. Upon release, teams across the organization gained access to real-time insights into their security vulnerabilities.
Towards the end of my time at GMF, I decided to take the leap and launch a business my friend and I had been planning for years - Dorado Metals Exchange. Our mission was to bring transparency, convenience, and trust to an industry often clouded by secrecy and exploitation.
Oversaw a wide range of non-technical responsibilities essential to the success of the business. This included building and maintaining customer relationships, managing social media presence and engagement, handling bookkeeping and financial tracking, and contributing to marketing strategy and campaign planning. Gained first-hand experience with the operational, financial, and strategic challenges of launching and running a startup.
Architected and delivered the Dorado Metals Exchange platform end-to-end. Built on a Node.js/Express backend with PostgreSQL and a Next.js/TypeScript frontend. Implemented full authentication and authorization using BetterAuth, including registration, password resets, email verification, JWT-based sessions, MFA, impersonation, and RBAC access control—supporting thousands of secure user sessions. Integrated multiple third-party APIs into a unified workflow, including Stripe (PCI-compliant payments, refunds, webhooks), FedEx (labels, tracking, notifications), Google Maps (geolocation/address validation), and reCAPTCHA v3 for bot prevention. Ensured accurate real-time data handling and streamlined operations. Engineered Docker-based CI/CD pipelines with PR preview environments, automated testing, and branch-specific deployments. Integrated Sentry for real-time error monitoring, performance tracing, and automated rollback on failure—achieving 99.9% uptime.
I started my college career at the University of Arkansas, pursuing a degree in finance. It took me a few years, but slowly I recognized business probably wasn't for me. At the beginning of my junior year, I happened to be sitting in a lecture hall learning all about the finer points of accounting. Without quite realizing what I was doing, I stood up and walked out. On the bus home, a plan started to formulate. A few months later, I found myself in a different lecture hall — this time learning the foundations of computer science at Texas State University.
My favorite course across both majors, Business Law provided a foundation that would prove surprisingly valuable years later when I launched Dorado.

An introduction to concepts I would later revisit in Discrete Math, this course was the first to truly challenge me academically: and I discovered I quite liked the challenge.


When I started at Texas State, I knew virtually nothing about computer science or software engineering. The first semester was a steep learning curve—the coursework was far more demanding than I was used to, and adjusting to life in a new city added to the challenge. Despite the initial struggles, I persevered, and over time, everything began to click.
Built a simple program to generate matchup predictions based on league-wide match results, using the Elo rating formula popularized in chess. While functional, the model required a larger dataset and more meaningful inputs to improve accuracy.
For my Machine Learning course's final project, I worked on predicting NBA game scoring margins. We ingested box score data from the previous season, added advanced stats, normalized the dataset, and ran various ML models. Our predictions ranged from 18-21% accuracy. We identified opportunities for improvement, such as incorporating player-level data, historical player matchups, and other deeper statistical features.
My first substantial software development project. I approached the admins of an amateur DOTA 2 league and offered to build a Discord bot to run our seasonal player draft. With guidance from a mentor, I delivered a feature-complete bot in time for draft day. It included automated bidding logic, timers, fallback rules, and robust error handling, serving hundreds of league members in a live, downtime-free event.
My professional career began at Sock Club, a small Austin-based startup specializing in custom socks. Customers would submit ideas and logos, the design team would create sock patterns, and the factory would handle production. I joined just as development began on a major new initiative: a unified storefront and customer dashboard. While I contributed to that project, my most impactful work was developing the Logo Color Converter and the Will-it-Knit tool.

Migrated the public-facing frontend from Rails to Next.js, improving site performance and user experience for over 170,000 annual visitors. This involved iterative enhancements, UI consistency improvements, and cross-browser/device compatibility fixes. I also triaged frontend bugs and resolved persistent UI inconsistencies, improving maintainability and user satisfaction.
Developed a long-requested tool to automate logo color matching. Sock Club had 52 yarn colors, but incoming logos often contained subtle variations—sometimes 10 pixels that appeared identical were actually slightly different colors. Previously, designers manually mapped each pixel to the closest yarn color, a process that could take hours. Using ImageMagick for posterization and palette mapping, I built a tool that achieved 95% accuracy in automated conversions, drastically reducing turnaround time.
Created a tool to verify if a design template could be knitted by the factory's machines. Previously, templates that violated machine specifications were returned multiple times per week, wasting hours for both the design/operations team and the factory. Instead of encoding hundreds of rules as conditionals (as a previous, non-functional tool attempted), I simulated the knitting machine as a state machine. The tool has maintained a 100% approval accuracy—no template it approved has ever been rejected.

At GMF — the captive finance arm of General Motors—I joined the Cybersecurity organization's Vulnerability Management team. We safeguarded the company's infrastructure and applications by detecting, ingesting, and reporting vulnerabilities across the enterprise, ensuring risks were identified and addressed quickly.
As part of my daily responsibilities, I supported developers across the company in identifying and resolving vulnerabilities. This involved reviewing and interpreting their code, pinpointing the root cause of security issues, and finally providing both clear and actionable guidance to help them implement secure remediations of their vulnerabilities.
Our legacy codebase was extensive and often difficult to navigate. A key initiative was cleaning and refactoring this code without disrupting critical vulnerability ingestion and reporting processes. The work involved large Python and PHP codebases, as well as complex SQL scripts. Debugging could take days to trace a single issue, followed by additional time to implement and validate a fix.
My primary focus at GMF was developing the EVMS dashboard alongside two other developers. Our team lead guided architectural and design decisions, while another teammate managed deployments and DevOps. My responsibilities spanned both the frontend and backend, including UI/UX design and database architecture. Given the sensitivity of the data presented to users, we implemented strict security measures, adhering to the principle of least privilege. We integrated the organization's Azure Active Directory (Entra) via MSAL to provide a robust RBAC solution. Additionally, we were required to maintain near-perfect scores in vulnerability scans to set a security benchmark for the company. Upon release, teams across the organization gained access to real-time insights into their security vulnerabilities.
Towards the end of my time at GMF, I decided to take the leap and launch a business my friend and I had been planning for years - Dorado Metals Exchange. Our mission was to bring transparency, convenience, and trust to an industry often clouded by secrecy and exploitation.
Oversaw a wide range of non-technical responsibilities essential to the success of the business. This included building and maintaining customer relationships, managing social media presence and engagement, handling bookkeeping and financial tracking, and contributing to marketing strategy and campaign planning. Gained first-hand experience with the operational, financial, and strategic challenges of launching and running a startup.
Architected and delivered the Dorado Metals Exchange platform end-to-end. Built on a Node.js/Express backend with PostgreSQL and a Next.js/TypeScript frontend. Implemented full authentication and authorization using BetterAuth, including registration, password resets, email verification, JWT-based sessions, MFA, impersonation, and RBAC access control—supporting thousands of secure user sessions. Integrated multiple third-party APIs into a unified workflow, including Stripe (PCI-compliant payments, refunds, webhooks), FedEx (labels, tracking, notifications), Google Maps (geolocation/address validation), and reCAPTCHA v3 for bot prevention. Ensured accurate real-time data handling and streamlined operations. Engineered Docker-based CI/CD pipelines with PR preview environments, automated testing, and branch-specific deployments. Integrated Sentry for real-time error monitoring, performance tracing, and automated rollback on failure—achieving 99.9% uptime.