This is an unofficial validator¹/conformance checker of the hCard microformat.
Po polsku
En français
(translations welcome!)
Referer
<a href="http://hcard.geekhood.net/referrer/">Validate hCards</a>
Send GET
request to http://hcard.geekhood.net/?url=URL to validate&output=json
.
Output will be roughly compatible with the Validator.nu JSON API. Likely to change in the future.
Please use this API for validation, not just as an converter/extraction tool.
This document contains errors.
If it wasn't supposed to be an entity, escape &
as &
. Validator reads only XHTML/1.x DTDs, so named entities in other types of documents will not be available.
Line 51, column 9
<head profile="…">
has multiple profile URLsHTML specification and DTD are contradicting each other about this case. Use a single http://purl.org/uF/2008/03/
profile instead.
<head>
uses unknown profilehCard Valdiator does not parse XMDP profiles and is unable to check if “http://microformats.org/profile/specs/ http://microformats.org/profile/hresume” defines hCard microformat.
Validator found calendar, but haven't checked it.
No issues found.
Card source | #max_kaehn |
|
---|---|---|
value | slothman@mithriltabby.com |
|
GEO | latitude | 37.38200 |
longitude | -122.02781 |
|
Formatted name | Max Rible Kaehn |
|
Name | Honorific Prefix | Mr. |
Given Name | Max |
|
Additional Name | Rible |
|
Family Name | Kaehn |
|
Nickname | Slothman |
|
Photo URL | http://www.mithriltabby.com/images/usericon.jpeg | |
URL | http://www.mithriltabby.com/ |
org
and fn
used together imply that it is not a person.
Card source | ||
---|---|---|
Address | Street | 1600 Plymouth Avenue |
State or Province | California |
|
City | Mountain View |
|
Postcode | 94043 |
|
Country | USA |
|
Formatted name | Google, Inc. |
|
Organization | Org. Name | Google, Inc. |
Title | Senior Software Engineer |
|
URL | http://www.google.com |
org
and fn
used together imply that it is not a person.
Card source | #electric-commander |
|
---|---|---|
Address | Street | 676 W. Maude Avenue |
State or Province | California |
|
City | Sunnyvale |
|
Postcode | 94086 |
|
Country | USA |
|
Formatted name | Electric Cloud, Inc. |
|
Organization | Org. Name | Electric Cloud, Inc. |
Title | Senior Software Engineer |
|
URL | http://www.electric-cloud.com/ |
org
and fn
used together imply that it is not a person.
Card source | #electric-cloud |
|
---|---|---|
Address | Street | 676 W. Maude Avenue |
State or Province | California |
|
City | Sunnyvale |
|
Postcode | 94086 |
|
Country | USA |
|
Formatted name | Electric Cloud, Inc. |
|
Organization | Org. Name | Electric Cloud, Inc. |
Title | Senior Software Engineer |
|
URL | http://www.electric-cloud.com/ |
org
and fn
used together imply that it is not a person.
Card source | #efi |
|
---|---|---|
Address | City | Foster City |
Formatted name | Electronics for Imaging |
|
Organization | Org. Name | Electronics for Imaging |
Title | Lead Software Engineer |
|
URL | http://www.efi.com/ |
org
and fn
used together imply that it is not a person.
Card source | #pico |
|
---|---|---|
Address | City | Cupertino |
Formatted name | Pico Communications Inc. |
|
Organization | Org. Name | Pico Communications Inc. |
Title | Senior Staff Engineer |
org
and fn
used together imply that it is not a person.
Card source | #covia |
|
---|---|---|
Address | City | Mountain View |
Formatted name | CoVia |
|
Organization | Org. Name | CoVia |
Title | Computer Scientist |
org
and fn
used together imply that it is not a person.
Card source | #quote.com |
|
---|---|---|
Address | City | Mountain View |
Formatted name | Quote.com, Inc. |
|
Organization | Org. Name | Quote.com, Inc. |
Title | Applications Engineer |
|
URL | http://www.quote.com/ |
org
and fn
used together imply that it is not a person.
Card source | #mpath |
|
---|---|---|
Address | City | Cupertino |
Formatted name | Mpath Interactive |
|
Organization | Org. Name | Mpath Interactive |
Title | Member of Technical Staff |
org
and fn
used together imply that it is not a person.
Card source | #verity |
|
---|---|---|
Address | City | Mountain View |
Formatted name | Verity, Inc. |
|
Organization | Org. Name | Verity, Inc. |
Title | Software Author |
|
URL | http://www.verity.com/ |
org
and fn
used together imply that it is not a person.
Card source | #petnet |
|
---|---|---|
Formatted name | Leonard X Bosack & Bette M Kruger Foundation |
|
Organization | Org. Name | Leonard X Bosack & Bette M Kruger Foundation |
Role | Consultant |
org
and fn
used together imply that it is not a person.
Card source | #digital_sound |
|
---|---|---|
Address | City | Carpentería |
Formatted name | Digital Sound Corporation |
|
Organization | Org. Name | Digital Sound Corporation |
n
property is emptyCheck syntax. Remove property from document if it doesn't have (non-empty) value.
org+fn
used, but names differAlthough hCard uses org
and fn
together, the organization-name
is not identical to fn
and card may not be interpreted as company's card.
Card source | #lbl |
|
---|---|---|
Formatted name | Lawrence Berkeley Laboratory, Computer Graphics and Distributed Computing, Advanced Development Projects |
|
Organization | Org. Name | Lawrence Berkeley Laboratory |
Org. Unit | Computer Graphics and Distributed Computing |
|
Title | Student Assistant |
|
URL | http://www.lbl.gov/ |
n
property is emptyCheck syntax. Remove property from document if it doesn't have (non-empty) value.
org+fn
used, but names differAlthough hCard uses org
and fn
together, the organization-name
is not identical to fn
and card may not be interpreted as company's card.
Card source | #ucsb |
|
---|---|---|
Formatted name | College of Creative Studies at the University of California at Santa Barbara |
|
Organization | Org. Name | University of California at Santa Barbara |
Org. Unit | College of Creative Studies |
|
URL | http://www.ccs.ucsb.edu/ |
n
property is emptyCheck syntax. Remove property from document if it doesn't have (non-empty) value.
org+fn
used, but names differAlthough hCard uses org
and fn
together, the organization-name
is not identical to fn
and card may not be interpreted as company's card.
Card source | #ucb |
|
---|---|---|
Formatted name | College of Engineering, UC Berkeley |
|
Organization | Org. Name | UC Berkeley |
Org. Unit | College of Engineering |
|
URL | http://www.coe.berkeley.edu/ |
org
and fn
used together imply that it is not a person.
Card source | #ahs |
|
---|---|---|
Address | City | Albany |
Formatted name | Albany High School |
|
Organization | Org. Name | Albany High School |
URL | http://www.albany.k12.ca.us/ahs/ |
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head profile="http://microformats.org/profile/specs/ http://microformats.org/profile/hresume"><title>Max Rible Kaehn’s résumé</title> <link rel="stylesheet" type="text/css" href="style.css" /> <!-- Specifying UTF-8 in the HTTP headers doesn't persuade IE to use UTF-8. --> <!--[if IE]> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="ie.css" /> <![endif]--> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="icon" type="image/png" href="images/zonk16x16.png" /> <link rel="made" href="http://www.mithriltabby.com/" /> <script type="text/javascript" src="code.js"> <!-- Can't use <script/> because I have to be able to serve this up to Internet Exploder as text/html. --> </script> <link rel="home start contents" href="/" /> <link rel="prev" href="vocation.xhtml" /> <link rel="next" href="avocation.xhtml" /> <link rel="pronunciation" href="lexicon.xml" /> <meta name="description" content="Max Rible Kaehn’s résumé" /> </head> <body class="hresume"> <!-- hResume microformat: contact --> <!-- hCard microformat --> <div id="max_kaehn" class="contact vcard"> <h1 style="margin-bottom: 0;"> <span class="n"> <span class="honorific-prefix hidden">Mr.</span> <a class="url" rel="me" href="http://www.mithriltabby.com/"> <span class="fn"> <span class="given-name">Max</span> <span class="additional-name">Rible</span> <span class="family-name">Kaehn</span> </span> </a> <span class="nickname hidden">Slothman</span> </span> </h1> <!-- Obfuscating the email address to deter spam harvesters; this may break the Optimus microformat validator --> <p class="center" style="margin-top: 0;"><a class='email' href = '  mailto: %73%6co%74%68ma%6e%40m%69%74%68r%69l%74%61bby%2e%63o%6d? '>slothman@mit<!-- mailto:abuse@hotmail.com </a> -->­hriltabby.com</a></p> <div style="display: none" class="geo"> <abbr class="latitude" title="37.38200">37°22’55.0” N</abbr>, <abbr class="longitude" title="-122.02781">122°1’40.1” W</abbr> </div> <img style="display: none" class="photo" src="http://www.mithriltabby.com/images/usericon.jpeg" alt="hCard photo" /> </div> <!-- contact --> <p><b>Career Objective:</b> <span class="objective">Software architect</span>.</p> <h3>Skills</h3> <p class="summary">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).</p> <ul> <!-- rel-tags are weird in that what really matters is the last element of the path in the href, not the full target. So we link to Wikipedia for everything, instead of using http://www.tcl.tk/ for Tcl, etc. --> <li><b>Programming languages:</b> <a href="http://en.wikipedia.org/wiki/C_(programming_language)" rel="tag external" class="skill">C</a>, <a href="http://en.wikipedia.org/wiki/C%2B%2B" rel="tag external" class="skill">C++</a> (<a href="http://en.wikipedia.org/wiki/Standard_Template_Library" rel="tag external" class="skill"><abbr title="Standard Template Library">STL</abbr></a>, <a href="http://en.wikipedia.org/wiki/Boost_C%2B%2B_Libraries" rel="tag external" class="skill">Boost</a>), <a href="http://en.wikipedia.org/wiki/Java_(programming_language)" rel="tag external" class="skill">Java</a>, <a href="http://en.wikipedia.org/wiki/Tcl" rel="tag external" class="skill">Tcl</a>, <a href="http://en.wikipedia.org/wiki/JavaScript" rel="tag external" class="skill">JavaScript</a>, <a href="http://en.wikipedia.org/wiki/Perl" rel="tag external" class="skill">Perl</a>, <a href="http://en.wikipedia.org/wiki/AWK" rel="tag external" class="skill">awk</a>, <a href="http://en.wikipedia.org/wiki/Bash" rel="tag external" class="skill">bash</a>, <a href="http://en.wikipedia.org/wiki/Tcsh" rel="tag external" class="skill">tcsh</a><!-- Utterly out of date: AppleScript, Forth, Scheme, assembly -->.</li> <li><b>Operating systems:</b> <a href="http://en.wikipedia.org/wiki/Unix" rel="tag external" class="skill">Unix</a> (<a href="http://en.wikipedia.org/wiki/Linux" rel="tag external" class="skill">Linux</a>, <a href="http://en.wikipedia.org/wiki/Solaris_Operating_System" rel="tag external" class="skill">Solaris</a>, <a href="http://en.wikipedia.org/wiki/HP-UX" rel="tag external" class="skill">HP-UX</a>, <a href="http://en.wikipedia.org/wiki/AIX_operating_system" rel="tag external" class="skill">AIX</a>), <a href="http://en.wikipedia.org/wiki/Microsoft_Windows" rel="tag external">Windows</a> (<a href="http://en.wikipedia.org/wiki/Windows_3.1x" rel="tag external" class="skill">3.1</a>, <a href="http://en.wikipedia.org/wiki/Windows_95" rel="tag external" class="skill">95</a>, <a href="http://en.wikipedia.org/wiki/Windows_NT" rel="tag external" class="skill">NT</a>, <a href="http://en.wikipedia.org/wiki/Windows_2000" rel="tag external" class="skill">2000</a>, <a href="http://en.wikipedia.org/wiki/Windows_XP" rel="tag external" class="skill">XP</a>, <a href="http://en.wikipedia.org/wiki/Windows_Server_2003">2003</a>, <a href="http://en.wikipedia.org/wiki/Windows_Vista" rel="tag external" class="skill">Vista</a>, <a href="http://en.wikipedia.org/wiki/Windows_Server_2008" rel="tag external" class="skill">2008</a>; <a href="http://en.wikipedia.org/wiki/Cygwin" rel="tag external" class="skill">Cygwin</a>). 32- and 64-bit platforms. <!-- Out of date: Macintosh Systems 6-7.5, MS-DOS, UNICOS, CP/M --></li> <!-- <li><b>Web servers</b>, plug-in design: <a href="http://en.wikipedia.org/wiki/Netscape_Enterprise_Server" rel="tag external" class="skill">Netscape Enterprise Server</a> (<a href="http://en.wikipedia.org/wiki/Netscape_Server_Application_Programming_Interface" rel="tag external" class="skill"><abbr title="Netscape Server Application Programming Interface">NSAPI</abbr></a>), <a href="http://en.wikipedia.org/wiki/Internet_Information_Services" rel="tag external" class="skill">Microsoft Internet Information Server</a> (<a href="http://en.wikipedia.org/wiki/Internet_Server_Application_Programming_Interface" rel="tag external" class="skill"><abbr title="Internet Server Application Programming Interface">ISAPI</abbr></a>), <a href="http://en.wikipedia.org/wiki/Apache_HTTP_Server" rel="tag external" class="skill">Apache</a> (<a href="http://en.wikipedia.org/wiki/Apache_Tomcat" rel="tag external" class="skill">Tomcat</a>).</li> --> <li><b>Compilers:</b> <a href="http://en.wikipedia.org/wiki/GNU_Compiler_Collection" rel="tag external" class="skill">gcc</a>, <a href="http://en.wikipedia.org/wiki/Visual_C%2B%2B" rel="tag external" class="skill">Visual C++</a>, <a href="http://en.wikipedia.org/wiki/Sun_Studio_(software)" rel="tag external" class="skill">Sun Studio</a>, <a href="http://en.wikipedia.org/wiki/Intel_C%2B%2B_Compiler" rel="tag external" class="skill">Intel C++ compiler</a><!-- Out of date: Metrowerks CodeWarrior 7 -->.</li> <li><b>Development Tools:</b> <a href="http://en.wikipedia.org/wiki/Emacs" rel="tag external" class="skill">Emacs</a>, <a href="http://www.jetbrains.com/idea/" rel="tag external" class="skill">IntelliJ IDEA</a>, <a href="http://en.wikipedia.org/wiki/Make_(software)" rel="tag external" class="skill">make</a>, <a href="http://en.wikipedia.org/wiki/Apache_Ant" rel="tag external" class="skill">Ant</a>, <a href="http://maven.apache.org/" rel="tag external" class="skill">Maven</a>, <a href="http://en.wikipedia.org/wiki/Dbx_(debugger)" rel="tag external" class="skill">dbx</a>, <a href="http://en.wikipedia.org/wiki/GNU_Debugger" rel="tag external" class="skill">gdb</a>, <a href="http://en.wikipedia.org/wiki/Valgrind" rel="tag external" class="skill">valgrind</a>, <a href="http://en.wikipedia.org/wiki/IBM_Rational_Purify" rel="tag external" class="skill">Purify</a>, Quantify, <a href="http://en.wikipedia.org/wiki/BoundsChecker" rel="tag external" class="skill">BoundsChecker</a>, <a href="http://en.wikipedia.org/wiki/Gprof" rel="tag external" class="skill">gprof</a>, <a href="http://en.wikipedia.org/wiki/Strace" rel="tag external" class="skill">strace</a>, <a href="http://en.wikipedia.org/wiki/Truss_(Unix)" rel="tag external" class="skill">truss</a>, <a href="http://en.wikipedia.org/wiki/Wireshark" rel="tag external" class="skill">Wireshark</a>, <a href="http://en.wikipedia.org/wiki/Snoop_(software)" rel="tag external" class="skill">snoop</a>, <a href="http://en.wikipedia.org/wiki/Perforce" rel="tag external" class="skill">Perforce</a>, <a href="http://en.wikipedia.org/wiki/Concurrent_Versions_System" rel="tag external" class="skill"><abbr title="Concurrent Versions System">CVS</abbr></a>, <a href="http://en.wikipedia.org/wiki/IBM_Rational_ClearCase" rel="tag external" class="skill">ClearCase</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe" rel="tag external" class="skill">SourceSafe</a>, <a href="http://en.wikipedia.org/wiki/CppUnit" rel="tag external" class="skill">CppUnit</a>, <a href="http://junit.org/" rel="tag external" class="skill">JUnit</a>, <a href="https://code.google.com/p/mockito/" rel="tag external" class="skill">Mockito</a>, <a href="http://docs.seleniumhq.org/" rel="tag external" class="skill">Selenium</a>, tcltest.</li> <li><b>Database technology:</b> <a href="http://en.wikipedia.org/wiki/Metakit" rel="tag external" class="skill">Metakit</a>, <a href="http://en.wikipedia.org/wiki/Versant_corporation" rel="tag external" class="skill">Versant</a>, <a href="http://en.wikipedia.org/wiki/MySQL" rel="tag external" class="skill">MySQL</a>, <a href="http://en.wikipedia.org/wiki/Oracle_Database" rel="tag external" class="skill">Oracle</a>, <a href="http://en.wikipedia.org/wiki/Rogue_Wave_(company)" rel="tag external" class="skill">Rogue Wave dbtools.h++</a>.</li> <li><b>Protocols:</b> <a href="http://en.wikipedia.org/wiki/Internet_Protocol_Suite" rel="tag external" class="skill"><abbr title="Transmission Control Protocol">TCP</abbr>/<abbr title="Internet Protocol">IP</abbr></a>, <a href="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol" rel="tag external" class="skill"><abbr title="HyperText Transfer Protocol">HTTP</abbr></a>, <a href="" rel="tag external" class="skill"><abbr title="Web Distributed Authoring and Versioning">WebDAV</abbr></a>, <a href="" rel="tag external" class="skill"><abbr title="Wireless Application Protocol">WAP</abbr></a>, <a href="http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol" rel="tag external" class="skill"><abbr title="Simple Network Management Protocol">SNMP</abbr></a>, <a href="http://en.wikipedia.org/wiki/RADIUS" rel="tag external" class="skill"><abbr title="Remote Authentication Dial In User Service">RADIUS</abbr></a>, <a href="http://en.wikipedia.org/wiki/TACACS%2B"><abbr title="Terminal Access Controller Access-Control System Plus">TACACS+</abbr></a>, <a href="http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol" rel="tag external" class="skill"><abbr title="Lightweight Directory Access Protocol">LDAP</abbr></a>.</li> <li><b>Document production:</b> <a href="http://en.wikipedia.org/wiki/Doxygen" rel="tag external" class="skill">Doxygen</a>, <a href="http://en.wikipedia.org/wiki/XHTML" rel="tag external" class="skill"><abbr title="Extensible HyperText Markup Language">XHTML</abbr></a>, <a href="http://en.wikipedia.org/wiki/HTML" rel="tag external" class="skill"><abbr title="HyperText Markup Language">HTML</abbr></a>, <a href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets" rel="tag external" class="skill"><abbr title="Cascading Style Sheets">CSS</abbr></a>, <a href="http://en.wikipedia.org/wiki/Wireless_Markup_Language" rel="tag external" class="skill"><abbr title="Wireless Markup Language">WML</abbr></a>, <a href="http://en.wikipedia.org/wiki/OpenOffice.org" rel="tag external" class="skill">OpenOffice</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Word" rel="tag external" class="skill">Word</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Visio" rel="tag external" class="skill">Visio</a>, <a href="http://en.wikipedia.org/wiki/LaTeX" rel="tag external" class="skill">LaTeX</a>. <!-- Too rusty to note: troff, FrameMaker --> <!-- Obsolete: PageMaker, Ventura Publisher --> </li> <li><b>Communication skills:</b> excellent oral and written English, desktop publishing, team software development and documentation.</li> <li><b>Citizenship:</b> United States of America.</li> </ul> <h3>Work Experience</h3> <!-- In an hResume, each stretch of experience is an hCalendar event containing an hCard. Technically, I could use <a class="fn org url" href="...">Name</a> to get the name for an organization, but Operator’s hResume processing can’t figure that out. --> <table> <tr id="google" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2014-03-18">3/14</abbr> – now </td> <td> <b><a rel="external" class="url" href="http://www.google.com"><span class="org fn">Google, Inc.</span></a>, <span class="adr"> <span style="display: none"><span class="street-address">1600 Plymouth Avenue</span>,</span> <span class="locality">Mountain View</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94043</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>.</b> Google Play Services engineering productivity. Working on Android infrastructure, Bazel build macros, Python quality sensors, C++ and Go utilities. </td> </tr> <tr id="electric-commander" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2012-02-01">2/12</abbr> – <abbr class="dtstart" title="2012-03-06">3/14</abbr> </td> <!-- The hCard standards says that <object data="#max_kaehn" class="include"></object> is technically correct, but it makes the validator plotz and some browsers unhappy. <a class="include hidden" href="#max_kaehn">Max Kaehn</a> is also a possibility, but the validator doesn’t think much of it either. --> <td> <b><a rel="external" class="url" href="http://www.electric-cloud.com/"><span class="org fn">Electric Cloud, Inc.</span></a>, <span class="adr"> <span style="display: none"><span class="street-address">676 W. Maude Avenue</span>,</span> <span class="locality">Sunnyvale</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94086</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>, ElectricCommander</b> (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. </td> </tr> <tr id="electric-cloud" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2004-08-23">8/04</abbr> – <abbr class="dtend" title="2012-01-31">1/12</abbr> </td> <!-- The hCard standards says that <object data="#max_kaehn" class="include"></object> is technically correct, but it makes the validator plotz and some browsers unhappy. <a class="include hidden" href="#max_kaehn">Max Kaehn</a> is also a possibility, but the validator doesn’t think much of it either. --> <td> <b><a rel="external" class="url" href="http://www.electric-cloud.com/"><span class="org fn">Electric Cloud, Inc.</span></a>, Mountain View and then <span class="adr"> <span style="display: none"><span class="street-address">676 W. Maude Avenue</span>,</span> <span class="locality">Sunnyvale</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94086</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>, ElectricAccelerator</b> (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.</td> </tr> <tr id="efi" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2002-10">10/02</abbr> – <abbr class="dtend" title="2004-08-13">8/04</abbr> </td> <td><b><span class="fn org"><a rel="external" class="url" href="http://www.efi.com/">Electronics for Imaging</a></span>, <span class="adr"><span class="locality">Foster City</span></span>. <span class="title">Lead Software Engineer</span>.</b> 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.</td> </tr> <tr id="pico" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2000-08">8/00</abbr> – <abbr class="dtend" title="2002-04">4/02</abbr> </td> <td><b><span class="fn org">Pico Communications Inc.</span> (formerly Easent Communications), <span class="adr"><span class="locality">Cupertino</span></span>. <span class="title">Senior Staff Engineer</span>.</b> Wrote code to manage Bluetooth-to-IP gateways and providing content for WAP and HTTP clients, including a <q>man in the middle</q> 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.</td> </tr> <tr id="covia" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1998-07">7/98</abbr> – <abbr class="dtend" title="2000-07">7/00</abbr> </td> <td> <b><span class="fn org">CoVia</span> (formerly Glyphica), <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Computer Scientist</span>.</b> 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.</td> </tr> <tr id="quote.com" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1997-02">2/97</abbr> – <abbr class="dtend" title="1998-07">7/98</abbr> </td> <td> <b><a rel="external" class="url" href="http://www.quote.com/"><span class="fn org ">Quote.com, Inc.</span></a> (later acquired by <a rel="external" href="http://www.lycos.com/">Lycos</a>), Santa Clara and then <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Applications Engineer</span>.</b> 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.</td> </tr> <tr id="mpath" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1996-02">2/96</abbr> – <abbr class="dtend" title="1997-02">2/97</abbr> </td> <td> <b><span class="fn org">Mpath Interactive</span> (later HearMe), <span class="adr"><span class="locality">Cupertino</span></span>. <span class="title">Member of Technical Staff</span>.</b> Built installers that upgraded existing games to <a href="http://en.wikipedia.org/wiki/MPlayer.com" rel="external">Mplayer</a> 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.</td> </tr> <tr id="verity" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1994-07">7/94</abbr> – <abbr class="dtend" title="1996-02">2/96</abbr> </td> <td> <b><a rel="external" class="url" href="http://www.verity.com/"><span class="fn org">Verity, Inc.</span></a>, <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Software Author</span>.</b> 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 <a rel="external" href="http://www.ibiblio.org/Dave/Dr-Fun/df9612/df961220.jpg">Mac and Windows specialists</a>) 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.</td> </tr> <tr id="petnet" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1993-08">8/93</abbr> – <abbr class="dtend" title="1994-06">6/94</abbr> </td> <td><b>Consulting on the PetNet project of the <span class="fn org">Leonard X Bosack & Bette M Kruger Foundation</span></b> (based in Redmond, WA though PetNet is in the San Francisco Bay Area). <span class="role" style="display: none">Consultant</span> 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.</td> </tr> <tr id="digital_sound" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1990">1990</abbr> – <abbr class="dtend" title="1992">1992</abbr> </td> <td><b><span class="fn org">Digital Sound Corporation</span> (later PulsePoint Communications, then acquired by <a rel="external" href="http://www.unisys.com/">Unisys</a>), Santa Barbara and <span class="adr"><span class="locality">Carpentería</span></span></b> (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.</td> </tr> <tr id="lbl" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1987">1987</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td> <span class="n fn org"> <b><a rel="external" class="url organization-name" href="http://www.lbl.gov/">Lawrence Berkeley Laboratory</a>, <span class="organization-unit">Computer Graphics and Distributed Computing</span></b>, Advanced Development Projects </span>. Employed as a <span class="title">Student Assistant</span> 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.</td> </tr> </table> <h3>Education</h3> <table> <tr id="ucsb" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1989-09">1989</abbr> – <abbr class="dtend" title="1993-03">1993</abbr> </td> <td>BS in Physics from the <span class="n fn org"><a rel="external" class="organization-unit url" href="http://www.ccs.ucsb.edu/">College of Creative Studies</a> at the <a rel="external" class="organization-name" href="http://www.ucsb.edu/">University of California at Santa Barbara</a></span>; graduated March ’93.</td> </tr> <tr id="ucb" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1988">1988</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td><a rel="external" href="http://www.eecs.berkeley.edu/">Electrical Engineering and Computer Science</a> major in the <span class="n fn org"><a class="url organization-unit" rel="external" href="http://www.coe.berkeley.edu/">College of Engineering</a>, <a rel="external" class="organization-name" href="http://www.berkeley.edu/">UC Berkeley</a></span>. Completed 22 UC units via Accelerated High School Student Program (AHSSP), including full lower-division curricula in mathematics, physics, and computer science.</td> </tr> <tr id="ahs" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1985">1985</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td> <a rel="external" class="url" href="http://www.albany.k12.ca.us/ahs/"><span class="fn org">Albany High School</span></a>, <span class="adr"><span class="locality">Albany</span>, CA</span>. 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.</td> </tr> </table> <div style="clear: both; padding-top: 1em;"></div> <div class="flow"><a href="//validator.w3.org/check?uri=referer" class="sprite" rel="external" style="border:0;width:88px;height:31px;background-position:0px -80px" title="Valid XHTML 1.1"><span class="hidden">Valid XHTML 1.1</span></a></div> <div class="flow"><a href="//jigsaw.w3.org/css-validator/check/referer/" class="sprite" rel="external" style="border:0;width:88px;height:31px;background-position:-100px -80px" title="Valid CSS!" ><span class="hidden">Valid CSS</span></a></div> <div class="flow"><a href="http://www.google.com/chrome/" class="sprite" rel="external" style="border:0;width:32px;height:32px;background-position:-40px -160px" title="Get Chrome"><span class="hidden">Get Chrome</span></a></div> <div class="flow"><a href="http://www.mozilla.org/firefox?WT.mc_id=aff_en04&WT.mc_ev=click" class="sprite" rel="external" style="border:0;width:110px;height:32px;background-position:-80px -160px" title="Get Firefox!"><span class="hidden">Get Firefox!</span></a></div> <div class="flow"><a href="http://microformats.org/profile/hcard" class="sprite" title="hCard" rel="external" style="width:80px;height:15px;background-position:0px -40px;"></a></div> <div class="flow"><a href="http://microformats.org/profile/hresume" class="sprite" title="hResume" rel="external" style="width:80px;height:15px;background-position:-100px -140px;"></a></div> </body></html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head profile="http://microformats.org/profile/specs/ http://microformats.org/profile/hresume"><title>Max Rible Kaehn’s résumé</title> <link rel="stylesheet" type="text/css" href="style.css"/> <!-- Specifying UTF-8 in the HTTP headers doesn't persuade IE to use UTF-8. --> <!--[if IE]> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="ie.css" /> <![endif]--> <meta name="viewport" content="width=device-width, initial-scale=1"/> <link rel="icon" type="image/png" href="images/zonk16x16.png"/> <link rel="made" href="http://www.mithriltabby.com/"/> <script type="text/javascript" src="code.js"> <!-- Can't use <script/> because I have to be able to serve this up to Internet Exploder as text/html. --> </script> <link rel="home start contents" href="/"/> <link rel="prev" href="vocation.xhtml"/> <link rel="next" href="avocation.xhtml"/> <link rel="pronunciation" href="lexicon.xml"/> <meta name="description" content="Max Rible Kaehn’s résumé"/> </head> <body class="hresume"> <!-- hResume microformat: contact --> <!-- hCard microformat --> <div id="max_kaehn" class="contact vcard"> <h1 style="margin-bottom: 0;"> <span class="n"> <span class="honorific-prefix hidden">Mr.</span> <a class="url" rel="me" href="http://www.mithriltabby.com/"> <span class="fn"> <span class="given-name">Max</span> <span class="additional-name">Rible</span> <span class="family-name">Kaehn</span> </span> </a> <span class="nickname hidden">Slothman</span> </span> </h1> <!-- Obfuscating the email address to deter spam harvesters; this may break the Optimus microformat validator --> <p class="center" style="margin-top: 0;"><a class="email" href=" mailto: %73%6co%74%68ma%6e%40m%69%74%68r%69l%74%61bby%2e%63o%6d? ">slothman@mit<!-- mailto:abuse@hotmail.com </a> -->hriltabby.com</a></p> <div style="display: none" class="geo"> <abbr class="latitude" title="37.38200">37°22’55.0” N</abbr>, <abbr class="longitude" title="-122.02781">122°1’40.1” W</abbr> </div> <img style="display: none" class="photo" src="http://www.mithriltabby.com/images/usericon.jpeg" alt="hCard photo"/> </div> <!-- contact --> <p><b>Career Objective:</b> <span class="objective">Software architect</span>.</p> <h3>Skills</h3> <p class="summary">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).</p> <ul> <!-- rel-tags are weird in that what really matters is the last element of the path in the href, not the full target. So we link to Wikipedia for everything, instead of using http://www.tcl.tk/ for Tcl, etc. --> <li><b>Programming languages:</b> <a href="http://en.wikipedia.org/wiki/C_(programming_language)" rel="tag external" class="skill">C</a>, <a href="http://en.wikipedia.org/wiki/C%2B%2B" rel="tag external" class="skill">C++</a> (<a href="http://en.wikipedia.org/wiki/Standard_Template_Library" rel="tag external" class="skill"><abbr title="Standard Template Library">STL</abbr></a>, <a href="http://en.wikipedia.org/wiki/Boost_C%2B%2B_Libraries" rel="tag external" class="skill">Boost</a>), <a href="http://en.wikipedia.org/wiki/Java_(programming_language)" rel="tag external" class="skill">Java</a>, <a href="http://en.wikipedia.org/wiki/Tcl" rel="tag external" class="skill">Tcl</a>, <a href="http://en.wikipedia.org/wiki/JavaScript" rel="tag external" class="skill">JavaScript</a>, <a href="http://en.wikipedia.org/wiki/Perl" rel="tag external" class="skill">Perl</a>, <a href="http://en.wikipedia.org/wiki/AWK" rel="tag external" class="skill">awk</a>, <a href="http://en.wikipedia.org/wiki/Bash" rel="tag external" class="skill">bash</a>, <a href="http://en.wikipedia.org/wiki/Tcsh" rel="tag external" class="skill">tcsh</a><!-- Utterly out of date: AppleScript, Forth, Scheme, assembly -->.</li> <li><b>Operating systems:</b> <a href="http://en.wikipedia.org/wiki/Unix" rel="tag external" class="skill">Unix</a> (<a href="http://en.wikipedia.org/wiki/Linux" rel="tag external" class="skill">Linux</a>, <a href="http://en.wikipedia.org/wiki/Solaris_Operating_System" rel="tag external" class="skill">Solaris</a>, <a href="http://en.wikipedia.org/wiki/HP-UX" rel="tag external" class="skill">HP-UX</a>, <a href="http://en.wikipedia.org/wiki/AIX_operating_system" rel="tag external" class="skill">AIX</a>), <a href="http://en.wikipedia.org/wiki/Microsoft_Windows" rel="tag external">Windows</a> (<a href="http://en.wikipedia.org/wiki/Windows_3.1x" rel="tag external" class="skill">3.1</a>, <a href="http://en.wikipedia.org/wiki/Windows_95" rel="tag external" class="skill">95</a>, <a href="http://en.wikipedia.org/wiki/Windows_NT" rel="tag external" class="skill">NT</a>, <a href="http://en.wikipedia.org/wiki/Windows_2000" rel="tag external" class="skill">2000</a>, <a href="http://en.wikipedia.org/wiki/Windows_XP" rel="tag external" class="skill">XP</a>, <a href="http://en.wikipedia.org/wiki/Windows_Server_2003">2003</a>, <a href="http://en.wikipedia.org/wiki/Windows_Vista" rel="tag external" class="skill">Vista</a>, <a href="http://en.wikipedia.org/wiki/Windows_Server_2008" rel="tag external" class="skill">2008</a>; <a href="http://en.wikipedia.org/wiki/Cygwin" rel="tag external" class="skill">Cygwin</a>). 32- and 64-bit platforms. <!-- Out of date: Macintosh Systems 6-7.5, MS-DOS, UNICOS, CP/M --></li> <!-- <li><b>Web servers</b>, plug-in design: <a href="http://en.wikipedia.org/wiki/Netscape_Enterprise_Server" rel="tag external" class="skill">Netscape Enterprise Server</a> (<a href="http://en.wikipedia.org/wiki/Netscape_Server_Application_Programming_Interface" rel="tag external" class="skill"><abbr title="Netscape Server Application Programming Interface">NSAPI</abbr></a>), <a href="http://en.wikipedia.org/wiki/Internet_Information_Services" rel="tag external" class="skill">Microsoft Internet Information Server</a> (<a href="http://en.wikipedia.org/wiki/Internet_Server_Application_Programming_Interface" rel="tag external" class="skill"><abbr title="Internet Server Application Programming Interface">ISAPI</abbr></a>), <a href="http://en.wikipedia.org/wiki/Apache_HTTP_Server" rel="tag external" class="skill">Apache</a> (<a href="http://en.wikipedia.org/wiki/Apache_Tomcat" rel="tag external" class="skill">Tomcat</a>).</li> --> <li><b>Compilers:</b> <a href="http://en.wikipedia.org/wiki/GNU_Compiler_Collection" rel="tag external" class="skill">gcc</a>, <a href="http://en.wikipedia.org/wiki/Visual_C%2B%2B" rel="tag external" class="skill">Visual C++</a>, <a href="http://en.wikipedia.org/wiki/Sun_Studio_(software)" rel="tag external" class="skill">Sun Studio</a>, <a href="http://en.wikipedia.org/wiki/Intel_C%2B%2B_Compiler" rel="tag external" class="skill">Intel C++ compiler</a><!-- Out of date: Metrowerks CodeWarrior 7 -->.</li> <li><b>Development Tools:</b> <a href="http://en.wikipedia.org/wiki/Emacs" rel="tag external" class="skill">Emacs</a>, <a href="http://www.jetbrains.com/idea/" rel="tag external" class="skill">IntelliJ IDEA</a>, <a href="http://en.wikipedia.org/wiki/Make_(software)" rel="tag external" class="skill">make</a>, <a href="http://en.wikipedia.org/wiki/Apache_Ant" rel="tag external" class="skill">Ant</a>, <a href="http://maven.apache.org/" rel="tag external" class="skill">Maven</a>, <a href="http://en.wikipedia.org/wiki/Dbx_(debugger)" rel="tag external" class="skill">dbx</a>, <a href="http://en.wikipedia.org/wiki/GNU_Debugger" rel="tag external" class="skill">gdb</a>, <a href="http://en.wikipedia.org/wiki/Valgrind" rel="tag external" class="skill">valgrind</a>, <a href="http://en.wikipedia.org/wiki/IBM_Rational_Purify" rel="tag external" class="skill">Purify</a>, Quantify, <a href="http://en.wikipedia.org/wiki/BoundsChecker" rel="tag external" class="skill">BoundsChecker</a>, <a href="http://en.wikipedia.org/wiki/Gprof" rel="tag external" class="skill">gprof</a>, <a href="http://en.wikipedia.org/wiki/Strace" rel="tag external" class="skill">strace</a>, <a href="http://en.wikipedia.org/wiki/Truss_(Unix)" rel="tag external" class="skill">truss</a>, <a href="http://en.wikipedia.org/wiki/Wireshark" rel="tag external" class="skill">Wireshark</a>, <a href="http://en.wikipedia.org/wiki/Snoop_(software)" rel="tag external" class="skill">snoop</a>, <a href="http://en.wikipedia.org/wiki/Perforce" rel="tag external" class="skill">Perforce</a>, <a href="http://en.wikipedia.org/wiki/Concurrent_Versions_System" rel="tag external" class="skill"><abbr title="Concurrent Versions System">CVS</abbr></a>, <a href="http://en.wikipedia.org/wiki/IBM_Rational_ClearCase" rel="tag external" class="skill">ClearCase</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe" rel="tag external" class="skill">SourceSafe</a>, <a href="http://en.wikipedia.org/wiki/CppUnit" rel="tag external" class="skill">CppUnit</a>, <a href="http://junit.org/" rel="tag external" class="skill">JUnit</a>, <a href="https://code.google.com/p/mockito/" rel="tag external" class="skill">Mockito</a>, <a href="http://docs.seleniumhq.org/" rel="tag external" class="skill">Selenium</a>, tcltest.</li> <li><b>Database technology:</b> <a href="http://en.wikipedia.org/wiki/Metakit" rel="tag external" class="skill">Metakit</a>, <a href="http://en.wikipedia.org/wiki/Versant_corporation" rel="tag external" class="skill">Versant</a>, <a href="http://en.wikipedia.org/wiki/MySQL" rel="tag external" class="skill">MySQL</a>, <a href="http://en.wikipedia.org/wiki/Oracle_Database" rel="tag external" class="skill">Oracle</a>, <a href="http://en.wikipedia.org/wiki/Rogue_Wave_(company)" rel="tag external" class="skill">Rogue Wave dbtools.h++</a>.</li> <li><b>Protocols:</b> <a href="http://en.wikipedia.org/wiki/Internet_Protocol_Suite" rel="tag external" class="skill"><abbr title="Transmission Control Protocol">TCP</abbr>/<abbr title="Internet Protocol">IP</abbr></a>, <a href="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol" rel="tag external" class="skill"><abbr title="HyperText Transfer Protocol">HTTP</abbr></a>, <a href="" rel="tag external" class="skill"><abbr title="Web Distributed Authoring and Versioning">WebDAV</abbr></a>, <a href="" rel="tag external" class="skill"><abbr title="Wireless Application Protocol">WAP</abbr></a>, <a href="http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol" rel="tag external" class="skill"><abbr title="Simple Network Management Protocol">SNMP</abbr></a>, <a href="http://en.wikipedia.org/wiki/RADIUS" rel="tag external" class="skill"><abbr title="Remote Authentication Dial In User Service">RADIUS</abbr></a>, <a href="http://en.wikipedia.org/wiki/TACACS%2B"><abbr title="Terminal Access Controller Access-Control System Plus">TACACS+</abbr></a>, <a href="http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol" rel="tag external" class="skill"><abbr title="Lightweight Directory Access Protocol">LDAP</abbr></a>.</li> <li><b>Document production:</b> <a href="http://en.wikipedia.org/wiki/Doxygen" rel="tag external" class="skill">Doxygen</a>, <a href="http://en.wikipedia.org/wiki/XHTML" rel="tag external" class="skill"><abbr title="Extensible HyperText Markup Language">XHTML</abbr></a>, <a href="http://en.wikipedia.org/wiki/HTML" rel="tag external" class="skill"><abbr title="HyperText Markup Language">HTML</abbr></a>, <a href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets" rel="tag external" class="skill"><abbr title="Cascading Style Sheets">CSS</abbr></a>, <a href="http://en.wikipedia.org/wiki/Wireless_Markup_Language" rel="tag external" class="skill"><abbr title="Wireless Markup Language">WML</abbr></a>, <a href="http://en.wikipedia.org/wiki/OpenOffice.org" rel="tag external" class="skill">OpenOffice</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Word" rel="tag external" class="skill">Word</a>, <a href="http://en.wikipedia.org/wiki/Microsoft_Visio" rel="tag external" class="skill">Visio</a>, <a href="http://en.wikipedia.org/wiki/LaTeX" rel="tag external" class="skill">LaTeX</a>. <!-- Too rusty to note: troff, FrameMaker --> <!-- Obsolete: PageMaker, Ventura Publisher --> </li> <li><b>Communication skills:</b> excellent oral and written English, desktop publishing, team software development and documentation.</li> <li><b>Citizenship:</b> United States of America.</li> </ul> <h3>Work Experience</h3> <!-- In an hResume, each stretch of experience is an hCalendar event containing an hCard. Technically, I could use <a class="fn org url" href="...">Name</a> to get the name for an organization, but Operator’s hResume processing can’t figure that out. --> <table> <tr id="google" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2014-03-18">3/14</abbr> – now </td> <td> <b><a rel="external" class="url" href="http://www.google.com"><span class="org fn">Google, Inc.</span></a>, <span class="adr"> <span style="display: none"><span class="street-address">1600 Plymouth Avenue</span>,</span> <span class="locality">Mountain View</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94043</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>.</b> Google Play Services engineering productivity. Working on Android infrastructure, Bazel build macros, Python quality sensors, C++ and Go utilities. </td> </tr> <tr id="electric-commander" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2012-02-01">2/12</abbr> – <abbr class="dtstart" title="2012-03-06">3/14</abbr> </td> <!-- The hCard standards says that <object data="#max_kaehn" class="include"></object> is technically correct, but it makes the validator plotz and some browsers unhappy. <a class="include hidden" href="#max_kaehn">Max Kaehn</a> is also a possibility, but the validator doesn’t think much of it either. --> <td> <b><a rel="external" class="url" href="http://www.electric-cloud.com/"><span class="org fn">Electric Cloud, Inc.</span></a>, <span class="adr"> <span style="display: none"><span class="street-address">676 W. Maude Avenue</span>,</span> <span class="locality">Sunnyvale</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94086</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>, ElectricCommander</b> (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. </td> </tr> <tr id="electric-cloud" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2004-08-23">8/04</abbr> – <abbr class="dtend" title="2012-01-31">1/12</abbr> </td> <!-- The hCard standards says that <object data="#max_kaehn" class="include"></object> is technically correct, but it makes the validator plotz and some browsers unhappy. <a class="include hidden" href="#max_kaehn">Max Kaehn</a> is also a possibility, but the validator doesn’t think much of it either. --> <td> <b><a rel="external" class="url" href="http://www.electric-cloud.com/"><span class="org fn">Electric Cloud, Inc.</span></a>, Mountain View and then <span class="adr"> <span style="display: none"><span class="street-address">676 W. Maude Avenue</span>,</span> <span class="locality">Sunnyvale</span>, <abbr class="region" title="California">CA</abbr><span style="display: none">, <span class="postal-code">94086</span>, <abbr class="country-name" title="USA">USA</abbr> </span></span>. <span class="title">Senior Software Engineer</span>, ElectricAccelerator</b> (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.</td> </tr> <tr id="efi" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2002-10">10/02</abbr> – <abbr class="dtend" title="2004-08-13">8/04</abbr> </td> <td><b><span class="fn org"><a rel="external" class="url" href="http://www.efi.com/">Electronics for Imaging</a></span>, <span class="adr"><span class="locality">Foster City</span></span>. <span class="title">Lead Software Engineer</span>.</b> 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.</td> </tr> <tr id="pico" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="2000-08">8/00</abbr> – <abbr class="dtend" title="2002-04">4/02</abbr> </td> <td><b><span class="fn org">Pico Communications Inc.</span> (formerly Easent Communications), <span class="adr"><span class="locality">Cupertino</span></span>. <span class="title">Senior Staff Engineer</span>.</b> Wrote code to manage Bluetooth-to-IP gateways and providing content for WAP and HTTP clients, including a <q>man in the middle</q> 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.</td> </tr> <tr id="covia" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1998-07">7/98</abbr> – <abbr class="dtend" title="2000-07">7/00</abbr> </td> <td> <b><span class="fn org">CoVia</span> (formerly Glyphica), <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Computer Scientist</span>.</b> 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.</td> </tr> <tr id="quote.com" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1997-02">2/97</abbr> – <abbr class="dtend" title="1998-07">7/98</abbr> </td> <td> <b><a rel="external" class="url" href="http://www.quote.com/"><span class="fn org ">Quote.com, Inc.</span></a> (later acquired by <a rel="external" href="http://www.lycos.com/">Lycos</a>), Santa Clara and then <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Applications Engineer</span>.</b> 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.</td> </tr> <tr id="mpath" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1996-02">2/96</abbr> – <abbr class="dtend" title="1997-02">2/97</abbr> </td> <td> <b><span class="fn org">Mpath Interactive</span> (later HearMe), <span class="adr"><span class="locality">Cupertino</span></span>. <span class="title">Member of Technical Staff</span>.</b> Built installers that upgraded existing games to <a href="http://en.wikipedia.org/wiki/MPlayer.com" rel="external">Mplayer</a> 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.</td> </tr> <tr id="verity" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1994-07">7/94</abbr> – <abbr class="dtend" title="1996-02">2/96</abbr> </td> <td> <b><a rel="external" class="url" href="http://www.verity.com/"><span class="fn org">Verity, Inc.</span></a>, <span class="adr"><span class="locality">Mountain View</span></span>. <span class="title">Software Author</span>.</b> 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 <a rel="external" href="http://www.ibiblio.org/Dave/Dr-Fun/df9612/df961220.jpg">Mac and Windows specialists</a>) 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.</td> </tr> <tr id="petnet" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1993-08">8/93</abbr> – <abbr class="dtend" title="1994-06">6/94</abbr> </td> <td><b>Consulting on the PetNet project of the <span class="fn org">Leonard X Bosack & Bette M Kruger Foundation</span></b> (based in Redmond, WA though PetNet is in the San Francisco Bay Area). <span class="role" style="display: none">Consultant</span> 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.</td> </tr> <tr id="digital_sound" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1990">1990</abbr> – <abbr class="dtend" title="1992">1992</abbr> </td> <td><b><span class="fn org">Digital Sound Corporation</span> (later PulsePoint Communications, then acquired by <a rel="external" href="http://www.unisys.com/">Unisys</a>), Santa Barbara and <span class="adr"><span class="locality">Carpentería</span></span></b> (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.</td> </tr> <tr id="lbl" class="experience vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1987">1987</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td> <span class="n fn org"> <b><a rel="external" class="url organization-name" href="http://www.lbl.gov/">Lawrence Berkeley Laboratory</a>, <span class="organization-unit">Computer Graphics and Distributed Computing</span></b>, Advanced Development Projects </span>. Employed as a <span class="title">Student Assistant</span> 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.</td> </tr> </table> <h3>Education</h3> <table> <tr id="ucsb" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1989-09">1989</abbr> – <abbr class="dtend" title="1993-03">1993</abbr> </td> <td>BS in Physics from the <span class="n fn org"><a rel="external" class="organization-unit url" href="http://www.ccs.ucsb.edu/">College of Creative Studies</a> at the <a rel="external" class="organization-name" href="http://www.ucsb.edu/">University of California at Santa Barbara</a></span>; graduated March ’93.</td> </tr> <tr id="ucb" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1988">1988</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td><a rel="external" href="http://www.eecs.berkeley.edu/">Electrical Engineering and Computer Science</a> major in the <span class="n fn org"><a class="url organization-unit" rel="external" href="http://www.coe.berkeley.edu/">College of Engineering</a>, <a rel="external" class="organization-name" href="http://www.berkeley.edu/">UC Berkeley</a></span>. Completed 22 UC units via Accelerated High School Student Program (AHSSP), including full lower-division curricula in mathematics, physics, and computer science.</td> </tr> <tr id="ahs" class="education vevent vcard"> <td class="daterange"> <abbr class="dtstart" title="1985">1985</abbr> – <abbr class="dtend" title="1989">1989</abbr> </td> <td> <a rel="external" class="url" href="http://www.albany.k12.ca.us/ahs/"><span class="fn org">Albany High School</span></a>, <span class="adr"><span class="locality">Albany</span>, CA</span>. 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.</td> </tr> </table> <div style="clear: both; padding-top: 1em;"/> <div class="flow"><a href="//validator.w3.org/check?uri=referer" class="sprite" rel="external" style="border:0;width:88px;height:31px;background-position:0px -80px" title="Valid XHTML 1.1"><span class="hidden">Valid XHTML 1.1</span></a></div> <div class="flow"><a href="//jigsaw.w3.org/css-validator/check/referer/" class="sprite" rel="external" style="border:0;width:88px;height:31px;background-position:-100px -80px" title="Valid CSS!"><span class="hidden">Valid CSS</span></a></div> <div class="flow"><a href="http://www.google.com/chrome/" class="sprite" rel="external" style="border:0;width:32px;height:32px;background-position:-40px -160px" title="Get Chrome"><span class="hidden">Get Chrome</span></a></div> <div class="flow"><a href="http://www.mozilla.org/firefox?WT.mc_id=aff_en04&WT.mc_ev=click" class="sprite" rel="external" style="border:0;width:110px;height:32px;background-position:-80px -160px" title="Get Firefox!"><span class="hidden">Get Firefox!</span></a></div> <div class="flow"><a href="http://microformats.org/profile/hcard" class="sprite" title="hCard" rel="external" style="width:80px;height:15px;background-position:0px -40px;"/></div> <div class="flow"><a href="http://microformats.org/profile/hresume" class="sprite" title="hResume" rel="external" style="width:80px;height:15px;background-position:-100px -140px;"/></div> </body></html>
Written by Kornel Lesiński . Icons are from Tango Icon Library. Test cases include hCard Acid test by Dmitry Baranovskiy, examples from microformats.org and hCard test suite.
Source code is available under the BSD license.
¹ It's not a validator in the XML/SGML sense.