Director of Development |
AllFlat |
construction |
2019-2021 |
Build the controller, Bluetooth uplink, Android tablet user interface, and statistics
engine for a robot that measures warehouse floor flatness, for forklift safety.
Senior Software Engineer |
Tigase |
online chat |
2017-2018 |
Maintain a Redmine project management database in Ruby on Rails, using MySQL and jQuery, administrating an advanced Jabber XMPP.
Python Software Engineer |
BoardFormula |
surf board physics |
2011-2015 |
Build and maintain a Django & jQuery registry of surfboards, categorized by their designs.
Write an Android applet that uploads data through
Bluetooth, to a Django website, and stores it on our server
in PostgreSQL on AWS.
Rails Software Engineer |
Digitaria |
video gallery |
2013-2014 |
Recover and extend a Ruby on Rails website maintaining
a gallery of videos, in various formats, uploaded to Amazon S3. Apply Test-Driven Development to preserve flexibility & resist bugs against frequent
design changes. Add HTML5 features to user interface via
jQuery; deployed on AWS.
Consulting |
Websites, testing |
& blogging |
1996-present |
► Ruby on Rails webmaster; a complete
technician dispatch system with e-mail notifications & document
uploads, for Team Uptime.
► Architect, from scratch, Python UWSGI servers
to manage CMS content, for iPad e-learning, and report on
examination questions, for 4th
Down Software, with XML + MongoDB. ► Blogger for O'Reilly.
Introduce pure TDD, to write e-commerce connections to
multiple payment gateways, shipping services, and QuickBooks.
Maintain a CruiseControl.rb server to test all projects. Front end in
jQuery, middleware in Django REST Framework,
and back-end in PostgreSQL.
Rails
Software Engineer |
Integralnet |
e-commerce |
2007-2009 |
Trained a crew of 6 junior engineers to use Ruby
on Rails, Ajax, & MySQL for
e-commerce & in-house business views, using MacOSX.
My innovative contributions to the TDD environment, assert{
2.0 } ,
assert_xhtml , &
assert_rjs_ , are now released & used as Free Software.
C++
Test Engineer |
Akonix |
IM |
2005-2006 |
Retrofit cross-platform unit tests for C++
servers that parse and filter various instant
messaging protocols over TCP/IP.
C++
Test Engineer |
High Moon
Studios |
video games |
2004-2005 |
Integration
test server for DarkWatch, using Ruby, Lua,
Perl, & C++ to soak test Maya, Renderware,
Havok, Xbox, & PS2.
C++
Software Engineer |
SYSTRAN
Software |
translation |
2002-2004 |
TDD & build scripts for advanced localization for desktop and
online machine translation tools, using C++,
Perl, VBA, & WTL. Invented the Logitech Internet
Explorer translation toolbar.
Computer
Scientist |
Omnigon |
AI |
2000-2002 |
Pattern recognition, data mining, graph theory, bioinformatics,
& complexity theory, using Linux &
Python.
VB
Software Engineer |
EnvSoft |
GIS |
1998-1999 |
Data visualization, maps, and contour plots for a database
of environmental quality samples taken at a customer's site. OO
designs in Visual Basic, custom ActiveX controls with MFC &
OLE, and SQL Server.
C++
Software Engineer |
Jon Goldman
Assoc. |
semiconductor |
1989-1997 |
Process management systems for the semiconductor industry,
to provide Statistical Process Control. Complete project
lifecycles with OO designs in C and VC++ with STL, ActiveX, ATL,
ADO, & SQL Server on MS Windows.
Publications:
Merb
Mind Maps |
Uses TDD & GraphViz to draw a graph
linking the most relevant posts in a blog. Demonstrates
Prim's Algorithm for Minimum Spanning Tree
|
assert{
2.0 } |
An assertion that reflects everything when it
fails, using Ruby's Ripper |
CCrb
Progress Charts |
Augments CruiseControl.rb with charts
of your metrics over time
|
assert_latest |
Detects all sets of new records created by ActiveRecord |
Beast
acts_as_sphinx |
Demonstrates advanced Rails TDD to add the Sphinx
search engine to a blog
|
|
|
Education:
Temple
University |
Performance art, painting, design, & computer
graphics. |
|