To obtain a contract or position as a senior software engineer or architect on interesting projects, working with smart people.
I have a B.S. in Computer Science and twenty years experience.
My core skill is software design and development intersected with project management, QA, technology integration, security, mentoring and more.
I am not strictly one type of developer.
I have designed, implemented and maintained web applications, gui applications, e-commerce systems, automated test suites, compilers, developer tools, discrete event simulations, financial models, commercial apps, in-house apps, etc.
I also perform consulting, system administration and database administration.
| Technical Skills Quick Reference |
HTML, CSS, Apache, IIS, [Fast]CGI
.NET WPF & WinForms, wxPython, AppKit/Cocoa, InnoSetup
MS SQL Server, MySQL, PostgreSQL, MiddleKit, Sybase
Source Code Control
Subversion, Mercurial, Git, AccuRev, Perforce, SourceOffsite/SourceSafe
Microsoft Windows, MacOS X, Linux (BSD, Solaris, etc.)
Microsoft Office (Word, Excel, PowerPoint), others
lex, yacc, flex, bison, pccts, antlr, AST nodes, CIL, JVM
bash, csh, awk, grep, sed, perl, python, make, ssh, service, yum, ...
QA, automated tests
I'm the creator of the Cobra programming language which is open source and has an active community.
Cobra combines the best features from many languages including Python, Objective-C, Eiffel and C#.
My presentation at the Lang.NET Symposium 2008 was recorded.
This is my second major compiler in additional to several prototype interpreters.
I'm the original creator of Webware for Python, an open source suite of web frameworks.
I successfully passed the project to another developer before starting my next project (Cobra).
I have designed and written two object-relational mappers (ORM).
One is an open source ORM for Python called MiddleKit.
The other is a .NET one, private to a client, originally created before NHibernate and others were available and/or mature.
B.S., Computer Science
Blacksburg, VA 24061
Adaptive AI, Widerkehr, Kaiser Aluminum, ...
April 2007 - present
Consultant/contractor for application and A.I. projects.
Consult on project requirements, project plan and system design.
Implement applications, web services, algorithms, parsers, business rules, UI, etc. working with object-oriented languages and SQL databases.
Release software to test and production environments. Support users and developers.
Senior Software Engineer
November 2005 - April 2007
Responsible for application design and development, production database upgrades and test automation. Coordinated enhancements and fixes to both code and data with business users. Implemented an advanced object-relational mapper used in multiple projects. Mentored junior developers on the team.
HFD, Kaiser Aluminum, NextFinance, StockAlerts.com, ...
April 2000 - November 2005
Consultant/contractor for application development projects. Consult on project requirements, project plan and system design. Implement web sites including dynamic web content (Python), object-oriented development, SQL databases and Unix/Linux admin. Automate application testing. Python GUI work.
September 1999 - March 2000
Project Manager of market data applications. Responsible for leading a team of database and application developers to assemble, validate and vend market data to both application developers and business users. Backends were Sybase databases accompanied by Perl, C++ and Java. Frontends were either CGI web pages, WebObjects/Java web pages or Visual Basic front ends.
Senior Software Engineer
AppNet, Inc. Century Computing Division
December 1998 - September 1999
On-site software engineering consultant/contractor at Fannie Mae in Washington, D.C. Responsible for design and implementation of financial modeling and reporting software including reusable frameworks for business process simulation and accounting. Development tools included OPENSTEP Developer (now MacOS X Cocoa) and Perl on Mach/SPARC and Solaris/SPARC.
April 1989 - December 1999
I have additional experience
in a variety of positions including software development, lab support and computer sales going back to 1989.
- "Cobra Programming Language" at Lang.NET Symposium in Jan 2008
- "Cobra Programming Language" at SoCal Piggies in Feb 2008
- "Longevity" at Mindshare LA in Jul 2008
- "Cobra Programming Language" at SoCal CodeCamp Fullerton in Jan 2009
- I have written numerous internal technical documents for my employers.
- I have written numerous wiki pages and support emails for my open source projects.
- "Using Mix-ins with Python", Linux Journal, 2001.
- Anders I. Bertelrud, Charles Esterbrook, and Osman Balci (1995), "Visual Simulation Environment Tutorial and Reference Manual," Department of Computer Science, Virginia Tech, Blacksburg, VA, September, 118 pages. (I authored the Visual Simulation Language (VSL) Reference Guide.)
- Charles Esterbrook (1995), "KBESD: Knowledge-based Evaluation of System Design," Department of Computer Science, Virginia Tech, Blacksburg, VA, December 11, 46 pages.