I love programming. I mostly do web development and have released numerous open source modules to make developing web apps easier.
I started programming QBasic for fun in middle school, and quickly got into using unix and Perl. When I was in 10th grade I wrote a system for a Pawn Shop to keep track of redemption rates and more using Perl and MySQL.
In college I started using Ruby for personal projects and that is where I got a better understanding of Functional Programming and OO to an extent. About halfway through college I started working with another student on TOME, which is a system to help students share books. It was in that context that I learned to do more complex Perl programming as well as lots of Javascript, HTML, CSS, and complex database interactions.
At Micro Technology Services Incorporated I've gotten involved in using more complex Perl frameworks, like the Catalyst web framework and the DBIx::Class ORM. Both of those I've used extensively to the point where I have contributed code to both. I convinced MicroTech to start using version control with subversion and helped the switch to git when it was sufficiently mature for professional usage.
Since my initial hire as a web developer I have moved to an architectural role, taking the lead on designing a Duress/Mass Notification system used by most VA Hospitals and many schools across the country. I am actively working towards the design of a masterless distributed server for performance and reliability.
Starting in 2009 I began releasing open source modules on CPAN. I couldn't list all of my contributions or modules here, but the most important are probably my database deployment tool (generic enough to have a popular tool written on top of it), and my set of ORM extensions. Since early 2012 I have released at least one module a week on CPAN.
In addition to producing useful modules for the community, I have performed at least 60 git conversions, done nearly 6 talks at conferences (here are a few).
Micro Technology Services Incorporated
Software Engineer/Architect
Aug 2008 - Current
Perl Apache mod_perl SQLServer DBIx::Class Catalyst CGI::Application ExtJS
- Took lead role of significant project and implemented a minimalist agile workflow leveraging DVCS, an issue tracker, and a QA cycle leading to much more robust software.
- Helped to create turnkey installer/updater for software product to reduce engineer time required to deploy software to hundreds of customers servers.
- Initiated and helped switch to DBIx::Class to promote code reuse and reduce dependence on SQL Server.
- Initiated and helped switch to Catalyst from CGI::Application to increase overall organization of projects in new projects.
- Initiated and helped switch to CGI::Application from cgi scripts to encourage modularity and reuse in older projects.
- Initiated and switched from IIS to Apache because of serious perl interop issues.
Loma de Luz
Programmer
May 2007 - Aug 2007
C#
- Initiated and designed a system to track inventory and inventory history.
- Performed basic IT support
Sterling Commerce
Programmer
May 2006 - Aug 2006
Java C# Connect:Direct
- Changed Java client to store configuration as XML instead of serialized Java class.
- Created .NET configuration GUI.
LeTourneau University
B.S. Computer Science and Math
2004 - 2008
- Student Senator, and later President Pro Tempore
- President of TEA (TEA Enthusiasts Association)
- President of Math Club (We won first place in TX competition)
- Worked on and later headed up the TOME project.
favorites Perl Catalyst DBIx::Class Moose JavaScript
likes ExtJS Ruby
dislikes Java C# C C++
CPAN modules: well tested, well documented, released code
github code: experimental code that may never actually get released, but still may be worth looking at
blog: writings, almost exclusively technical.