Steven Procter
stevenprocter@acm.org

Credentials

Masters of Science
Computer Science
University of California, Berkeley
Awarded 1992
Bachelor of Arts
Mathematics
University of California, Berkeley
Awarded 1987

Skills

Experience

2000-2004
Procinct Security Corporation
Senior Software Architect
Core designer and implementer of ProSentry. ProSentry is a security application which monitors Internet facing servers for changes to resources such as DNS records, service version banners, web page content, domain registration records. ProSentry also scans for common vulnerabilities. The application was developed in Java and runs on Windows, Linux and Solaris. I was responsible for much of the architecture and development of the product.

Designed and implanted an interpreter and runtime environment to run Nessus project NASL scripts using JavaCC and JJTree. Implemented a complete runtime environment. This included functions to forge, transmit and intercept packets. The system included a small amount of C code to read and write raw packets to the network. The entire system including the C code runs on Windows, Linux and Solaris.

1998-1999
Independent Consultant
Worked as an independent consultant providing expertise on network servers and security. Some projects include:
  • Worked with a client to determine how to add encryption to an existing, widely distributed application. Proposed, designed and implemented a solution using a combination of public and private key encryption algorithms. System runs on Windows NT clients and RS6000 and Sun servers.

  • Ported web portal personalization tool from NT to Solaris. System included C code and code to access data across the network. Ported and debugged the network code, fixed data presentation issues. Debugged and tuned system performance on Solaris.

1997
Narrative Communications Corporation
Architect
Independently designed and implemented a high performance web server for Solaris that streamed Narrative's proprietary data format. System was able to serve 2,000 simultaneous clients.

Enhanced, improved the performance of and reduced the size of a Java applet capible of playing Macromedia Director movies in web browsers.

1996
Interwoven, Inc.
Senior Software Engineer
Helped develop, test and tune the network portion of Interwoven's network based source code management system. Did protocol verification and compatibility testing.

1995-1996
Automation Consultants Group
Principal Architect
Designed and built the data sharing infrastructure for a distributed monitoring and control application for automated factories. Enabled different platforms such as Windows and SCO UNIX to share structured data in real time, including transient information such as motor speed and and temperature readings. The data was used to create real time status reports and graphical models of the factory.

1994-1995
Direct Network Access, Inc.
Founding Partner
Founded an Internet service provider in Berkeley. Collaborated with partners on both business and technical issues such as defining our market, creating relationships with other businesses and building the network infrastructure.

1993-1994
Real Time Solutions
Technical Project Manager and Senior Software Engineer
Worked as a software engineer, project manager and eventually technical project manager for a company which built and installed systems to manage and direct break-pack picking in large warehouses.
  • Designed, implemented and managed a team of programmers implementing a new product for company.
  • Worked with large customer to create successful and effective product. Managed the installation of and modification requests for this product. Product is still in use.
  • Designed and implemented infrastructure to build graphical interfaces for the product. System is still in use.
  • Managed the installation of several systems in warehouses.

1989-1992
University of California, Berkeley
Graduate Student, EECS
Participated in project to develop a multiple representation document editing and typesetting system. Built a graphics editor, designed and implemented low level graphics algorithms for a PostScript renderer. Helped design a framework for a collection of applications which cooperate to create a single document with many different media types. The system allowed for simultaneously editing different representations of the same data such as TeX source and WYSIWYG representation of formatted text.

Designed, implemented and documented the Nachos operating system with two other people. Nachos is widely used to teach undergraduates about operating system technology. Coauthor of "The Nachos Instructional Operating System," which won Best Paper of Conference at the 1993 winter Usenix.

Received a university wide award for my work as a TA in the computer science department's undergraduate operating systems class. The award was based on student feedback.

Open Source Projects
I designed and built an NFS server in Java. I have used the server extensively on Windows. The source code is available at;
http://www.void.org/~steven/jnfs/