Max Rible Kaehn

Career Objective: Software architect.


Software generalist, experienced in learning new technologies on very short notice. Able to work at all levels of abstraction, taking software from mathematical specifications to documentation. Internet-based software and user interface design for windowing applications a specialty; strong emphasis on object-oriented design. Strong expertise in cross-platform development (particularly between Win32 and various breeds of Unix).

Work Experience

3/14 – now Google, Inc., 1600 Plymouth Avenue, Mountain View, CA, 94043, USA . Senior Software Engineer. Google Play Services engineering productivity. Working on Android infrastructure, Bazel build macros, Python quality sensors, C++ and Go utilities.
2/123/14 Electric Cloud, Inc., 676 W. Maude Avenue, Sunnyvale, CA, 94086, USA . Senior Software Engineer, ElectricCommander (Java). Extended GWT uibinder to lay out widgets created in-house. Trained in Class B Scrum. Created Java client for our REST API (command line and bean) and integrated it with JavaScript triggers via Apache Bean Scripting Framework in PTC Integrity. Extended ssh-based remote install tool to use PowerShell on Windows. Maintained and extended in-house continuous integration suite.
8/041/12 Electric Cloud, Inc., Mountain View and then 676 W. Maude Avenue, Sunnyvale, CA, 94086, USA . Senior Software Engineer, ElectricAccelerator (C/C++). Dealt with complexities of Windows ACLs, permissions, user authentication, window stations, and desktops. Added file system filter driver functionality to a Windows file system driver and greatly increased driver compatibility with NTFS and FAT32 behaviors; did some work in the Linux file system driver. Dealt with conflicts caused in the field by third party drivers. Created and maintained unit tests for bugs fixed and features added. Created integration code for source control systems including ClearCase, Perforce, CVS, and Subversion. Solved problems with Cygwin internals and contributed code and developer documentation to the Cygwin project. Added ClearCase integration by interfacing with the unsupported API shipped with the Linux installer. Added support for Unicode filesystems and Ant to the ElectricAccelerator product. Created Unix filesystem monitors using FUSE and LD_PRELOAD intercept.
10/028/04 Electronics for Imaging, Foster City. Lead Software Engineer. Designed, implemented, and documented cross-platform C++ abstraction layer to hide differences between Win32 and Linux. Wrote a C++ wrapper for undocumented memory management API and used it as a framework for Doxygen documentation. Created a flexible multithreaded rule-based filter pipeline for processing data streams. Maintained and extended the build system (written in GNU make), and converted several large legacy projects to the current build system.
8/004/02 Pico Communications Inc. (formerly Easent Communications), Cupertino. Senior Staff Engineer. Wrote code to manage Bluetooth-to-IP gateways and providing content for WAP and HTTP clients, including a man in the middle TCP redirector to send a client’s first outgoing HTTP connection to a page specified by the owner of the access point and a sample Apache Tomcat module to generate a link to the client’s original destination. Set up CVS source control system, created scripts to perform automated nightly builds for VxWorks Tornado. Wrote RADIUS and TACACS+ clients and Cisco Discovery Protocol broadcaster for VxWorks. Created SNMP MIB to manage Bluetooth access point and implemented it using WindNet SNMP. Created HTTP and TELNET servers for configuring access point. Created cross-platform (Win32/Linux) raw socket library for Java using JNI and embedded it in a signed applet (with automated library installation) using a Swing GUI.
7/987/00 CoVia (formerly Glyphica), Mountain View. Computer Scientist. Built web server plugin tools for content management, using an API abstraction layer (including a C++ streambuf implementation) to hide the difference between NSAPI, ISAPI, and Apache. Projects included HTML and PDF searching and hit highlighting, a Class 2 WebDAV implementation, interfacing with Windows NT, NIS+, and LDAP authentication protocols (via Netscape Directory SDK), wiring an XML parser into the product, writing C++ modules to extend server-side JavaScript functionality, and using undocumented XDR routines to cache compiled JavaScript. Responsibilities included generating architectural specifications, writing documentation, acting as technical liaison to our own consulting staff and technical personnel at partner companies, administering two Solaris systems, arranging all code to run under both Solaris and NT, configuring the Cisco LocalDirector to balance loads across web servers, and creating cross-platform libraries of utility classes.
2/977/98, Inc. (later acquired by Lycos), Santa Clara and then Mountain View. Applications Engineer. Built tools using NSAPI to serve stock quote information over the web. Created a great deal of documentation to help new hires orient themselves. Created a client/server interface to an Oracle database, laying the groundwork for caching frequently updated information. Served as project lead coordinating marketing and engineering to design and construct a client/server system integrating Java applets in customer web browsers and a C++ server infrastructure on site. Inherited the news system when the previous responsible engineer left, handling the issues of bringing twenty heterogeneous sources of news articles into a central database; documented unexplained code, produced (using Visio) a comprehensive diagram of information flow and system usage in the news system, wrote tools to simplify recovery from errors, improved error reporting and reliability, and created a variety of solutions to pre-existing problems.
2/962/97 Mpath Interactive (later HearMe), Cupertino. Member of Technical Staff. Built installers that upgraded existing games to Mplayer compatibility and walked novice users through the process of upgrading their Windows 95 systems to connect to the Internet. Designed flexible Unix-based multithreaded server stress-testing software to simulate massive user loads and track down inconsistent operation. Created HTML documentation for internal libraries that was later used as reference material for new development partners.
7/942/96 Verity, Inc., Mountain View. Software Author. Designed cross-platform graphical front ends to Verity’s search engine. Created Motif applications running on four different breeds of Unix, including hybrid make environment (using GNU make) and source control scripts (in csh and perl); contributed to development of Windows GUI applications on 3.1 and 95/NT. Led project (coordinating Mac and Windows specialists) creating C++ application frameworks for cross-platform use on Unix, Macintosh, and Windows 95/NT; utilized said frameworks in building a cross-platform Web browser-based search application. Documented internal tools and acted as liaison to Documentation for projects I participated in.
8/936/94 Consulting on the PetNet project of the Leonard X Bosack & Bette M Kruger Foundation (based in Redmond, WA though PetNet is in the San Francisco Bay Area). Full-time work writing software under MS Windows and Novell NetWare in Microsoft FoxPro and Visual C++ to computerize paper-oriented tasks in humane societies and link databases together to permit wide-area searches. Involved at all levels, from software specification through programming and technical support to development of installation software.
19901992 Digital Sound Corporation (later PulsePoint Communications, then acquired by Unisys), Santa Barbara and Carpentería (speech synthesis and recognition research). Full-time work during three summers programming under X Windows, performing data analysis in awk, software installation, and giving instructional presentations to staff on using new software.
19871989 Lawrence Berkeley Laboratory, Computer Graphics and Distributed Computing, Advanced Development Projects . Employed as a Student Assistant part-time during academic year and summers. Helped develop SCRY distributed movie making system. Wrote libraries controlling a Panasonic optical disk recorder connected to an IBM AT, level set tessellation routines operating on 3-D data sets, and a SunView and X Windows-compatible image processing tool for exploring and analyzing two-dimensional grayscale images.


19891993 BS in Physics from the College of Creative Studies at the University of California at Santa Barbara; graduated March ’93.
19881989 Electrical Engineering and Computer Science major in the College of Engineering, UC Berkeley. Completed 22 UC units via Accelerated High School Student Program (AHSSP), including full lower-division curricula in mathematics, physics, and computer science.
19851989 Albany High School, Albany, CA. Honors included National Merit Finalist, Hertz Scholar (Fannie and John Hertz Foundation), University of California Regents’ Scholar, and Life Member of the California Scholarship Federation.