I am a software engineer at Khan Academy and a graduate of the University of Cincinnati.
I am passionate about full-stack development, number theory, and physics/simulation, but
first and foremost I love any new programming challenge. If I'm not busy coding,
I'm probably making music or playing retro video games.
Skills
React
Golang
Java
Résumé
Experience
December 2021 - Present
Software Engineer II
Khan Academy
Technologies: React | Golang | Google Cloud Datastore | BigQuery | Google App Engine
Full-stack developer building education platform serving 60M learners/year
Spearheaded a new onboarding experience for test prep and conducted A/B test demonstrating that 22% more users studied on our platform after the change
Championed inclusivity for non-native English speakers by identifying and fixing a longstanding i18n oversight causing ~2.5M learners per year to incorrectly reach a 404 page
Mobile developer for highly scalable white-label freight logistics system valued at $40M/year targeting 10M shipments/year
Drove adoption of testing using React Native Testing Library, bringing untested app to 87% code coverage
Identified a vulnerability in our authentication system, constructed a mathematical model to analyze the risk of compromise, and proposed mitigation solutions
Championed responsive, user-friendly UX and crafted new UI approach that delighted the client
Advocated for domain-driven design and proposed solutions to modeling challenges
Created pipeline to ensure code quality and automate deployment, shaving 10min of effort off each deploy
May 2019 - April 2021
Software Development Intern
Worldpay from FIS
Technologies: Java | Spring Boot | Angular | Ionic | SQL Server | DB2 | Maven | Git
Led development of the framework for modernizing an analytics site used by Fortune 500 companies, reducing server startup time by ~90% and increasing development rate by ~100%
Mentored teammates on the implementation of a service-oriented architecture
Discovered and resolved a privilege escalation vulnerability, averting the potential loss of ~$5.5M
Initiated the development of a library to integrate legacy code with a Redis session store, enabling coexistence during migration
Championed DRY and created a library to isolate ~4000 lines of duplicated code between projects
I used Preact, a lightweight clone of React, to develop this chord finder and player. You can select a key center,
then view all of the chords in the diatonic modes centered around the note you selected. A few non-diatonic scales
are included as well. There are also a few options to change the quality of the chords or substitute in other
chords. This was developed with live feedback from members of the music theory community on Reddit.
I made this to format the results of an A/B test that I ran at Khan Academy. It uses an HTML canvas to render the preview, which also allows for a PNG download, and svgcanvas backs the SVG download feature. My priority was to generate graphs that are comprehensible at a second of glancing at them, but that provide deeper insights if you take time to look closely at them. It is less user-friendly than my other tools because it was designed to be used primarily by devs, but I hope to give the UI a facelift in the future!
I worked with a group of three other students to produce an accurate simulation of air resistance and lift
forces and deploy it online. We created a golf video game with accurate physics that implements Euler's
method to simulate the flight, bouncing, and rolling of a golf ball on flat turf.
Usage: The left view is a projection of the game from the side, and the right side is a top-down view. You
can choose your club with the dropdown menu, and you can turn left and right using the arrow keys or the
buttons. Tap or click once to set the vertical angle, then again to set the power.
I created this project as a way to learn the fundamentals of neural networks and genetic algorithms while
incorporating another one of my passions—retro video games. I researched the memory layout of Super Mario
Kart and wrote a Lua script to extract the relevant data. Then I wrote a neural network in Python to receive
data from the Lua script, determine what buttons to press, and send that data back to the emulator. The
Python script also handled the scoring and generations of networks.
My first full-stack app! Written in PHP using jQuery and AJAX, this
project is a relic of days past, both for me personally and in terms
of the technology. I challenged myself to write a web application that
people could really use, and I'd say I blew it out of the park for my first try.
I love looking back at this little relic of my software development history.