Practices
agile development and scrummy extreme programming (XP)
OO design and programming
bang-it-out-hacking
|
Programming Languages
Java, J2EE, EJB, JDBC, Servlets, JSP, JSTL, Struts/Tiles, jsr-168, JAX-RPC
Perl, mod_perl, HTML::Mason, DBI, LWP, CGI, CPAN
Apache Axis, SOAP::Lite and WSDL
Python, twisted
PHP, shell, Tcl/TK, expect
|
Software Infrastructure
Apache HTTPD 1.x and 2.0
Tomcat 3.x through 5.0
mod_perl 1.x through 2.0
JBoss 3.x
Weblogic 7.x through 8.x
|
Database Technologies
Postgres
MySQL
Oracle
Sleepycat (native and je)
ObjectStore
|
Standards and Protocols
HTTP, SOAP, XML-RPC, WebDAV/DeltaV
HTML, XML, XSLT
FTP, SMB, NFS configuration
Various mail protocols
|
Tools
Eclipse, NetBeans and vi
SQL*Plus and other SQL shells
Embarcadero ER/Studio and DBArtisan
ant, xdoclet, make, shell scripting
white boards, hand gestures, rhetorical questions
CVS, Bugzilla, RCS and subversion
Microsoft Office, Visio and OpenOffice
|
Network Infrastructure
Cisco/Linksys, 3com, Lucent/Ascend routers and switches
f5 loadbalancers
Homebrewed firewalls with BSD/ipfw and Linux/iptables
|
Operating Systems
Linux
FreeBSD
Solaris
Windows DOS/3.x/95/98/NT/2K/XP
IRIX
MacOS
|
Other
BIND, squid, cron
sendmail, qmail, ezmlm
regular expressions
awk, sed, grep, etc
|
Hardware Platforms
x86
Sparc
|
Technorati
|
Apr, 2004
-
Oct, 2024
|
http://technorati.com/
|
San Francisco, CA
|
|
Senior Architect and Director of Core Services
|
Apr, 2004
-
Oct, 2024
|
|
Innovation and Leadership
- Decoupled application and UI with service interfaces
- Virtualized services behind load balancing infrastructure
- Introduced event based data collection and publishing systems
- Integrated distributed object in-RAM caching
- Implemented HTTP connection management with reverse proxying
- Decoupled static from dynamic content serving
- Implemented web spam detection and thwarting infrastructure
- Redesigned and reimplemened crawling systems
- Developed metric collection and visualization systems
- Forecasted technology changes required and scaling needs driven by growth
- Evangelized and developed technology around key areas
- End-user identity silo solutions such as OpenID
Intellectual Property Development
- Developed and filed patent on web spam thwarting system (patent pending)
- Designed systems for high performance, smooth runtime scaling and simple operations
Operational Support
- Provided provisioning, deployment and troubleshooting documentation
- Assisted diagnostics and troubleshooting during operational intervention
Technical Uses and Accomplishments
- Java application development with JDBC, JMS, JUnit and other APIs
- Java UI development with JSP/taglibs, Velocity, Servlets, Struts, Tiles and Java i18n/l10n
- OO Perl development with mod_perl, DBI and myriad CPAN modules
- PHP, Python and Ruby script development and maintenance
- MySQL, PostgreSQL and BerkeleyDB db development, maintenance and administration
- spread, memcached and daemontools integration
|
Covalent Technologies
|
Mar, 2001
-
Mar, 2004
|
http://www.covalent.net/
|
San Francisco, CA
|
|
Senior Software Engineer/Project Team Lead
|
Feb, 2003
-
Mar, 2004
|
|
As CAM Team Lead
- Implemented portions of the infrastructure inventory system web GUI.
- Analyzed mockups for the monitoring web GUI for backend support requirements.
- Led a small team to implement web GUI for 1.0 release.
- Applied fixes to the 1.x product's web GUI and in the EJB backend.
- Co-lead on the 2.0 metric system re-design team.
- Wrote functional specifications, screen storyboards and other design materials for the 2.0 product metric system.
- Analyzed system reporting requirements and implemented prototypes.
- Designed and implemented metric grouping attribute system and problem identification system.
- Specified application transaction availability tracking system.
Technologies used included
- JSP, Servlets, Struts, Tiles, JDBC
- Entity and session EJBs (session facade pattern)
- Xdoclet, ant (including custom ant tasks)
- Tomcat 4.1.x
- JBoss 3.0.x and 3.2
- Managed infrastructure: WebLogic, Oracle, Apache and others
|
|
Senior Software Engineer/Product Lead
|
Mar, 2001
-
Feb, 2003
|
|
As CMP Product Lead
- Worked with product management to specify configurator, monitoring, alerting, process control and security requirements.
- Analyzed and scoped marketing requirements, wrote functional specifications and specified architectural elements.
- Recruited engineers, worked on estimates and project plans, facilitated workshops for QA, professional services, support personnel and technical documentors.
- Planned bug-fix schedules and releases.
- Worked with packaging and installer team on product bundles, installation utilities and product integration.
- Re-architected and refactored system for performance gains.
- Wrote version migration scripts and tests.
Technologies used included
- JSP, Servlets, Struts, Apache SOAP and Axis, JDBC, SSL
- Ant (including custom ant tasks)
- Apache HTTPD 2.0, Tomcat 3.x and 4.x with mod_jk
- SNMP (Netaphor and UCD snmpd libraries)
|
Salon.com
|
Jun, 1999
-
Jan, 2001
|
http://www.salon.com/
|
San Francisco, CA
|
|
Creation Engines CTO
|
Sep, 2000
-
Jan, 2001
|
|
Architected, designed and hired engineers for implementation of
- workflow systems
- user management and security model
- article keyword suggestion engine
- keyword <=> article relationship productivity enhancements
- template management and page component generation system
- page component staging, transformation, queuing and deployment system
- content re-use and syndication system
Collaborated on
- financial modeling
- business plans
- marketing/sales plans
Traveled on-site for
- investment meetings
- customer demos and technology discussions
|
|
Software and Network Systems Manager
|
Nov, 1999
-
Sep, 2000
|
|
Performed integration, maintenance and troubleshooting for a variety of products such as
- WebCrossing
- Accrue
- RealMedia Open AdStream
- Oracle 8.0/8i
Application development, designed, developed and implemented
- polling system
- content delivery for AvantGo and other wireless/PDA target devices
- traffic tracking systems using mod_perl and PHP (MySQL back-ended)
- server farm content population system
- reporting systems
- prototyped re-built mod_perl applications as Java servlets
- load distribution system
Architected, designed, developed and implemented replacement CMS
- integrated a widely used templating system, HTML::Mason (eliminated use of Apache::Registry)
- Oracle 8i schema
- managed team of engineers dedicated to the implementation
- object oriented class hierarchy
- business logic API provided
|
|
Software Engineer
|
Jun, 1999
-
Nov, 1999
|
|
- content syndication/subscription systems
- cryptographically secure cookie based access controls
- SSL authentication
- Apache builds, Perl library maintenance
|
Gamespot.com/ZDNet
|
Feb, 1996
-
Jun, 1999
|
http://www.gamespot.com/
|
San Francisco, CA
|
|
Director of Technology
|
Feb, 1996
-
Jun, 1999
|
|
Set up systems for
- Web servers that delivered upto 2M pageviews day (IRIX/SGI and FreeBSD/Intel)
- farm of FTP servers that supported upto 800 simultaneous downloaders each (2400 in aggregate) (FreeBSD/Intel)
- staging servers for content development and QA
- Oracle, MySQL and other RDBMS installations
- Squid caching web servers
- mod_perl servers
- PHP and server side include components
Performed setup and systems/network administration for
- e-mail (sendmail, qmail and listserv)
- DNS
- NT LAN, samba servers, printers, file servers
- network equipment: routers, switches and hubs
- desktop hardware and software support
|
San Francisco State University
|
Jun, 1997
-
Dec, 2002
|
http://msp.sfsu.edu/
|
San Francisco, CA
|
|
Instructor (part time)
|
Jun, 1997
-
Dec, 2002
|
|
Courses offered
- CGI Programming with Perl
- Installation and Management of Apache Webservers
- Advanced Perl
Setup and tracked
- set up and maintained Unix system for class use
- student accounts
- online curriculum notes
- student assignments
|
Taos Mountain Software
|
Nov, 1995
-
Feb, 1996
|
http://www.taos.com/
|
San Francisco, CA
|
|
Contractor
Contracts:
Oracle Corporation (Server Technologies Group)
|
Nov, 1995
-
Feb, 1996
|
http://www.oracle.com/
|
Redwood Shores, CA
|
Systems Administrator
|
Nov, 1995
-
Feb, 1996
|
Performed
- maintenance of SparcStations, mostly 10s and 20s including CDDI cards, disk drives, CPUs and ethernet
- SunOS 4.13 systems and installations
- Solaris 2.4 systems and installations
- back-ups and restorations, NCD, print and file server troubleshooting
- migrations from SunOS to Solaris
- developed a "upgrade automation" server
|
|
-
|
|
|
The Well
|
Oct, 1994
-
Aug, 1995
|
http://www.well.com/
|
Sausalito, CA
|
|
System tools and user support
|
Oct, 1994
-
Aug, 1995
|
|
- hosted Web pages
- Macintosh and MS-Windows 3.x/95/NT connectivity (serial dial-up and PPP
- conferencing system use
- founder of the Java and VRML conferences (1996)
- Performed QA for customer software bundle development
|
|
additional job history available upon request
|
Exchanging Objects and Messages With SOAP
|
O'Reilly Open Source Conference
(Jul 23, 2002)
|
|
An in depth web services tutorial using example code in Java (Apache Axis)
and Perl (SOAP::Lite)
|
Industrial Strength Web Publishing
|
O'Reilly Open Source Conference
(Jul 20, 2000)
|
|
A discussion of open source tools to fulfill high volume content management
and web publishing requirements.
|
Web Server Load Balancing
|
O'Reilly Open Source Conference
(Aug 23, 1999)
|
|
A review of scalability challenges and solutions as well as a comparative
overview of load balancing technologies.
|
Know You Audience: Logging and Tracking
|
ThunderLizard Apache Summit
(Jul 22, 1999)
|
|
A technical overview of web traffic analytic challenges and solutions,
general and specific to the Apache web server.
|
Extending Apache: Modules and More
|
ThunderLizard Apache Summit
(Jul 23, 1999)
|
|
A demonstration of the Apache httpd server's extensibility and open
architecture.
|