Michael L. Davis

Boulder, Colorado
or SF Bay Area, California
or Telecommuting U.S. Citizen

I love writing software, it is my hobby as well as my profession.

I enjoy building things, especially rich interfaces and anything scientific/mathematical. I am now addicted (help!) to Ruby on Rails and JavaScript / NodeJS, but can get my 'fix' with Python or even C. I have a very strong 'Get Things Done' work ethic and have been lucky enough to work for organizations that have the same philosophy. I have done a lot of work previously in ECAD (analog), Telecom (provisioning, visualization), consumer-facing media and ecommerce web apps (full stack), and very recently: serious games.

Equity (off-site) Lifenik, Boulder, CO / Berkeley, California 4/13-present
Lifenik.com (Stealth mode. Responsible for implementation and deployment. Responsible for most of the work on translating research into implementable software. Linode, Ubuntu, Ruby on Rails 4.2, Python, Node.js, Nginx, GitHub, Capistrano, Unicorn (previous version: AWS, AngularJS, Bootstrap, Passenger).

Equity (off-site) Ultimist, Boulder, CO 4/11-4/13
Ultimist.com (Luxury Amazon.com. Responsible for design through implementation). Accomplished several major pivots of this unusually full-featured website in the year it took to go from empty page to launch based on feedback from dozens of domain experts. AWS, Ubuntu, Ruby on Rails 4.2, Python, Node.js, Nginx, Passenger, Resque, GitHub, Capistrano. Recently ported to Rails 4.2, Unicorn, Cron and Linode.

Equity (off-site) Mattters, Boulder, CO 12/09-4/13
Mattters.com (Real-time news channels. Currently disabled due to lack of funds. Responsible for design, implementation and marketing). Accomplished 3 major versions (ROR at Joyent. 100% Node.js at AWS. Mixed ROR and Node.JS at AWS). At times unusually successful and reached about 1.5M uniques each month, while extremely responsive. AWS (EC2, S3, SQS, CloudFront), Ubuntu, Ruby on Rails, Python, Node.js, Nginx, Passenger, Resque, Memcache, GitHub, Capistrano. Reached an Alexa / Quantcast of 10,000 in the first 6 months (1.5M uniques/ month).

Equity (off-site) Magazines.me, Boulder, CO 12/07-12/09
Earlier work on 'startups' includes design, implementation and deployment of Zategories.com (in about 2 weeks) and Sendies.com (including an infinite, zoomable HTML editable, drag-and-drop canvas, in about 1 month) and Magazines.me [all were in Ruby, Rails, SVN, JavaScript, MySQL, Apache, Passenger, Prototype, Scriptaculous, Solaris, Capistrano]. Magazines.me, a major effort, is a SaaS that generates magazine-like webpages that are searchable, linkable, sociable, commentable with modern capabilities like video, multiple-column text, text-wrapping around arbitrary obstacles (not just those on the left or right), text flow from page to page, and automatic resize of text, images and video to fit any window size (including iPhone and Mini PC). It provides a Page Maker-like WYSIWYG drag-and-drop editor that has most of the power of Adobe InDesign, but runs in a browser and outputs industry standard HTML and JavaScript.

Equity (off-site) Speshy.com, Boulder, CO 12/06-12/07
Previously, I was responsible for the design and development of Speshy.com (in Java, launched in about 5 months), an unusually full-featured open-source webtop in JavaScript (infinite undo/redo, custom widgets, on-screen interactive cloning and inheritance of new widgets, in-widget source code editor, with RSS and ATOM feed display widgets for PageFlakes/NetVibes-like functionality, etc.) with an ancillary wikipedia-like interface to reference, rate, and comment on people's special items running as a Amazon.com store [Java, JSP, Resin, Apache, CentOS].

Contract (off-site) - @ Brave New Films, Culver City, California 4/08 - 8/08
Wrote several versions of an (abandoned) online Personal Video Channel website in Ruby, Rails, SVN, JavaScript, and MySQL.

Contract (off-site) - @ Sandia National Laboratories, Albuquerque, New Mexico 4/01 - 7/07
Executed outsource contract to architect and build a Java thick client application called ChileCAD. Near the end of the project, I had personally written and was responsible for about 500,000 lines of DRY Java after which rigorous testing only turned up about 11 bugs (post project defunding). This is a full-featured commercial-quality schematic capture ECAD design tool. It uses our Mica Graphics Framework for the innovative UI with industry leading functionality and ease-of-use. XML is used extensively for the configuration of the application, including: plug-ins that supply the functionality for SPICE-dialect generation and parsing, conversion of SPICE to/from graphical schematics, persistence, themes, file version management and conversions, simulator setup and job submission. The tool also used XML to define object-oriented parts (symbol) library definitions with each able to take advantage of MVC separation of concerns, inheritance and overloading.

Employee - @ Verge Technologies Group, Boulder, CO 10/00-3/01
Designed and implemented the 2nd and 3rd generations of a code-generation tool and its associated templates to quickly produce EJB applications from XML files or database schemas. Designed and implemented a report generation framework for JunitTest. Designed and implemented an automatically generated J2EE database browsing/editing tool. Refactored and rewrote much of on-line billing system. Spearheaded conceptual phase, produced and gathered requirements, architected, designed, documented, prototyped, and produced various schedules for the project implementation phase for the productization of core service of company to be called OpenHost. Designed and implemented graphics, workflow, and architecture of the (JSP/Servlets) GUI and implementation for a (small, 12 screen) J2EE network management tool.

Contract (off-site) - @ Interactive Gaming and Wagering, Curacao 10/99 - 1/00
Wrote utilities, games and prototyped new online gambling framework.

Contract (off-site) - @ Unicom Communications, Overland Park, Kansas 11/98 - 2/99
Produced new version of an interactive layout and management tool for advertising copy and support materials written in Java 1.1.6. Also wrote two applets in Java 1.0.2 used by AT&T for their 1999 online sweepstakes giveaway.

Contract (off-site) - @ Innovative Research, Denver, CO 5/96 - 5/98
Technical lead, architect, implementer, and co-designed the GUI of the "Environment for the Analysis of Parallel and Distributed Systems" (EaPADS) previously implemented in C++ (see below). This was written in Java 1.0.2 on top of the Mica graphics framework (see below) and Cadabra application framework. This application provides novel techniques for editing networks as well as a fully modern user interface (including direct-manipulation graphics editors, tooltips, context-sensitive help, automatic periodic backup and recovery, drag-and-drop, right-button menus, editable drag-and-droppable treelist widgets, and automatic GUI generation from XML-like meta-data files).

Consultant (off-site) - @ Ericsson Raynet, Menlo Park, CA 7/94 - 10/95
Performed maintenance and support for the RIDES telecomm operations support system (OSS), and provided technical training and mentoring to the 6 member Raynet engineering team. The application was successfully deployed in many European countries.

Consultant (off-site) - @ SunSoft, Colorado Springs, CO 3/94 - 6/94
Prototyped two applications (Online DiskSuite, HATool). One prototype contained a dynamic flowchart from which windows were launched. The other prototype included a constrained, interactive treemap editor with extensive design rule checking. These were written (re)using a C++ framework and a C++ graphics editor object on Motif and X Windows which I had developed earlier in my spare time.

Consultant (off-site) - @ Ericsson Raynet, Menlo Park, CA 11/92 - 11/93
As technical lead, designed a layered, object-oriented system architecture and implemented the framework and application layer for RIDES, a large telecommunications operations support system (OSS) targeting the international market. This framework and application layer contains over 120 large internationalized windows, 3 graphics editors, and over 200,000 lines of C++ and exists between the Motif widgets designed and generated by the TeleUSE GUI builder and a custom interface to the Ingres RDBMS.

Consultant (off-site) - @ Innovative Research, Denver, CO 8/91 - 11/92
Designed and co-wrote an object-oriented graphics application to interactively describe, visualize and simulate a computer network for capacity planning and analysis. This included a direct-manipulation graphical editor and a Motif GUI as the front end and the Sybase RDBMS as the back end and was written in C++.

Programming languages, toolkits, tools, platforms
  • Ruby, Javascript, Node.js, CSS, MySQL, Python, Java, JSP, XML, PHP, SOAP, UML, DOM, HTML, XMI, C++, C, 80x86, 68000 and TMS9900 assembly, PostScript, PDF
  • Rails, MySQL, JQuery, Prototype, JSP, Servlets, ANT, Java JDK 1.0+, AWT, JFC/Swing, Resin, Apache, Nginx, Tomcat, JDOM, JUnitTest, X Window System, OSF/Motif, Xt Toolkit, SunView
  • Unicorn, Passenger, Capistrano, Memcache, Redis, Photoshop, FrameMaker, MS Word, Visual CAFE, UIM/X, TeleUSE, Builder Xcessory, FrontPage, DBX, RCS, GIT, SCCS, VCS, CVS, SVN (Subversion), TortoiseSVN, DDTS, Bugzilla, GitHub
  • Linode, AWS, Joyent, Ubuntu, Solaris 11, Solaris 1, 2.x, SunOS, Unix, CentOS Linux, Windows 2000, Windows NT, Windows XP, DOS 2.0