2016 – present Senior Principal Engineer
Reporting to VP of Production Engineering for Yahoo Communications business unit, responsible for reliability architecture and tools architecture for Yahoo! Mail.
2015 – 2016 Chief Architect (VP)
Based on my previous work at Quixey, promoted to Chief Architect.
Reporting to CTO, drove design and implementation of Quixey's cloud to version 4.0. As product owner, led design and development to deliver searching inside apps, rendering Deep View Cards, and Deep Linking apps for search, ads, and consumer product integrations. Product deployed in AWS in US and AliYun in China, for Android and API partners. Designed Microservices architecture based on API Gateway and Mid-Tier Services using Swagger and JSON Schema. Designed loosely-coupled architecture for offline services for content acquisition, content processing, and user data analytics. Drove end-to-end performance and latency analysis of mobile products using the cloud service. Technologies include Spark, Cassandra, Elasticsearch, Kafka, Zookeeper, AWS (S3, CloudFront CDN, EC2, Lambda, API Gateway), Java, Python, and Android. Represented engineering during investment due diligence in Series C.
2012 – 2015 System Architect
Responsible for system architecture for Quixey, B2B2C provider of mobile search, focusing on searching for apps. Took product from a Quixey 1.0 (a monolithic Python/MongoDB 1.0, serving thousands of queries per day) Quixey 2.0 using Lucene, to Quixey 3.1, a loosely-coupled architecture serving millions with SOA/Microservices, MVC, Hadoop/Mapreduce/Pig, REST, and semantic technologies. Cloud service deployed in AWS and AliYun in China.
2008 – 2012 Senior Software Architect, Xerox DocuShare Business Unit
Responsible for architecture and implementation for Xerox DocuShare Private Cloud, a re-write of the existing DocuShare Enterprise Content Manager product as a cloud service, based on a distributed services model. Designed and implemented new MVC-based UI with XML, JSON, XQuery, XSLT, Restlet, TagSoup, Freemarker, Guice. Continued to contribute to shrink-wrapped enterprise product, Xerox DocuShare [http://docushare.xerox.com].
2004 – 2008 Senior Software Architect, Xerox DocuShare Business Unit
Took over development of DocuShare Web UI, working with a group of four developers. Launched Social Computing initiative and developed Wiki and Weblog implementation for product. Made marketing presentations at industry conferences. Wrote DeXSS, an anti-XSS tool for Java (OSS).
1997 – 2004 Director of Technology for Document Messaging Platform
Responsible for overall architecture and implementation for Xerox FlowPort application server and related products. Technologies include XML, SOAP, Java, HTML, OODB, SQL, TCP/IP networking, Internet Fax, encryption and digital signatures, Windows NT/2000, Linux. Responsible for implementation of major components. From 1997-1998, managed entire organization, and 1998-1999 acting engineering manager.
1999 – 2012 Xerox representative to World-Wide Web Consortium (W3C) XForms committee
W3C Forms Working Group, chartered with developing MVC-based XML forms and applications layer for use with HTML, SVG, and other markup languages, in browsers and other devices. Xerox representative since 1999; co-chair since 2010.
1999 Xerox Pavilion at Disney EPCOT Center Innoventions
Designed and developed one of three Xerox exhibits, DocuStamp. Oversaw its development from concept and presentation, to implementation. Presented concept to Xerox marketing and advertising executives, and worked with Disney producers to refine content. Developed software components, and managed the development of deliverables from other parts of Xerox. Installed exhibit at EPCOT Center and trained support organization. Exhibit was in place 2000-2003. Patents granted.
Led a two-month rapid project to define product concepts and develop prototypes for Xerox's first COMDEX show. Led an advanced development team to produce prototypes of seven applications, and collected customer feedback. On this basis, secured $14 million funding and managed group through transition to newly-formed Xerox product division lead by Paul Ricci, which eventually became Nuance.
1996 – 2005 Xerox PARC intellectual property review committee
Evaluated invention proposals for technical and business merits, prior to patent application.
Responsible for identification, transfer, and productization of technology from Xerox PARC to Fuji Xerox. Worked with product planners and product engineers to identify related product programs and act as "evangelist" for PARC technology within Fuji Xerox, and later within Xerox.
At Xerox PARC, identified key technologies and worked as a research team member to further develop key research concepts. Transferred three technologies to Fuji Xerox: an Object Oriented Database, an embedded applications server, and a new user interface technology called "Paper User Interface." Wrote Common Lisp to C++ compiler to speed transition from Lisp-based research code to production C++ code. Co-authored papers and patents on research results, and moved to turn these results into products.
In Xerox product divisions, served as System Architect and developed the PARC concepts into an application server for digital reprographic systems. Designed DAE ("Document Applications Environment"), an object-oriented, scripting-based application server for services for embedding in copiers, printers, and scanners. Oversaw its technical development. Product shipped in Japan in January 1996, and received "top 10 new product" award from Nihon Keizei Shimbun.
Developed a compiler for an C-syntax object-oriented programming language based on generic functions. Made oral presentations in Japanese, and worked on team with Japanese programmers.
Graduate School of Education, Division of Education in Math, Science, and Technology, University of California, Berkeley, California. Designed and implemented the programming language for Boxer, an integrated computing environment for naive computer users written in Common Lisp on Symbolics and Sun computers.
Research Staff Systems Programmer, Educational Computing Group, Laboratory for Computer Science, Massachusetts Institute of Technology (Prof. Harold Abelson, Prof. Andrea diSessa, Prof. Gerald J Sussman). Drove early design of Boxer programming language. Designed and implemented new interpreter and error system for Boxer on Symbolics computers. Developed Japanese-language version of Boxer.
Assisted in initial development of computer science course and accompanying textbook for MIT Class "6.001: The Structure and Interpretation of Computer Programs" [book http://mitpress.mit.edu/sicp/, acknowledgments], now prototype for introductory computer science and engineering classes for a generation of students, internationally.
Project planning and project release stages of adaptation of MIT Logo to the Hitachi MB-6892 computer. This version of Logo was the first to use hiragana, the writing system used by Japanese children. Wrote development plan and obtained tools. Returned six months later returned to debug the work.
In 1981, Terrapin Licensed the Logo implementation I co-developed at MIT and I productized it as Terrapin Logo.
In 1984-1985, Co-developed a portable version of Logo written in C. Produced implementation for first Apple Mac. Same software was maintained by Terrapin and sold until OS9. Responsible for HCI design and implementation, graphics, data operations, development process and delivery. Product received 1988 Classroom Computer Learning award. In the 1980's, combined Logo implementations had 25% market penetration (elementary school use), according to the Wall Street Journal.
In 1983, developed Logo implementations for Commodore 64 and Commodore 264 computers. Supervised others in development of related products. Product received 1985 Software Publishers Association award.
Employee representative to the Board of Directors.
Research Staff, MIT AI Lab Logo Group. (Prof. Seymour Papert and Prof. Harold Abelson). One of the three implementors of the original Logo language for the Apple II, working in 6502 assembly code. Co-authored reference guide with Prof. Abelson. Designed and implemented a music version of Logo for use by MIT music department.
Participated in Texas Instruments 99/4 Logo development.
Augmented PDP-10 EMACS to create the first integrated editor/spelling corrector (M-$ command). Performed other EMACS maintenance after Richard Stallman moved to start GNU project.
Bachelor's degree in Computer Science and Engineering received in 1989. Graduate courses taken include core course in programming language design and computer science paper referee course. Relevant undergraduate courses include core courses in programming languages and computer systems, and computer architecture. Thesis title: Boxer: The Programming Language.
Studied Japanese language at Harvard University 1983-1985.
My MIT thesis topic, "Boxer: The Programming Language" is the subject of the first article in the first issue of the Journal of Computer-Human Interaction.
I enjoy electronics and radio projects, and have exhibited at the SF Bay Area Maker Faire for the past three years. Two of my projects have been featured on hackaday.com. I wrote a book on Internet of Things and RF/Electronics Engineering, and it sold about 5,000 copies.
I have conversation, reading, and writing ability in Japanese. I generally speak Japanese with my Japanese colleagues, in both business and social settings.
One of my haiku poems was selected from 40,000 entries for publication with 200 others in Haiku by People of the United States and Canada, published by the American Haiku Society, Haiku Canada, and Japan Air Lines. Another was selected by the Poet Laureate of Santa Clara county for publication in 2009.
"Ham Radio for Arduino and Picaxe", Newington Conn. 2003. 322pp. Editor and Author of this book on Internet of Things, Arduino, and RF and electronics engineering.
"Social Computing in the Enterprise," Gilbane Conference, San Francisco, CA 2006
"Social Computing in the Enterprise," (Xerox white paper) http://docushare.xerox.com/pdf/ds_SocialComputing-LKlotz_wp.pdf
"Xerox FlowPort and Microsoft Exchange, " L. Klotz. Microsoft Exchange and Collaboration Solutions Conference 2000, Dallas, TX, 2000.
"Bridging the Paper and Electronic Worlds: The Paper User Interface," W. Johnson, S. K. Card, H.D. Jellinek, L. Klotz, R. Rao. Proceedings of INTERCHI, 1993, ACM, April 1993.
"Xerox PARC and Fuji Xerox: Joint Projects," InterClass 1993, InterClass, Palo Alto, CA, May 1993.
"Protofoil: Storing and Finding the Information Worker's Paper Documents in an Electronic File Cabinet," R. Rao, S. K. Card, W. Johnson, L. Klotz, R. H. Trigg. Conference on Human Factors and Computing Systems Proceedings of the CHI '94 conference companion on Human factors in computing systems , ACM, April 24-28 1994, Boston United States.
"Audio Analysis VI: Cable Test," with P. Greenspun, Computer Music Journal, Spring, 1988, MIT Press.
"Education in Japan and the U.S.," Proceedings of the 1987 Japanese Association of Mathematical Scientists Suuri no Tsubasa Seminar, Yuugen Kurabu, Tokyo, Japan (1988).
"Audio Analysis VI: testinga udio cables," Greenspun, P. and Klotz, L. 1988. Computer Music Journal 12(1): 58–64
"Single-Blind Cable Test," with P. Greenspun, in The Absolute Sound, Winter 1987.
"Toolboxes: A Method for Managing Computational Tools," with D. Ploger and D. Van Couvering, U.C. Berkeley, Graduate School of Education, Boxer Group Technical Report T2 (1987).
Introduction to Terrapin Logo for the Apple Macintosh, with M. Eckenwiler, et. al., Terrapin, Inc. (1985)
"Turtles and Defense", with P. Sobalvarro, in ACM SIGART Notices, Spring, 1983.
Commodore 64 Logo Tutorial, with V. Grammar, et. al. Commodore Business Machines (1982).
Logo for the Apple II: Technical Manual, with H. Abelson. Massachusetts Institute of Technology, Artificial Intelligence Laboratory, Logo Group. (1981).