Personal Projects
A tool for converting NellyMoser encoded FLV files to WAV.
A small X11 application that renders the
Mandelbrot Set
and lets you zoom around in it. I originally wrote this when I was
17, after seeing Arthur C. Clark on PBS.
A small Linux app that, when run, makes your machine appear to be
anywhere you specify on the internet.
A lightweight JVMPI library that will profile thread contention
points in Java code. I think I wrote this because most of the
existing "enterprise" profilers did not allow you to profile for
thread contention points, and those that did were too heavy-weight
to accurately execute high performance server apps. I'm not sure
whether this is still relevant or not.
A tool that will do a man-in-the-middle attack on SSL connections
and, if vulnerable, exploit the BasicConstraints Internet Explorer
vulnerability.
A web application that facilitates the existence of a distributed
library of books between people's homes.
Professional Projects / Resume
Summary Of Qualifications
- Languages/Libraries: Java, C, C++, PHP, Delphi, GTK+, xlib, autoconf
- Operating Systems: Linux, OpenBSD, Solaris, Windows NT
- Expert Understanding: Security, TCP, Networking, High Perforamnce Server Architecture, Asynchronous Systems
2004 Neopath Networks, Sunnyvale CA
- Developed a high performance server architecture for aggregation and logging of network events passing through a transparent router. This used HPSA and aggregation/rollup techniques to log hundreds of thousands of NFS and CIFS operations per second to a relationaldatabase.
2000-2002 Kenamea, San Francisco CA
- Developed an asynchronous SSL implementation capable of running in fixed memory, with batch RSA operation support.
- Developed an asynchronous sliding-window protocol for transactionally guaranteed once-and-only-once messaging.
- Developed a high-performance TCP connection multiplexer for supporting hundreds of thousands of concurrent connections.
- Developed a transactional high-availablity clustering solution using the SCSI-2 RESERVE/RESET primitives and Jim Gray's defend/attack protocol.
- Developed a reliable networking protocol for communication with RIM Blackberry devices over the datagram-based MOBITEX network.
- Worked on transactional logging and storage layers.
- General design and optimization of high-performance event-based server.
1999-2000 BEA WebLogic, San Francisco CA
- Worked on code for clustering access to EJBs and Servlet Session State.
- Gave clustering presentations.
- General performance optimization and bug fixing.
1998-1999 Iridian Technology, Atlanta GA
- Worked on a natural language processor for an advanced document repository.
- Wrote a parser to process the English language and tag parts of speech.
1996-1998 Penumbra Software, Atlanta GA
- Worked on SuperMojo, a 100% Pure Java IDE.
- Developed a set of GUI foundation classes before the existence of Swing.
- Developed a parser to import existing Java code into a SuperMojo project.