Headshot of Austin Williams

Austin Williams

[email protected] | La Jolla, CA

Recent Computer Science alum of West Virginia University seeking a role in frontend or full-stack engineering.

About Me

My name is Austin. I went to WVU for computer science and cybersecurity and graduated in 2023 with a 4.0. I have a passion for all things cybersecurity and web development and love learning new things. I love building web applications and complex frontends, placing an emphasis on accessibility, performance, and security.

For 3 years I've worked as a freelance bug bounty hunter on HackerOne testing public-facing web infrastructure for security vulnerabilities and submitting technical reports to triage teams. This has taught me valuable skills including professional communication and writing, as well as technical skills including vulnerability assessment, Burp Suite, CVSS 3.0 scoring, and a variety of programming languages. Much of my work has focused on frontend vulnerabilities, including CSRF and advanced classes of XSS including mutation XSS and CSP bypasses.

I am particularly skilled in docker, Cloudflare's services, TypeScript/JavaScript, HTML, CSS, PHP, and SQL, although I am also familiar with C#, Python, and Java and can learn new languages quickly. I have experience using GUI and command-line linux — bare metal, VM, containerized, and WSL2 — and I am familiar with software engineering basics including Git and VS Code.

In my free time I like picking up personal projects, watching movies or YouTube, and going on walks with my partner.

Education

West Virginia University, Morgantown, WV
Graduated May 2023
Bachelor of Science in Computer Science, Emphasis in Cybersecurity
4.0 GPA
Graduated Summa Cum Laude — Honors Foundation Scholar

Senior Project: Distributed Data Classification Platform Development

Docker
Docker Swarm
Apache Spark
Hadoop
Maven
Scala
  • Led design, implementation, and deployment of distributed machine learning/data classification system on high-performance hardware utilizing Apache Spark, Docker Swarm, Hadoop, Maven, and custom algorithms written in Scala in team of 8
In my senior year of undergrad, I led design and development of a distributed data classification platform intended for high-performance hardware as part of a faculty research project in a team of 8. The research project involved performance testing custom classification algorithms written in Scala and required a platform for provisioning and managing virtual Apache Spark and Hadoop clusters of arbitrary size, which we implemented using Docker Swarm. A corresponding webapp for interacting with the environment was also planned for development.

While I was familiar with Docker when starting the project, I was unfamiliar with Apache Spark, Yarn, Hadoop, and Scala and had very limited knowledge of machine learning, data classification, and distributed computing. I had to familiarize myself quickly with these concepts and technologies and learned a lot from doing so.

I was involved in prototyping and comparing different solutions including Docker Swarm and Kubernetes, designing the system, documenting system architecture, debugging and fixing issues with the existing Scala code, exposing access to existing web services using reverse proxies and custom frontend code, implementation, and deployment. I also stayed involved in the project after graduation, which is continued by a new team of outgoing seniors every year.

There were a number of issues encountered during the project that our team had to work around, including managing secure remote access to backend servers.

I enjoyed this project so much because it was highly complex and exposed me to many new technologies. It was highly satisfying to see the project through from design to implementation and deployment.

When presenting the project at expo, we were complemented by industry professionals from IDEMIA NSS for some of the technical choices we made in the platform's design, which was very validating.

Cybersecurity Experience

HackerOne Bug Bounty Hunting

  • 3+ years of writing technical vulnerability disclosures to internal triage teams
  • Reported 14 security vulnerabilities in public-facing web applications across 4 organizations
  • Worked with WAF and IAM system developer to resolve over 218 evasions of WAF offering
  • Wrote script to automatically scrape and scan thousands of GitLab container registry images for leaked secrets using Trufflehog, discovering private SSH keys, API keys, and GitLab personal access tokens accidentally embedded in docker images

Personal Projects

This section details my personal projects I undertook to solve a personal problem or learn a new skill, most of which I actively maintain.

ReunionPage Web Platform Development

TypeScript
Cloudflare
Astro
Web Components
  • Full-stack development in TypeScript of cloud-native family-oriented CMS using Astro, Cloudflare Workers, Cloudflare R2 (S3-like object storage), Cloudflare D1 (cloud SQLite), Cloudinary media processing, SendGrid email services, and Stripe
  • Implemented 70 endpoints of REST API
  • Originally written in PHP, rewritten from ground-up in TypeScript for cheaper integration with Cloudflare services

Interactive Family Tree Renderer Library

TypeScript
React
Web Components
Vite

"Doubletime" TypeScript Library

TypeScript
Jest
NPM
  • Developed TypeScript library for validating object schemas at runtime with compile-time type safety and published to NPM
  • Wrote 96 Jest tests across 37 test suites for automated code quality assurance, including tests of inferred TypeScript types using the TypeScript Compiler API
  • GitHub Link: https://github.com/arw6329/doubletime
  • NPM Package Link: https://www.npmjs.com/package/doubletime

SQL Playground Application Development

Docker
Docker Compose
PHP
Vue
GitHub Actions
  • Developed containerized SQL playground webapp using PHP, Vue, and Docker Compose
  • Used GitHub Actions to build docker image and publish to GitHub Container Registry
  • Connected to MySQL, PostgreSQL, and Oracle DB backends
  • Link: https://github.com/arw6329/sql-playground

Images

An example SQL worksheet in browser
The SQL playground application shown in browser
An example SQL worksheet showing a transaction and rollback
SQL worksheet showing a transaction and rollback
SQL worksheet showing a long-executing query and an error

Word Search Mobile Application Development

Flutter
Dart
  • Developed word search mobile app from ground-up using Flutter framework and Dart
  • Built custom interactive word search widget in Flutter with custom puzzle generation algorithm
  • Implemented custom Flutter confetti animation on puzzle completion
  • Added Google AdMob integration for potential monetization
  • Link: https://github.com/arw6329/flutter-word-search-app

Images

Word search app homepage Themed gamemode puzzle Random words gamemode puzzle Completed random words gamemode puzzle Numeric gamemode puzzle

TikTok Content Downloader Script

Docker
Python
Selenium
GitHub Actions
  • Developed script to scrape/download content from TikTok using Python, Selenium, and Docker
  • Used GitHub Actions to build docker image and publish to GitHub Container Registry
  • Link: https://github.com/arw6329/tiktok-save

Static Portfolio Website (this site!)

Astro
Cloudflare
  • Developed this static website using Astro to showcase resume/portfolio
  • Built and deployed automatically on GitHub push using Cloudflare
  • No templates or premade components used

Course Projects

This section details semester-long team-based projects I participated in as part of an undergrad course.

Spring Boot Web Application Development

Java
Spring Boot
ThymeLeaf
  • Developed containerized ticket registration system in Java using Spring Boot and ThymeLeaf in team of 4, including custom interactive venue maps on frontend using SVG

PHP Web Application Development

PHP
AWS
  • Full-stack development of apartment review web application in PHP in team of 8
  • Deployed to AWS Lightsail instance

Basic Operating System Development

C
  • Developed a basic multitasking operating system in assembly and C with Unix-like command line interface in a team of 4