Gary Fredericks

Table of Contents

Gary Fredericks



I'm a software engineer interested in working on problems that require or benefit from technical innovation.

I have been working on business software since 2009, primarily backend systems using Clojure. I have also made significant contributions to the open source Clojure ecosystem.

I have a strong interest in theoretical computer science, and have spent a lot of my free time building visualizations of concepts from computer science and mathematics.

I am an autodidact and I enjoy sharing the things I've learned with others, whether through personal conversations or by giving talks.


Open Source

I have been active in the Clojure open source community, both as a programmer and as a speaker. I am a maintainer of the test.check property-based testing framework, and I spoke at Clojure/West about immutable random number generators and the related features I was adding to test.check. I ran a workshop at Clojure Conj 2015 introducing test.check and property-based testing, and I've also spoken at various other conferences and local meetups.

I have made minor contributions to Clojure and ClojureScript (the languages), core.logic (the relational programming library), and Leiningen (the build tool). I've also authored a few relatively unpopular libraries.


Since 2016 I have been working at DRW Trading on back-office systems primarily using Clojure.

Before that I spent four years at Groupon, first building back-office tools for automating different parts of the sales process, and later building a transactional ledger for tracking financial data. I was also closely involved in the use of Clojure within the company: running meetings, helping beginners learn the language, building internal libraries, debugging, and generally helping in any way I could.

Prior to 2012 I worked on web development in various capacities for the South Carolina state government and the Medical University of South Carolina, mostly with Ruby, Clojure, JavaScript, and Java.

See Appendix B for more details.

Since 2009 I've been maintaining a website and blog where I post various things I've built for interactively and visually exploring concepts from math and computer science. My favorites are:

Appendix A: Education

Master of Science in Computer Science from the University of South Carolina, May 2013

Bachelor of Science in Computer Science from the University of South Carolina, May 2010

  • Magna Cum Laude
  • Phi Beta Kappa National Honor Society

Appendix B: Work History

DRW Trading (June 2016 → Present)

  • Worked on
    • Back office trade-processing systems
  • Using
    • Clojure, Ruby

Groupon (May 2012 → June 2016)

  • Worked on
    • Building tools for automated data analysis that directs the sales staff
    • Building a transactional ledger for tracking financial data
    • Advocating for and facilitating the use of Clojure internally on multiple teams
  • Using
    • Clojure, Ruby
    • CouchDB, Postgres

Medical University of South Carolina (Feb 2011 → Apr 2012)

  • As a contractor via Palmetto Computer Labs
  • Worked on
    • A web app (and support infrastructure) for managing service request between clinical trials researchers and medical service providers
    • A tablet-based web app for obtaining formal consent from patients
  • Using
    • Ruby, CoffeeScript, Clojure
    • CouchDB

South Carolina State Government (Apr 2009 → Feb 2011)

  • Specifically the Employee Insurance Program, South Carolina Budget and Control Board
  • As a contractor prior to Jan 2010 and a full-time employee thereafter
  • Worked on
    • Maintenance of a pair of Java-based web applications used to manage benefits for state employees
    • Development of a handful of supporting web apps
    • Investigating a security breach by analyzing logs and Rails code to determine the amount of information exposed
  • Using
    • Java, Ruby, Clojure, JavaScript, Erlang
    • Rails

802.11 MAC Protocol Simulation Research (Oct 2008 → Jan 2010)

  • Sole developer on a government-sponsored research project
  • Worked on
    • Investigating the feasibility of simulating the 802.11 MAC protocol using an enterprise tool that compiles executable-UML into C++
  • Using
    • IBM Rhapsody
    • C++

Created: 2016-12-06 Tue 18:48

Emacs 25.1.1 (Org mode 8.2.10)