(Please note: this page was written in late-2014, and hasn't really been updated since)
Hi! My name is George Burgess, and I'm currently an undergraduate student at Virginia Tech. I'm pursuing a degree in Computer Engineering, with a minor in Computer Science. My interests include generally making things go super fast -- I'm interested in the design and implementation of compilers, runtimes, operating systems, and distributed systems. Additionally, I enjoy learning new programming languages, because they generally provide a unique perspective on how to solve certain problems. At the time of writing, I've studied HotSpot, a popular runtime for Java/Scala/Clojure/..., and I've worked on one of the high-performance components of Microsoft's Roslyn compiler, as well as researched and implemented new alias analysis algorithms on the open-source LLVM platform.
After finishing my degree in May 2015, I'll be working with Google to make Android faster.
If you would like a more thorough description of my prior work (below), feel free to grab a copy of my resume here. If you would like to contact me, you may reach me at
Sparing you a life story, my technological background is primarily in operating systems (largely Linux flavors), compilers, runtimes, parallel systems, and embedded environments. Also, I'm a massive fan of writing tests in tandem with code -- doing so promotes modularity, good design, and takes a massive chunk out of the time a developer spends debugging.
I'm interested in working on distributed systems, programming languages, runtimes, compilers, and/or operating systems (in no particular order). More than anything else, I enjoy making things run fast -- whether this speed is of the code generated (in the case of various compilers) or of the project I'm working on itself, I like being part of the reason that a piece of code is blazing fast.
The programming languages I have the most experience with are C++, Python, Clojure, Go, C#, JavaScript, and Java. I've also spent a fair amount of time in Scala, BASH, Haskell and others, and generally don't have much (if any) trouble picking up new programming languages as needed.
Platforms I've programmed for include Windows (ARM and x86), Mac, Linux (ARM and x86), Android, and Windows Phone. My ideal workflow is centered on a shell, but I've no problems with IDEs if they help me get my job done faster. I'm significantly more comfortable on Linux flavors and Mac OS than I am on Windows for software development.