Craig Russell studied applied mathematics at Harvard University (B.A. '70 - '71) and acquired practical experience working as a technician repairing mainframes with the computing power of a 1997 model laptop. His early experiences in distributed computing included building applications with CICS and DL/I and designing heterogeneous network server implementations for file, print, and communications sharing among personal computers. Craig later dealt with issues of persistent object interoperability among Smalltalk, C++, and Java and integrating object and relational databases using X/OPEN XA protocols and commercial transaction processing systems.
Craig served as the Java Chair of the Object Data Management Group and played a key role in the development of the ODMG 3.0 Java binding. For the next standard for database access from Java, the ODMG decided to support the Java Community Process as the delivery vehicle. With support from all major relational database and middleware vendors, Java Specification Request 12, Java Data Objects, was proposed in May 1999 and released in April 2002.
Concurrent with the development of the JDO standard, Craig's primary responsibility was to lead the implementation of the object-relational database engine for several Sun products, including Java Blend and Forte for Java Transparent Persistence. Craig currently is the architect for the Container Managed Persistence implementation of Sun ONE Application Server, where he deals with the reality of implementing the high-performance, specification-compliant version of the object-relational database component of the J2EE application server.