Sr. Software Engineer, 1998 November - 1999 July
Yahoo!
GeoCities
4499
Glencoe Ave.
Marina del Rey, CA 90292
Yahoo! GeoCities maintains one of the largest and fastest growing on-line communities on the internet. GeoCities' virtual communities are organized into themed neighborhoods. Massive visitor volume provides a substantial basis for e-commerce and advertising.
Designed and developed the Yahoo! Page Wizard, a web page creation service to help novice web publishers create new web pages. The page wizard conducts an interview with a user in the form of a questionaire, and then generates a new web page based on the answers to the interview questions and a user-chosen page style. The page wizard was implemented as a Java Servlet with a thin-client (HTML) interface.
Developed a customized Member view from the GeoCities homestead database (Informix) for the Yahoo! Page Builder service using Java, JDBC, and SQL.
Participated in the design and development of a distributed directory management service for the GeoCities File Manager based on the GeoBox infrastructure. The File Manager included a browser-based GUI (in HTML), a servlet presentation layer, plus the distributed directory management service. Supported directory operations included create, list, move, copy, rename, and remove.
Participated in the design and development of GeoBox, a distributed service deployment infrastructure, using Java and VisiBroker (CORBA). Java class archives served as the unit of deployment and distribution, including all necessary resources, e.g., images, properties files, etc. Once submitted to the archive repository, the class archives were automatically deployed to and launched from each host configured to offer the distributed services. The GeoBox infrastructure also provided automatic load balancing and fault-tolerance for the deployed distributed services.
Designed and developed a web site visitor session data repository using Java, VisiBroker (CORBA), and ObjectStore. The session repository automatically balanced visitor session load across available servers. Visitor sessions were designed to expire after a (configurable) duration of neglect. The session repository automatically reclaimed the space in the database occupied by expired sessions. The session repository process architecture optimized performance by making maximal advantage of the ObjectStore Cache Forward Architecture (CFA).
Designed and developed a facility for configuring Java systems. The configuration facility provided a flexible mechanism for locating and loading properties from properties files, including values used to configure the VisiBroker ORB and BOA, and additional system properties.
Designed and developed a facility for controlling trace (debug) logging from Java classes. The trace facility provided asynchronous logging of trace notes, and the ability to turn trace logging on and off for each Java class or package. It also provided the ability to tie the standard error and output streams to the trace log.