"I'm not a rock star. I'm a professional. My job isn't to impress you with my awesomeness. It's to get the work done, right, on time and to spec."

Most recently I've been working at Sterling Talent Solutions as a developer on their onboarding SaaS product. In the time between when Corelogic closed their US development team and my starting at Sterling I took some time to bring my skills in modern Web development up to snuff. I was doing development in PHP, Ruby on Rails, Python, HTML5/CSS3, JQuery and AngularJS, and deploying and managing servers on both conventional servers and AWS. My focus was on development for the Linux platform, and I was especially intrigued by the Docker container system as a complement to conventional virtual machines. The ability to package a single-purpose server into a container and deploy it alongside others on a host VM makes server management a lot simpler.

I was at CoreLogic for 9 years doing development on the DataHQ credit reporting system. The work involved a wide variety of technologies: bare TCP/IP networking and custom protocols running over TCP/IP, HTTP using a variety of libraries, SOAP-based web services, XML-over-HTTP-based web services, XML parsing and generation, CORBA middleware, message queueing using IBM MQ and ActiveMQ, Informix and Oracle database servers and C++ client libraries, SQL of course, managing FAX hardware, SNA networking and LU6.2 communications programming, very heavy-duty multi-threaded C++ programming, client/server architectures, N-tier architecture, Agile/Scrum development, version control systems including CVS, ClearCase and Subversion. I was most heavily involved in the components that interfaced with external systems, but worked on all parts of the system including the modular report-generation engine and the libraries that did the low-level parsing and generation of XML. Towards the end I was involved in an attempt to port the system over to C#/.Net and Microsoft's Enterprise Library and Entity Framework. The DataHQ team was fairly successful in converting the code and making it work.

Prior to that I worked at WebSideStory for 4 years on the web-facing servers that accepted and recorded requests from browsers and generated the initial analytics data that was passed on to back-end systems for complete analysis. Due to performance demands I had to enhance and finally re-engineer a custom HTTP server component that could process requests fast enough not to be overloaded by the traffic, and along the way converted it to use a plug-in architecture so additional components could be added and configured without having to work directly with the HTTP core itself. Work on that was constant enough that it occupied the majority of my time there.

Before I moved to San Diego to work for WSS, I worked at Flying J in Brigham City, Utah, for 6 years doing software development for their point-of-sale system for the truck stops and restaurants the company operated. That job involved far more than you'd probably expect. POS terminal software and the associated payment-card processing systems are obvious, and the company operated it's own payment card as well as handling payment cards for individual trucking lines. Less obvious would be things like building an automated shower-stall-access system: the control program, the POS terminal modifications to handle putting shower tickets into the system when sold and letting the cashiers manage the parts of the system they needed to, the voice-synthesis announcement system and even designing, building and installing the actual hardware. I was also heavily involved in the original development of a wireless RFID system that automated payment and pump authorization for trucking lines. A driver could simply get out, put the fuel nozzle in the tank and pull the handle, the system handled identifying the truck and driver and billed the correct account based on information read off the RFID tag on the truck. When the fuel nozzle was removed from the truck, the pump was stopped until the nozzle was either put into another tank or hung up on the pump, eliminating a surprising amount of fraud. I was working on the initial development of an interface to level-monitoring hardware for the underground tanks to automate fuel delivery and inventory processing when I left to go to work for WebSideStory.

Over the years I've programmed in Fortran, COBOL, Pascal, BASIC, C, C++, Lisp, APL, Bliss-32, assembly language (Z-80, PDP-11, VAX-11 and Intel x86), Icon, Java, C#, PHP, Python, Ruby, Javascript and a number of Unix shells. I've developed using the .Net, J2EE and Spring frameworks, and in Ruby on Rails. Starting with WebSideStory I got proficient with HTML and related technologies and I'm currently competent with HTML5/CSS3 and Javascript frameworks like JQuery and AngularJS. I don't feel I'm bragging when I say that if I haven't done it I can learn it in jig time, because I've spent my career doing just that.