% vim:foldmethod=marker commentstring=%%%s % license {{{ % This work is licensed under the Creative Commons % Attribution-NonCommercial-ShareAlike License. To view a copy of this license, % visit http://creativecommons.org/licenses/by-nc-sa/1.0/ or send a letter to % Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. % This file is adapted from Todd Courtesan's resume, at % http://www.courtesan.com/todd/resume.html % }}} % preamble {{{ \documentclass[letterpaper]{article} \usepackage{jesse_resume} \hypersetup{hidelinks} \setlength{\oddsidemargin}{-0.75in} \setlength{\evensidemargin}{-0.75in} \setlength{\textwidth}{8in} \setlength{\topmargin}{-0.75in} \setlength{\textheight}{10.5in} % }}} \begin{document} % Header {{{ \resheader{Jesse Luehrs} {http://tozt.net/} {doy@tozt.net\hspace{0.5in}} {(618) 616-6287} {70 America St. \#1R} {Providence, RI 02903} % }}} % Education {{{ \resheading{Education} \begin{itemize} % Hacker School {{{ \item \ressubheading{Hacker School}{New York, NY} {Student}{September 2014--November 2014} % }}} % UIUC {{{ \item \ressubheading{University of Illinois at Urbana-Champaign, College of Engineering}{Urbana, IL} {Bachelor of Science in Computer Science with Minor in Mathematics}{August 2004--May 2008} \begin{minipage}[t]{\textwidth/2-0.2in} \begin{itemize} \resitem{Overall GPA: 3.61, Technical GPA: 3.81}\vspace{-7pt} \resitem{James Scholar in Engineering (2004--2005)}\vspace{4pt} \end{itemize} \end{minipage} \begin{minipage}[t]{\textwidth/2-0.2in} \begin{itemize} \resitem{Dean's List (Fall 2004--Fall 2006)}\vspace{-7pt} \resitem{Graduated with Honors}\vspace{4pt} \end{itemize} \end{minipage} % }}} \end{itemize} % }}} % Work Experience {{{ \resheading{Work Experience} \begin{itemize} % Infinity Interactive {{{ \item \ressubheading{Infinity Interactive (\url{http://iinteractive.com/})}{Manhasset, NY (telecommuting)} {Senior Programmer}{February 2010--August 2014} \vspace{6pt} \linebreak \small{I was in charge of a large, legacy codebase which handles employee engagement survey registration and reporting, and I have also written and deployed many smaller sites myself, mostly using Perl. Since we relied heavily on open source software, a large portion of my time was also devoted to maintaining various open source projects, as well as developing new open source software that could be useful in the future.}\normalsize % }}} % UIUC Hydrogeology Lab {{{ \item \ressubheading{UIUC Hydrogeology Lab (\url{http://www.gwb.com/})}{Urbana, IL} {Visiting Research Programmer}{February 2006--February 2010} \vspace{6pt} \linebreak \small{I worked on the Geochemists' Workbench, a geochemistry software suite written in C++ and Tcl/Tk. I added support for several new image output formats as well as adding font embedding support to the existing PostScript format. I also helped add parallel processing support to several scientific calculations, using OpenMP. I ported our calculation applications from Windows to Linux, to allow them to be run on large clusters. Finally, I implemented a testing framework for our calculation applications using Perl's Test::More.}\normalsize % }}} \end{itemize} % }}} % Projects {{{ \resheading{Projects} \small{A more complete list of my projects is on my website (\url{https://tozt.net/projects.html}). All of my personal open source work is also available on GitHub (\url{https://github.com/doy}), and my Perl open source work is also available on the CPAN (\url{https://metacpan.org/author/DOY}).}\normalsize\vspace{-3pt} \begin{itemize} % termcast {{{ \item \resshortsubheading{Termcast (\url{https://github.com/doy/python-termcast-server})}{2014--present} \vspace{6pt} \linebreak \small{I wrote a server and client to allow users to stream their terminal sessions over the network for other people to watch.}\normalsize % }}} % libvt100 {{{ % \item \resshortsubheading{libvt100 (\url{https://github.com/doy/libvt100})}{2014--present} \vspace{6pt} \linebreak % I am the author of libvt100, a terminal parsing library written in C % and Lex. I am currently using it in the Termcast server and in Runes, a % terminal emulator. % }}} % Text::Handlebars {{{ % \item \resshortsubheading{Text::Handlebars (\url{https://github.com/doy/text-handlebars})}{2013--present} \vspace{6pt} \linebreak % I am the author of Text::Handlebars, a port of the Handlebars.js % templating language to Perl. It uses a custom parser on top of the % Xslate template engine framework. It supports nearly the entire feature % set of the JavaScript implementation, and we used it at Infinity % Interactive to ease the transition of one of our large web applications % from client side templates to server side templates. % }}} % Reply {{{ % \item \resshortsubheading{Reply (\url{https://github.com/doy/reply})}{2013--present} \vspace{6pt} \linebreak % \small{I wrote Reply, a lightweight and extensible REPL for Perl. It includes % many useful features such as tab completion and history support.}\normalsize % }}} % Dungeon Crawl Stone Soup {{{ \item \resshortsubheading{Dungeon Crawl Stone Soup (\url{http://crawl.develz.org/})}{2009--present} \vspace{6pt} \linebreak \small{I am a member of the development team for Dungeon Crawl Stone Soup, a roguelike game written in C++ and Lua. I contributed several features to the game and was also the release manager for the 0.6 release.}\normalsize % }}} % Plack {{{ % \item \resshortsubheading{Plack (\url{http://plackperl.org/})}{2012--2013} \vspace{6pt} \linebreak % I am a member of the core development team for PSGI and Plack, the % specification for Perl web server/application interaction (similar to % Python's WSGI and Ruby's Rack). % }}} % Perl {{{ \item \resshortsubheading{Perl (\url{http://www.perl.org/})}{2011--2013} \vspace{6pt} \linebreak \small{I was the release manager for the 5.17.1 development release of Perl, and I have also contributed many bug fixes. I have also been a lead developer on the p5-mop project, a prototype of a new object system for Perl.}\normalsize % }}} % OX {{{ % \item \resshortsubheading{OX (\url{https://github.com/iinteractive/OX})}{2011--present} \vspace{6pt} \linebreak % I am the lead author of OX, a web framework for Perl based on the PSGI % specification, which uses the Bread::Board dependency injection system % to manage application components. We have used it internally at % Infinity Interactive for many client projects. In addition to writing % most of the framework itself, I also wrote a series of advent calendar % posts documenting it, which can be seen at % \url{http://ox.iinteractive.com/advent/}. % }}} % Moose {{{ \item \resshortsubheading{Moose (\url{http://moose.perl.org/})}{2009--2013} \vspace{6pt} \linebreak \small{I am a member of the development team for Moose, which provides advanced object orientation capabilities to Perl. I was also the release manager from 2011--2012.}\normalsize % }}} % TAEB {{{ \item \resshortsubheading{TAEB (\url{http://taeb.github.io/})}{2008--2011} \vspace{6pt} \linebreak \small{I was one of the lead framework developers for TAEB, a Perl framework for programmatic interaction with NetHack. I was also the primary developer for the leading AI written for TAEB.}\normalsize % }}} % Volition {{{ % \item \resshortsubheading{System for Defining, Documenting and Recording Game Events (\url{http://volition-inc.com/})}{2007--2008} \vspace{6pt} \linebreak % This is a library written in C which can be added to games in order to % track arbitrary events and report them to a remote server, for use in % gameplay testing. This project was completed for Volition as my senior % project, and was used as part of their testing process for Saints Row % 2. % }}} \end{itemize} % }}} % Talks {{{ \resheading{Talks} \small{Slides and videos (where available) for these talks can be found at \url{http://tozt.net/talks.html}.}\normalsize\vspace{-3pt} \begin{itemize} \item \resshortsubheading{Introduction to Rust (50 min)}{YAPC::NA 2014} \vspace{6pt}\linebreak \small{This talk describes the Rust programming language, touching on its major features and design philosophies that make it interesting.}\normalsize \item \resshortsubheading{Dependency Injection with Bread::Board (50 min)}{YAPC::NA 2012, YAPC::EU 2012} \vspace{6pt}\linebreak \small{This talk provides an overview of dependency injection, and gives concrete examples of it using the Bread::Board module for Perl.}\normalsize \item \resshortsubheading{OX - the hardest working two letters in Perl (50 min)}{YAPC::NA 2011} \vspace{6pt}\linebreak \small{This talk describes the OX web framework for Perl, including a conceptual overview and usage examples.}\normalsize \item \resshortsubheading{Extending Moose (50 min)}{YAPC::NA 2010} \vspace{6pt}\linebreak \small{This talk goes into detail describing Moose's meta object protocol, including what it is, how it works, and how you can extend it.}\normalsize \end{itemize} % }}} % Skills {{{ \resheading{Skills} \begin{description} \item[Languages:] \small{I am fluent in C, C++, Perl, Lua, and shell, and I am also proficient in Python, JavaScript, HTML/CSS, Scala, Rust, and LaTeX.}\normalsize\vspace{-6pt} \item[Tools:] \small{Make, vim, git, Firefox}\normalsize \end{description} % }}} \end{document}