Terrence Monroe Brannon

506 Bridgeford Dr, Westerville, OH 43081

metaperl+jobs@gmail.com – http://www.metaperl.com


Interested in blue sky modern coding or refactoring legacy code using these coding ethics:


Perl, SQL (Postgresql, MS-SQL, MySQL, and Oracle), HTML, XML, Unix, Linux, OS X. Working knowledge of Ab Initio, Python, Java, Scheme, and J/APL.




Data Analyst JP Morgan Chase, Columbus, OH May 2007 – present

Tools used: Perl, Ab Initio, MS SQL Server

Skills used: ETL, object-oriented programming, parsing, text recognition

Data Analyst UtekCorp.com, Tampa, FL June 2006 – April 2007

Tools used: Python (pycurl, pyparsing, ftputil), Perl, Apache, CGI, MySQL, MS SQL Server

Skills used: ETL, object-oriented programming, web programming

Performed in a data processing role spanning several UTEKcorp.com web properties:

Perl Developer VendareMedia.com, El Segundo, CA October 2005 – January 2006

Tools used: Perl (HTML::Mason, HTML::Tree, Log::Log4Perl), CVS.

Skills used: web programming, object-oriented-programming.

Dynamically delivered HTML and XML results of searching to parked domain names. Was solely responsible for upgrading the framework from generating HTML via HTML::Mason to generating HTML via HTML::Seamstress. Also solely responsible for generating XML search results.

Perl Developer Valueclick.com, Westlake Village, CA October 2004 – October 2005

Tools used: Perl (HTML::Mason, CGI/mod_perl, Class::DBI, MySQL), Perforce.

Skills used: web programming, resumable Perl scripting, object-oriented programming

Perl Data Analyst DirectSynergy.com, Westwood, CA January 2003 – June 2003

Tools used: Perl (DBI, Spreadsheet::ParseExcel, Spreadsheet::WriteExcel), MySQL, Sybase

Skills used: ETL, Excel processing, Database Processing, Data Munging

This company was in the business of attracting, warehousing, and selling business leads for various target markets. My job was to use or design Perl-based technology on databases, data files, and Excel files related to their business process:

Perl Consultant Accenture/City Gov't of New York September 2002 – December 2002

Tools used: Perl (XML::TreeBuilder, Spreadsheet::ParseExcel, Spreadsheet::WriteExcel),

Skills used: XML processing, ETL, Text parsing

Worked on the City of New York's 311 Call Center Application. My job was to populate and integrity-check the content repository. To do so, entailed writing several dependency-aware Perl programs to convert Excel spreadsheets to XML.

Senior Perl Developer Oracle, Redwood Shores, CA January 2001 – October 2001

Tools used: Perl (DBI, Net::FTPServer, LWP), Oracle, PL/SQL, HTML

Skills used: web programming, SQL, object-oriented programming

Worked in the Applications Integration group. This group is responsible for releasing software patches and complete distributions via a database-driven mod_perl web site.

Perl Consultant May 1998 – January 2001 New York and Los Angeles

Tools used: Perl (Net::FTP, Config::INIFiles, DBIx::Recordset, Cache::Cache, CGI/mod_perl)

Skills used: Object-oriented programming, Database driven application, ETL


Developed INETCROSSFTP, an FTP system with the following phases: drag and drop GUI interface, file conversion, FTP file upload/download/monitoring, and PGP-based file encryption. The program used a 3-level hierarchy of object-oriented iterable behaviors. In retrospect, one level of protoyped-based objects would have been equally powerful. The base class was HostCycle. All subclasses cycled across FTP servers performing their until() method until it returned true at which time they executed their then() method. Identification of common Net::FTP usages led to my development of Net::FTP::Common for CPAN.


mcy.com: Developed scripts and modules to parse and generate fixed-width text files for various EDI (electronic data interchange) feeds. Extended Text::FixedLength with Text::FixedLength::Extra by creating a simpler API and adding support for leading zero and floating point formatting.

angryman.com: Developed a persistent distributed framework in which Vote objects were committed to a File::Cache and then resurrected and committed to database via slave objects. Used Date::Manip to develop Date::Horoscope, a module that determines Zodiac sign based on birth date (These days Date::Range might be more appropriate). Also used Date::Manip to determine a persons age bracket based on birthdate.

end70.com: Used Date::Manip to realistically populate a MySQL customer database with lease initiation and shipment dates. (lease-processing/random-init.pl). Developed a CGI interface for SQL temporal queries of a database. Wrote DBI scripts to randomly allocate client leads to salesmen based on various time criteria

hosting.com: Developed a set of Perl, CGI, and Javascript scripts as well as a MySQL database to collate and analyze flat file user execution logs from 300 web servers. The phases of the project were: