Brian Holtz
Objective
Senior engineer in a fun smart team working in Silicon Valley to build
and deliver innovative high-quality software in a flexible
achievement-oriented
work environment for a company with a clear technological vision.
Skills
Constructive and positive team player with superb analytic and
communications
skills, specializing in architecting and implementing interfaces for
network-based services using object-oriented languages and open
networking
technologies.
- Technical Leadership
- Advise management on organizational charter and strategy;
investigate customer
experiences and requirements; evaluate competing products; investigate
relevant technologies and standards; coordinate with related product,
technology,
and standards organizations;
- Define technical requirements; propose and evaluate projects to
satisfy
requirements; estimate project schedules and staffing; create and
evaluate
architectural and UI designs and specifications; guide projects through
review by architectural and management committees;
- Implement, audit, and debug software for correctness, security,
performance,
maintainability, and testability; create and review customer
documentation;
evaluate bug reports and proposed fixes;
- Represent and evangelize projects to internal and external
customers
through
presentations, demos, and technical assistance.
- Platforms and Languages
- Linux/FreeBSD/Solaris
- recently: Java, C/C++, PHP, JavaScript, perl, SQL,
ksh/csh/sh, awk
- long ago: ML, Pascal, Modula-2, Lisp, Prolog, Fortran, BASIC,
assembly
- Technologies, Tools and Methodologies
- Apache, Tomcat, MySQL, Hadoop
- Yahoo proprietary technology: transaction replication, proxied
shared
memory, scalable entity databases, packaging
- HTML, XML, CSS, SyncML, IDL, CORBA
- RPC, sockets, ISAM
- gdb, g++/gcc, dbx, Sun Workshop
- Subversion, gmake/make, Ant, Perforce, CVS/RCS,
CodeManager/SCCS, yacc, lex
- Motif/OLIT/Xt, XView, Xlib
- Emacs, various email/word/sheet/paint/draw/presentation apps
Experience
2011 - Kabam
I now work at Kabam, so I'm not currently in the job market.
2010 - 2011: Yahoo! Open Social
- Modified Activator's Java Hadoop code to generate JSON as
intermediate format in scraping user email for suggested social contacts
- Modified Yahoo! Application Platform (YAP) web service (PHP
backend,
JavaScript client) to support event syndication across partner social
networks
- Implemented C++ event consumer to do memcache invalidation for
YAP Most-Recently-Used Apps system
- Updated YAP search web service (in use at
pulse.yahoo.com/y/apps/find) to do parallel fallback searches across
locales
- Created YQL table for YAP app search web service after modifying
web service interface to be YQL-friendly
- Maintained Invision PowerBoard PHP installation in use at
developer.yahoo.net/forum -- security fixes, more integration with
Yahoo IDs, etc.
2002 - 2009: Yahoo! Personals
Responsible for engineering efforts to detect, monitor, and
automatically defeat various kinds of attempts to abuse our service
(e.g. spam, fraudulent profiles). Responsible for SOX-compliant
integration with credit card and billing systems.
Led rearchitecting of Y! Personals mailbox system to replace NFS-based
storage with MySQL. 800K unique users/day view 3M pages/day and
send 300K msgs/day, involving 5M mailboxes containing 500GB of user
data. Launched new architecture transparently without service
interruption.
Designed/implemented live data integration with our email marketing
partners (first Digital Impact, now CheetahMail). Designed/implemented
site and data integration with our affiliate-management partner
(Commission Junction). Advised other Yahoo properties on how to
re-use my integration framework.
Designed/implemented Y! Messenger Personals search
plug-in (in JavaScript) and the web services (in PHP) that it used.
1999 - 2001 Sun: Webtop Applications
Led StarSync project (4 engineers), which built a SyncML-compliant HTTP
service (using Apache/Tomcat/JAXP) for XML-based synchronization of
folders
and documents between the SunONE Webtop and two different clients, one
for Win32/Unix using JDK1.2 and the other for PalmOS. Designed
algorithms
(three U.S. patents submitted) and XML DTD for content synchronization.
Implemented client- and server-side Java classes for change detection,
synchronization, and conflict resolution.
1993 - 1999 Sun: Desktop Technologies
Led Solaris Desktop Extensions project (5 engineers), which used Win32
& Java to add to Solaris 8 a PC Launcher (for opening apps/docs in
Win32 hw or sw emulators) and a Java media player. For Solaris 7, the
project
created an address mgr (sdtname), process mgr (sdtprocess), file
finder,
and window mgr graphical customizer. Coded sdtname and sdtprocess using
C++ and Motif.
Designed and helped implement the incorporation of ToolTalk into the
window mgr, file mgr, action system, Korn shell, & app builder of
CDE
(the Sun/HP/IBM COSE standard desktop). Authored ToolTalk
and Open Protocols (SunSoft Press, 1994). Designed and
implemented
integration of CDE file mgr with removable media (e.g. floppies, CDs)
in
Solaris 2.6.
1990 - 1993 Sun: DOE (Distributed Objects Everywhere)
Designed, implemented, and evangelized the ToolTalk interfaces adopted
for the ANSI X3H6 CASE IPC standard. Designed and evangelized TT
interfaces
incorporated into Sun's Workshop and DeskSet products. Helped implement
TT features, MT-safeness, performance, security, and bugfixing. Helped
create transition strategy from TT to DOMF (Sun's CORBA ORB).
Helped develop ToolTalk
1.0: Sun's C++-based cross-platform middleware for IPC among persistent
distributed objects. Designed and implemented remote API and message
tracing;
integrated Unix file utilities with TT persistent objects. Created ttsh
scripting shell and CoEd,
an open-source groupware editor demo.
1988 - 1990 U. of Michigan
M.S. in Artificial Intelligence, minor emphasis in software
engineering.
As an RA, developed the distributed editing engine for ShrEdit,
a MacOS groupware editor. Was a TA for introductory computer science.
1983 - 1987 U. of S. Mississippi
B.S. in Computer Science in USM Honors College, with Mathematics minor.
Patents, Publications, External Presentations
- Textual
Authenticity Detector, U.S. patent filed 2008
- mathematical analysis of grammar and lexicon to detect
frivolous text
- File
Tree
Comparator, U.S. patent 7702641 issued 2010, filed 2001
- File
Tree Conflict Processor, U.S. patent 7165248 issued 2007, filed 2001
- File
Tree
Change Reconciler, U.S. patent 7085779 issued 2006, filed 2001
- these three patents implement a variant of the lock-free
Distributed Operation Transform (dOPT) algorithm as applied to file
trees
- Graphical
Action Invocation Method, U.S patent 6433800 issued 2002, filed
1998
- extends the right-click context-menu idiom as a toolbar of drop
sites, to allow dropping "direct objects" onto any of these actions
(verbs)
- "Webtop Synchronization using Java, XML, and SyncML", JavaOne
2001
- "Desktop Solaris", Sun
Developer
Connection HQ Briefing, 1998
- ToolTalk
and Open Protocols, SunSoft Press, 1994
- "Ch. 7: ToolTalk and DeskSet Integration", in Solaris
Desktop Integration Guide, SunSoft Press, 1992