Patrick Mueller

summary

  • Senior software developer and project leader for software development tools and application software.
  • 30+ years of professional experience.
  • Active in using the latest mobile, web front-end, and node.js back-end technologies.
  • Active web developer since 1993.
  • Focus on creating software which is usable, readable, maintainable, observable, secure, documented, and small.
  • Passion for working on debugging and diagnostic tools.

buzzwords

  • JavaScript, CoffeeScript, Objective-C, Python, Java, Smalltalk, C, PL/I, REXX
  • Elasticsearch, Postgres, InfluxDB, Redis, MongoDB, CouchDB, SQL, DL/I
  • Markdown, HTML, CSS, LaTeX, GML/Script, nroff
  • GraphQL, WebSocket, Socket.IO, REST, CORBA, Sun RPC
  • AWS goop: Lambda, ECS, SQS, CloudWatch, etc
  • Docker, Cloud Foundry, Heroku
  • Mac OS X, Linux, QNX, AIX, Windows, DOS, VM/CMS
  • Visual Studio Code, Atom, Sublime, XCode, Eclipse, Smalltalk, KEDIT, XEDIT

work experience

Elastic - RTP, NC (2019-present)

Working on Kibana Alerting at Elastic.

Principal Software Engineer


NodeSource - RTP, NC (2015-2018)

Making life better for Node.js developers at NodeSource.

Senior Node Engineer

  • Worked on backend of NodeSource products, including N|Solid and Certified Modules
  • Adapted the Cloud Foundry buildpack for Node.js to N|Solid at nsolid-buildpack-cf-v3
  • Adapted the Heroku buildpack for Node.js to N|Solid at heroku-buildpack-nsolid
  • Various cloud-y activity in AWS, including Lambda, S3, SQS, RDS, ElastiCache, Elasticsearch, ECS, ...

IBM, Bluemix Developer Advocate - RTP, NC (2013-2015)

Bluemix (now IBM Cloud) is IBM's platform-as-a-service offering, built on the open-source Cloud Foundry project.

Senior Technical Staff Member

  • Started playing with Cloud Foundry in 2013 - "the VCAP days"
  • Provided help for users of Bluemix; whatever customers needed to become successful with the product, via private engagements and public support channels such as the public Bluemix forum
  • Authored numerous blog posts and sample applications showing off aspects of the platform
  • Presented at meetups, conferences, customer sessions
  • Primarily focused on node.js as runtime
  • Developed the cfenv and cf-node-debug node packages, making it easier to use node.js on Bluemix

IBM, WebKit/Cordova Contributor - RTP, NC (2009-2013)

IBM's initial contributor to the WebKit project, to get some skin in the game. Segued to a role contributing to PhoneGap / Apache Cordova.

Senior Technical Staff Member

  • Focused on improving WebKit's Web Inspector debugger
    • Added support for "named eval()'s"
    • Added "watch panel"
    • Added initial support for console.table()
    • Added support to display HTTP headers and data for XHRs
    • Number small fixes/enhancements
  • Developed weinre (WEb INspector REmote) to enable some amount of debugging on mobile devices, while waiting for the real thing to land in the device browsers
  • Contributed weinre to PhoneGap, which shortly became Apache Cordova
  • Contributed to design and implementation of initial Cordova core code
  • Implemented sample plugins, including initial bar code scanner for iOS

IBM, Rational CTO Team Member - RTP, NC (2008-2009)

The Rational CTO team performed various tasks to ensure Rational was making the best use of current technologies in their products.

Senior Technical Staff Member

  • Contributed to the design of the Jazz Foundation Services
  • Consulted for Rational product development
  • Early investigation on usage of cloud-based computing for Rational products

IBM, Project Zero - RTP, NC (2006-2008)

The Project Zero/WebSphere sMash project was created to provide agile programming capabilities to web-based application developers.

Senior Technical Staff Member

  • Coordinated IBM's involvement with the PHP community
  • Developed REST-based modeling tools
  • Worked on the Project Zero web-based IDE

IBM, Rational Team Concert - RTP, NC (2005-2006)

The Jazz project was a reboot of IBM's source code management and other program lifecycle management capabilities, with a focus on Eclipse and web front-ends. The technology is currently shipped in IBM's product Rational Team Concert.

Senior Technical Staff Member

  • Converted a fragile, unscalable web services framework to a dynamic system, eliminating lots of boilerplate and providing a more agile services framework for developers
  • Developed Java- and JavaScript-friendly remote web services framework and client libraries

OTI, Smalltalk and Java - Raleigh, NC (1997-2004)

Object Technology International (OTI) was acquired by IBM in 1996. I worked on assignment to OTI during this time frame, performing various roles such as Raleigh Lab Director, and Tech/Team Lead for several projects.

Senior Technical Staff Member

  • Analysis work for IBM Director-ish folk who needed to keep abreast of Open Source Java technology. Lots of reading and playing with stuff. Tracked the Apache Geronimo project quite closely, before IBM's purchase of Gluecode (employer of Geronimo developers)
  • Lab Director of the OTI Raleigh lab, coordinating all work going on in the lab with other OTI labs and management
  • Tech/Team lead for the embedded GUI libraries for the WebSphere Device Developer (WSDD) runtimes, including MIDP, AWT, P3ML, BMG, and Degas/EGFX technologies
  • Co-wrote initial Eclipse SWT port for QNX/Photon
  • Worked on operating systems/libraries including PalmOS, WinCE/PocketPC, Qt, SymbianOS, and devices such as Palm Pilot, HP/Compaq iPAQs, Nokia Communicator.
  • Worked on deeply embedded systems using QNX and MontaVista Linux on development boards such as the Motorola MobileGT platform and Intel CerfCruiser
  • Designed/developed the audio interfaces for MIDP 2.0 for the initial releases of this functionality for the Websphere Device Developer product
  • Lead developer of the jxeLink project, an embedded java linker
  • Project management for two releases of the VisualAge MicroEdition product
  • Embedded Smalltalk product development, including the Network Vehicle concept car for Delco for Comdex '97, working with Delco, General Motors, and Sun

IBM, VisualAge Smalltalk - RTP, NC (1993-1997)

Various jobs related to Envy/Smalltalk and the product based on that, VisualAge Smalltalk.

Senior Software Developer

  • Lead developer of the Web Connection feature of VisualAge Smalltalk
  • Developed the the initial prototype of the VisualAge Java version of the Web Connection feature, using the nascent Servlet technology and pre-historic native server plugin libraries
  • Designed / developed the communications layer (TCP/IP) and GSS-API security API usage for the Distributed Smalltalk feature of VisualAge Smalltalk
  • Developed the initial port of Envy/Smalltalk to AIX

IBM, CORBA on DCE - Cary, NC (1992-1993)

Member of a small team that developed an OMG CORBA implementation on top of DCE for OS/2 and AIX.

Staff Developer

  • Focused on the core libraries for the CORBA runtime for clients
  • Co-authored official OMG CORBA IDL mappings for Smalltalk

IBM, Hickory text editor - Cary, NC (1991-1992)

Work on the Hickory text editor and follow-on Multi-Line Edit (MLE) Control for OS/2.

Software Developer

  • Designed / developed the REXX macro interface into the Hickory editor control
  • Created numerous core and demo macros for the Edge editor, the sample editor we shipped that used the editor control
  • Designed / developed the text model for the follow-on to the Hickory editor, a complete rewrite from OS/2 16-bit to 32-bit

IBM, Natural Language Processing - Bethesda, MD (1989-1991)

Base language dictionary access code (eg, for spell-checkers) and advanced language parsing systems.

Software Developer

  • Designed / developed dictionary building tools and dictionary access APIs for the grammar checking editor CRITIQUE for both VM/CMS and OS/2
  • Designed / developed text-processing algorithms for use in the natural language processing Twain library for OS/2

IBM, Master Product Inventory - Lexington, KY (1985-1988)

Software developer for IBM's primary database of every hardware product it sells.

Software Developer

  • Developed batch programs for MVS
  • Developed interactive CICS programs for 3270 displays
  • Created programming tools as development aids for VM/CMS and MS-DOS, using REXX
  • Local expert on Intertest, a graphical step-mode debugger for CICS programs

education

Purdue University, 1981 -1985
West Lafayette, IN
B.S. Computer Science
B.S. Mathematics

writings

I have a few years worth of writing on my blog.

And I've written / presented other stuff:

2017
2016
2015
2014
2013
2012
2011
2010
2009
2003
1998
1997
1996
1995
<= 1994
  • REXX Language Symposium, "The Design and Implementation of REXX Object Extension - ROX"
  • IBM Technical report, "REXX Source Level Debugging with System Exits"
  • IBM Technical report, "The Design and Implementation of REXX Object Extension - ROX"
  • IBM Technical report, "cPost - Typesetting C Language Files With PostScript"
  • Forward to Book: "OS/2 2.1 REXX Handbook: Basics, Applications, and Tips" By Hallett German