summaryrefslogtreecommitdiffstats
path: root/resume.txt
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-02-04 00:58:56 -0500
committerJesse Luehrs <doy@tozt.net>2014-03-19 20:32:09 -0400
commit8c5f647372218f5bd7fa7718273be213033b6bdd (patch)
treec91e6cdc10ad28a37077a36f844a2aad67672f38 /resume.txt
parent9969dc802062f5434be6b09e335bbef4cba369fc (diff)
downloadresume-8c5f647372218f5bd7fa7718273be213033b6bdd.tar.gz
resume-8c5f647372218f5bd7fa7718273be213033b6bdd.zip
update resume
Diffstat (limited to 'resume.txt')
-rw-r--r--resume.txt211
1 files changed, 131 insertions, 80 deletions
diff --git a/resume.txt b/resume.txt
index 4c492eb..339618b 100644
--- a/resume.txt
+++ b/resume.txt
@@ -1,7 +1,7 @@
-Jesse P Luehrs
-==============
-Address: 702 W. Green St., Apt #2
- Urbana, IL 61801
+Jesse Luehrs
+============
+Address: 70 America St. #1R
+ Providence, RI 02903
Phone: (618) 616-6287
Email: doy@tozt.net
Website: http://tozt.net/
@@ -11,8 +11,8 @@ Education
=========
University of Illinois at Urbana-Champaign, College of Engineering
Urbana, IL
-Bachelor of Science in Computer Science
-Aug. 2004 - May 2008
+Bachelor of Science in Computer Science with Minor in Mathematics
+August 2004 - May 2008
- Overall GPA: 3.61, Technical GPA: 3.81
- James Scholar in Engineering (2004 - 2005)
- Dean's List (Fall 2004 - Fall 2006)
@@ -21,90 +21,141 @@ Aug. 2004 - May 2008
===============
Work Experience
===============
-UIUC Hydrogeology Lab
+Infinity Interactive (http://iinteractive.com/)
+Manhasset, NY (telecommuting)
+Senior Programmer
+February 2010 - present
+ I am 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
+ rely heavily on open source software, a large portion of my time is
+ also devoted to maintaining various open source projects, as well as
+ developing new open source software that could be useful in the
+ future. For instance, I contributed to Moose, Plack, and Perl through
+ work, and developed OX, Text::Handlebars, and p5-mop for use in work.
+ These projects are described more fully below.
+
+UIUC Hydrogeology Lab (http://www.gwb.com/)
Urbana, IL
Visiting Research Programmer
-February 2006 - present
-- Worked on the Geochemists' Workbench, a geochemistry software suite
- written in C++ and Tcl/Tk.
-- Added or enhanced support for several different image output formats
- including PDF, SVG, and PostScript, including adding TrueType font
- embedding to PDF and PostScript files.
-- Helped add parallel processing support to several scientific
- calculations, using OpenMP.
-- Designed a new XML-based configuration file format for our
- applications.
-- Ported our calculation applications to Linux, to allow them to be run
- on large clusters.
-- Implemented a testing framework for our calculation applications in
- Perl, using Test::More.
-
-Smile-A-While Amusements
-Traveling, Illinois/Indiana/Missouri
-Concessions manager
-Summer 2004 and 2005
-- Managed several amusement games on the Luehrs' Ideal Rides carnival.
+February 2006 - February 2010
+ 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, including PDF, SVG, and Adobe Illustrator, as well as
+ improving the existing PostScript support by adding the ability to
+ embed TrueType fonts. I also helped add parallel processing support to
+ several scientific calculations, using OpenMP. I designed a new
+ XML-based configuration file format for our applications and ported
+ our calculation applications 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.
========
Projects
========
-Moose (http://moose.perl.org/): 2009 - Present
-- Member of the Moose Cabal, the lead development team for Moose.
-- Wrote several extensions for Moose, including MooseX::NonMoose, which
- allows classes built with Moose to easily interoperate with other
- types of classes, and MooseX::Aliases, which allows Moose attributes
- to be referred to by different names.
-
-Bot::Games (http://github.com/doy/bot-games): 2009 - Present
-- Bot::Games is an IRC bot framework written in Perl, designed for
- multiplayer game moderation.
-- Uses Moose extensively to provide a clean and extensible plugin system
- for adding games.
-
-TAEB (http://taeb.sartak.org/): 2008 - Present
-- TAEB is a Perl framework (using Moose) for programmatic interaction
- with NetHack (http://nethack.org/).
-- Primary developer for the leading AI written for TAEB.
-- Developed several standalone Perl modules in the course of
- development, including Graph::Implicit, which implements several
- useful graph algorithms, and IO::Pty::Easy, which provides a simple
- read/write interface for interacting with pseudo-terminals.
-
-Smithy (http://sourceforge.net/projects/smithy/): 2008
-- Smithy is a cross-platform map editor for the Aleph One engine
- (http://marathon.sourceforge.net/), written in OCaml.
-- Contributed several GUI improvements, including writing custom widgets
- using LablGTK.
-
-System for Defining, Documenting and Recording Game Events
+All of my personal open source work is available on GitHub
+(https://github.com/doy). My Perl open source work is also available on
+the CPAN (https://metacpan.org/author/DOY).
+
+Text::Handlebars (https://github.com/doy/text-handlebars): 2013 - present
+ 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 (https://github.com/doy/reply): 2013 - present
+ I am the author of Reply, a customizable and lightweight REPL for
+ Perl. It provides features like pluggable tab completion, automatic
+ class loading and refreshing, history support, and (through the
+ Carp::Reply module) automatically launching a REPL when an exception
+ is thrown. It can be easily extended through a powerful plugin system.
+
+Plack (http://plackperl.org/): 2012 - present
+ I am a member of the core development team for Plack, the reference
+ implementation of the PSGI specification for Perl web
+ server/application interaction (similar to Python's WSGI and Ruby's
+ Rack). I have contributed to the design of PSGI, as well as
+ implementing my own PSGI-based web framework called OX (below).
+
+p5-mop (https://github.com/stevan/p5-mop-redux): 2011 - present
+ I am one of the lead developers for p5-mop, which is a prototype for a
+ new object system for the Perl core. It provides features such as
+ attribute declarations, method signatures, and roles to bring Perl up
+ to the level of other modern languages, but it also includes a fully
+ featured meta object protocol, for an added level of power and
+ customizability.
+
+Perl (http://www.perl.org/): 2011 - present
+ I was the release manager for the 5.17.1 development release of Perl,
+ and I have also contributed many bug fixes to the Perl core. I am
+ currently working on preparing the p5-mop project (above) for
+ integration into the Perl core.
+
+OX (https://github.com/iinteractive/OX): 2011 - present
+ 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
+ http://ox.iinteractive.com/advent/.
+
+Moose (http://moose.perl.org/): 2009 - present
+ I am a member of the lead development team for Moose, a module which
+ provides advanced object orientation capabilities for Perl. I was also
+ the release manager from 2011--2012. I wrote several extensions for
+ Moose, including MooseX::NonMoose, which allows classes built with
+ Moose to easily interoperate with other types of classes, and
+ MooseX::Aliases, which allows Moose attributes to be referred to by
+ different names.
+
+TAEB (http://taeb.github.io/): 2008 - present
+ I am one of the lead framework developers for TAEB, a Perl framework
+ for programmatic interaction with NetHack. I am also the primary
+ developer for the leading AI written for TAEB. I developed several
+ standalone Perl modules, including Graph::Implicit, which implements
+ several useful graph algorithms, and IO::Pty::Easy, which provides a
+ simple read/write interface for interacting with pseudo terminals.
+
+Dungeon Crawl Stone Soup (http://crawl.develz.org/): 2009 - 2012
+ 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
+ throughout the game, and I was also the release manager for the 0.6
+ release.
+
+System for Defining, Documenting, and Recording Game Events
(http://volition-inc.com/): 2007 - 2008
-- This is a library written in C which can be added to games in order to
+ 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.
+ 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.
+
+=====
+Talks
+=====
+Slides and videos (where available) for these talks can be found at
+http://tozt.net/talks.html.
+
+Dependency Injection with Bread::Board (50 min): YAPC::NA 2012, YAPC::EU 2012
+ This talk provides an overview of dependency injection, and gives
+ concrete examples of it using the Bread::Board and
+ Bread::Board::Declare Perl modules.
+
+OX - the hardest working two letters in Perl (50 min): YAPC::NA 2011
+ This talk describes the OX web framework for Perl (mentioned above in
+ the Projects section), including a conceptual overview and usage
+ examples.
-LuaIRC (http://luaforge.net/projects/luairc/): 2006 - 2008
-- LuaIRC is a fully-featured IRC framework written in Lua.
-- Supports all standard IRC functionality, including CTCP and DCC.
+Extending Moose (50 min): YAPC::NA 2010
+ This talk goes into detail describing Moose's meta object protocol,
+ including what it is, how it works, and how you can extend it.
======
Skills
======
-Languages:
-- Proficient in C, C++, Perl (CPAN id: DOY), Lua, Bash, OCaml
-- Working knowledge of Ruby, Tcl/Tk, JavaScript, LaTeX, HTML/CSS,
- PostScript, sed
-Operating Systems:
-- Linux (Arch, Debian, Gentoo)
-- Windows (2000, XP)
-Tools:
-- Make, Vim, Microsoft Visual Studio, Cygwin, Darcs, Subversion, Git
-
-==========
-Activities
-==========
-Inline Insomniacs:
-- I was the webmaster for the Inline Insomniacs rollerblading club from
- 2005 until 2007.
-Falling Illini:
-- I was a member of the Falling Illini skydiving club from 2007 until
- 2008.
+Languages: I am fluent in C, C++, Perl, Lua, and shell, and I am
+ proficient in JavaScript, HTML/CSS, Scala, Rust, Tcl/Tk, and LaTeX.
+Tools: Make, vim, git, Firefox