Curriculum Vitae
Summary
Software Engineer seeking opportunities to pursue the future of computing via cutting edge technology and overlooked research. Particularly interested in utilizing the intersection of Programming Language Theory and Human-Computer Interaction to make the power of computing better for everyone.
Employment
Graduate Researcher, University of Michigan (Future of Programming Lab)
September 2024-Present
- Conducting research on live programming languages, focusing on Hazel and its application in creating malleable software
- Exploring the intersection of Programming Language Theory and Human-Computer Interaction to make computing more accessible
- Contributing to the open-source Hazel project, implementing key features and working on development processes
Senior Software Engineer, DRW Holdings (Reference Data)
April 2020-June 2024
- Performing feature development, maintenance and support for dozens of polyglot services (Java, Ruby, Clojure, Python)
- Leading greenfield development of multiple projects while onboarding team on using functional abstractions in Java
- Work directly with Reference Data analysts on evolving the firm-wide domain model of financial instruments
- Led the first Ruby upgrade of firm’s internal Reference Data system in over 5 years with no major production outages
- Maintained multiple internal libraries for common infrastructural code
- Migrated build process to containers and began transition of services to Kubernetes
Software Engineer, DRW Holdings (Market Data)
May 2017-April 2020
- Performed software archaeology to reverse engineer and document a poorly documented but critical system; this provided the firm with the ability to redeploy the system onto new infrastructure and allowed for feature improvements for the first time in years
- Participated in daily pair programming to upgrade reliability of streaming market data platform as well as onboarding additional exchanges and regularly performing in exchange protocol upgrades
- Built a custom ETL solution to import data from AWS S3 and allow for analyst defined data overrides with a custom UI written in React
- Led project to perform scheduled price capture from a variety of external services
- Performed ground-up rewrite of various services replacing the underlying database technology as well as altering the domain model from first principles
- Represented department in university recruiting initiative
Senior Software Engineer, OneMain Financial
November 2014-March 2017
- Built a microservice architecture operating on the Ruby on Rails platform
- Worked closely with product managers, designers and UI engineers on a consumer oriented
- Developed secure authentication for API to API communication to keep data safe
- Built workflow management service that internal users used daily
Software Engineer, Telnyx
July 2013-November 2014
- First employee who led development team after CTO exit while assuming full stack responsibilities in a startup environment
- Set up automated deployments (Ansible) and notifications saving developers hours per day and decreasing downtime
Education
University of Michigan, Ph.D. Student, Computer Science, 2024-Present
Georgia Institute of Technology, M.S., Computer Science, 2016-2017, GPA 3.8
University of Louisiana at Lafayette, B.S., Computer Science, 2009-2013
University of Louisiana at Lafayette, B.S., Mathematics, 2009-2013
Louisiana School for Math, Sciences and the Arts, High School, 2009
Talks
Projects
GRPC based map reduce framework
Built a C++ map reduce library that utilized GRPC for network communication as well as Protocol Buffers for serialization.
N-body gravitational body simulator
Developed a python program to simulate n celestial bodies gravitational attraction over time. Data was then output to visualization software to view paths.
User load testing simulator
Made a clojure application that would simulate user activities in order to provide high throughput load testing to the backend system. Utilized stochastic state machines to generate actions.
Skills
Languages
Proficient: Python, Java 8+, Ruby, SQL
Intermediate: OCaml/Reason, Clojure, Haskell, JavaScript/TypeScript, C++
Beginner: Prolog, LaTeX
Technologies
Docker, Kubernetes, Ansible
Git, Linux, GraphQL, RabbitMQ, Redis
Communities
palatable/lambda: Contributor working on purely functional patterns in Java.Also an active member of the support chat helping teach functional programming and lambda usage to new users.
Malleable Systems Collective: Catalog Curator for community looking into research/techniques of ways to make computing more malleable and accesible to a wider range of audiences.