Todd Knarr

Name: Todd Knarr
Birthdate: 23 June, 1965
Cel phone: (619) 813-6641
VoIP: (619) 752-4793
Skype: todd.knarr
E-mail: tknarr@silverglass.org
todd.knarr@gmail.com
Profiles: https://www.linkedin.com/in/ToddKnarr
https://plus.google.com/+ToddKnarr/about
https://github.com/tknarr
https://rubygems.org/profiles/tknarr
Address: 4710 Talmadge Canyon Row, San Diego, CA, 92115
Resume: HTML, PDF, Microsoft Word and OpenDocument text
"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 was working at CoreLogic CREDCO until they moved their development team off-shore and laid off the US developers in 2014. Since then I've taken some time to bring my skills in modern Web development up to snuff. I've been 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 has been on development for the Linux platform, and I'm 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. All of that work and various side projects I've lumped under the heading of Silverglass Technical for convenience. My goal's to get to the point where I can market software through it and make it a self-sustaining business.

When I'm not doing software, my main entertainments have been hiking or various computer games. I've swung between first-person shooters and MMOs, although in the last year or two Ingress has been my main diversion as it gives me an equal mix of multiplayer gaming and exercise exploring the city looking for portals.

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.