Philip Craig Plumlee

Objective

Senior Software Engineer

Philip_Plumlee AT hotmail DOT com

Carlsbad, CA 92009
760 814 5658

Skills I support high quality and responsive process. I keep you in the driver's seat, and give you a system that you can steer accurately towards business goals. I have worked in many industries and solved every kind of technical problem imaginable, from inventing languages to debugging embedded hardware, using adaptive planning and sustainable, disciplined techniques that hold value and enable teamwork.

Communication

Mentoring, artificial intelligence, scientific visualization, user-interface design, public speaking, complexity theory, technical writing, maintenance, process diagnosis & treatment, and high-end games.

Programming
( click any item:)

Model
ActiveX 3
C 5
C++ 15
MongoDB 1
OO 20
Python 8
SQL 8
View
Ajax 4
Django 3
jQuery 4
HTML 10
JavaScript 8
Localization 2
MS Windows 20
OpenGL 1
Qt 2
Controller N years
Linux 15
GNU 15
Lua 1
Ruby on Rails 6
Test-Driven Development 13
WTL 1
XML 6

Mission

OO design, advanced user interfaces, art, science, and "Agile" development.

Experience

Ruby on Rails Engineer

2017-2018

Tigase

Maintain a Redmine project management database in Ruby on Rails 4.2, using MySQL and jQuery, administrating an advanced Jabber XMPP network, with REST and OAuth2 links to Intuit Quickbooks, Zoho CRM, and Stripe payment gateway.

Python Engineer

2011-2015

Boardformula

Build and maintain a Django & jQuery registry of surfboards, categorized by their designs.

Use pure TDD to write an Android applet that uploads data through Bluetooth, to a Django website, and stores it on our server. The applet stores user login information in system preferences, and tracks the downloads and uploads with progress bars.

Rails Engineer

2013-2014

Digitaria

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.

Senior Software Engineer

2012-2013

Creative Electron

Python(x,y), Qt4, C++, and Arduino firmware, on MS Windows. CEI builds automated optical inspection and X-ray inspection tools for the PCB industry. Introduced advanced Test-Driven Development, including tests on elaborate user interfaces, and on complex math.

Consultant

2010-2013

  • Ruby on Rails webmaster; a complete technician dispatch system with e-mail notifications & document uploads, for Team Uptime.
  • Django with JavaScript Closure, on a website to coordinate and schedule infrastructure development projects for a global internet content & backbone provider, for eTouch.
  • 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. All these projects use Linux
  • Blogger for O'Reilly.

Senior Software Engineer

2009-2010

Cuker Interactive (Pronounced "sooker.")

Django e-commerce (payment gateways, shipping quotes, fulfillment, & QuickBooks) using pure Test-Driven Development.

Introduced CruiseControl.rb, to run all unit tests on all projects, each time their source upgrades, via GitHub.

Senior Software Engineer

2009

Climber.com

Advanced Ruby on Rails back-end operations, to interpret Google Analytics results that rank each user's resume in our system, and to email registered recruiters batches of resumes that match their search criteria.

Senior Software Engineer

2006-2009

Integralnet

Advanced Ruby on Rails, targeting multiple server clusters, using Ajax, raw JavaScript, advanced CSS, and MySQL, for e-commerce, including merchant accounts, security, authentication, and scrubbing data. Pure XP with pair programming, TDD, continuous integration, and CruiseControl.

These sites incubated my assert{ 2.0 } project, a competitor to RSpec that turns any statement into a detailed assertion; assert_xhtml, which tests HTML by example, and assert_rjs_, an upgrade to assert_rjs, providing more accurate results.

Senior Software Engineer

2005-2006

Akonix

Retrofit cross-platform tests for a C++ server that parses and filters various Instant Messaging protocols. Researched and architected the kernel of a new platform, using CORBA (ACE/TAO/CIAO libraries) on Linux.

Contractor

2005

Interactive Nova

For Anonymizer, I used TDD to build a HTML web page hosting a CAB file providing an OCX control and a helper ATL DLL file.

Software Engineer

2004-2005

High Moon Studios (formerly Sammy Studios)

Building an integration test server for DarkWatch, using MiniRubyWiki to host acceptance test scripts written in Lua, applying the "Broadband Feedback" principle. Used Test-Driven Development to write test scripts in Ruby and Perl, via GNU, CygWin, and XML, to generate HTML reports. Tested Maya, Renderware, Havok, Xbox, PS2, etc.

Agile Coach

2004

Spun Laboratories, Inc

TDD, OO, HTML, refactoring, tracking, and acceptance tests. HTML CSS, Servlets, and the persistence layer of a turnkey order-entry appliance, using Java, Linux, MySQL, Apache & Tomcat, targeting small businesses.

Senior Quality Control

2002-2004

SYSTRAN Software

Introduced software product lines, daily builds, and automated tests to stabilize and localize their desktop product line, written via TDD in VB and WTL, linked by ActiveX to custom MS Office and Internet Explorer toolbars. Lead the Logitech Toolbar effort. Custom HTTP "web services" transport layers. Advanced XML and XSLT, and advanced internationalization techniques, and build scripts in Perl working on both Linux and MS Windows. Automatically configurable, multi-lingual MSI installers.

Free Software

2002-2003

MiniRubyWiki

A Wiki tuned for personal & project use, with many advanced features - embedded GraphViz, user-defined markup tags, etc. - and providing the most correct Wiki interface features possible under pure XHTML. Works on both Linux and MS Windows. Written via pure TDD, tested with Watir, and now in use at many private sites, including PDAs.

Computer Scientist

2000-2002

Omnigon International Partners

Helped develop hDx, a topology-based pattern-recognition system aimed at reducing combinatorially explosive problems to low computational complexity. Worked on fragment-assembly application comparable to Phred/Phrap to demonstrate the system’s applicability to bioinformatics. Data visualization and kernel processes, using Agile Development, TDD, Linux, Python, PostgreSQL, GraphViz, Qt, and Tk.

Free Software

2001

Flea

Fractal generator. Users write turtle graphics using a miniature language. Ruby code interprets the turtle commands and outputs a stream of 3d object primitives. Pluggable back-ends convert these primitives into commands to a rendering tool, such as GTK+, OpenGL, POVray, VRML, etc. Project used pure Test Driven Development, with acceptance test outputs in HTML. Works on both Linux and MS Windows

Software Consultant

1999-2000

Spherion - Irvine, CA

Consultant to Odetics (now DTGTV); video tape library robotics using Win32, ActiveX, TDD in VC++ with MFC on MS Windows.

Consultant to Firstsource.com for B2B HTML e-commerce using TDD, ASP, Win32 SDK, VC++, MFC, VB and SQL Server, on MS Windows.

Senior Software Engineer

1998-1999

Environmental Software - Huntington Beach, CA

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 with MFC & OLE, and SQL Server.

Webmaster

1998

Politizen.com - Culver City, CA

Authored & deployed a Web site containing an e-mail portal, ZIP-code database, discussion forums, and a Wiki, written in ASP with an SQL Server back-end.

Chief Software Architect

1989-1998

Jon Goldman Associates - Anaheim, CA

Process management systems for the semiconductor industry. Read data from various industry tools; graph it, and analyze it for trends, to provide Statistical Process Control.

Complete project lifecycles with OO designs in C and VC++ with STL, custom COM (ActiveX) controls using MFC and ATL, GUIs in Visual Basic, TCP/IP transport layers, data layers in ADO & ODBC, and complete SQL Server databases on MS Windows.

All my generic libraries are still in use and being extended.

Software Engineer

1988-1989

Digisoft - Anaheim, CA

Inventory data entry system, in BASIC with an ISAM, on XENIX.

Education

1982-1986

Tyler School of Art

Performance art, painting, design, & computer graphics.