Systems & Scientific Software


Home Resume Contact Projects Publications Software

Also available in PDF or ASCII formats.


Systems & Scientific Software Web: http://danielwilliams.org
Daniel Williams Voice: (215) 885-1573
263 Forrest Avenue Email: sass@acm.org
Elkins Park, PA  19027


 

Consulting History
 
Cernium Corporation - July 2006 to December 2012

Developed video analytics software in C and C++ running on PCs running Windows and Linux as well as a family of embedded systems based on the TI DaVinci chip. This software is used as the basis for a number of different commercial products.

Developed a standalone video analytics appliance using Python and wxPython for the GUI.

Developed the "backend" server processes for a web-based portal that provides customer access and control of thousands of Internet-connected video analytics appliances. This was written in Python, used the Twisted library for networking and was deployed using Amazon Web Services (AWS) Elastic Compute Cloud (EC2), Simple Storage Service (S3), Elastic Block Storage (EBS), Simple Queuing System (SQS), SimpleDB (SDB), CloudWatch and AutoScaling products.

Developed Puppet and Python-based system administration automation to deploy and manage multiple such web-based portals, including monitoring, email, logging, package management and high-availability.

Developed miscellaneous research tools, product prototypes and pilots in C, C++, C# and Python.

Sarnoff Corporation - August 2003 to December 2005

Developed a commercial product (TerraSight 3D Visualizer) for Windows XP based on the battlespace visualization system described below for aerial video exploitation and visualization.  This included a separate application written in C# using the ESRI ArcObjects library for processing raw satellite imagery and digital elevation data into a form suitable for real time 3D rendering.

Helped develop a 3D situational awareness display for a commercial Windows application (Hawk) used for video surveillance site security using C++, C# and ActiveX.

Developed a Windows application in C++ using MFC for performing superresolution on video sequences.

Developed a Windows client application in Python using wxPython and a Linux server application in Python for genomic research (finding unique microarray probes.)

Sarnoff Corporation - September 1999 to September 2002

Developed a multithreaded, CORBA-based system on Linux PCs in C++ and Python using OpenGL for real time rendering of battlespace visualizations of massive amounts of geospatial (topography and satellite imagery) and military unit data as well as multiple video feeds from UAVs projectively textured on terrain.

Developed a parallel, distributed volume rendering application in C++ that ran on a cluster of Linux-based computers. Also wrote a high performance network-based viewer for this and other applications.

Developed a distributed suite of Windows NT server and client applications in C++ using MFC and DCOM that captured video sequences from a large array of cameras in real time to a cluster of computers for the purpose of providing a continuously variable playback view of the scene from any perspective.

Developed a Windows NT application in C++ using MFC that controlled an instrument for characterizing the shape and velocity of droplets emitted from inkjet printer heads.  The software handled calibration, driving the printer head, capturing high-speed data and analyzing and presenting the results.

Sarnoff Corporation - April 1994 to December 1998

Developed a distributed, scaleable, CORBA-based system in C++ using the X Window System, Motif, Tcl/Tk, Scheme, OpenGL, OpenInventor, Optimizer, ImageVision and Performer on SGI computers (from Octanes to 3 pipe Onyx2 InfiniteReality) for 3D stereoscopic display of theater-level battlespace visualizations across multiple, large, mosaiced projection displays.

Developed a distributed, RPC-based testbed system in C++ using the X Window System, Motif, GL, OpenGL and ImageVision on SGI workstations for applying virtual reality techniques to the task of searching very large (ten gigapixel) satellite images using a variety of input and output devices including head mounted displays.

CHI Systems - February 1994

Assisted in the design of a distributed, RPC-based software architecture for X Window System and Motif graphical user interfaces for a large telecommunications company.

An Aerospace Company - January 1994

Provided on-site training to software engineers in the X Window System, GL, OpenGL and real-time Unix programming techniques.

Martin Marietta Management & Data Systems - June 1993 to January 1994

Performed analysis and design of an architecture for a distributed human-computer interface for control of Motorola's IRIDIUM satellite telephone network using the X Window System and Motif on Sun workstations.

General Electric Management & Data Systems - July 1992 to July 1993

Developed human-computer interface software using the X Window System and Motif on Sun and Intel-based workstations to perform SQL database query and updating, electronic mail and file transfer.

General Electric Advanced Technology Lab - March 1990 to March 1992

Developed human-computer interface software for a DARPA research program applying distributed AI technology to the command and decision process on submarines.  The system ran on a network of Sun and SGI workstations.

Developed 2D and 3D visualizations of underwater acoustic propagation data using various toolkits (apE, Khoros, NCSA) and custom software using both SGI's GL and the X Window System.

Franklin Institute Futures Center - April 1989 to August 1990

Developed software for an interactive networking exhibit using IBM PS/2's running AIX using TCP/IP and the X Window System.

Environmental Tectonics Corporation - October 1986 to October 1989

Developed the following real-time, three dimensional graphics software in C using Unix on SGI workstations:

• Flight simulation and target tracking software generating out-of-the-window scenes for jet fighter pilot training.

• Simulated cockpit instrumentation using computer-generated imagery.

• Software to specify motion for and perform real-time kinematic analysis and simulation of robot-like machinery.

• Developed "walk through" package for interactive visualization of buildings and factories.

• Wrote AutoCAD translator software and AutoLISP 3D geometry creation and verification tools.

• Visualization of finite element analysis and strain gage results.

 

Employment History

Martin Marietta Orlando Aerospace - July 1982 to August 1984

As an engineer in the Computer Aided Engineering Department, evaluated and used commercial programs for mechanical design and analysis (e.g. solid modelers and finite element solvers such as SDRC IDEAS and MSC NASTRAN) and trained others to use these programs.  Wrote software to interface these programs with each other.  Also wrote a finite element solver for the analysis of incompressible solids.

 

Education

University of Pennsylvania, School of Engineering and Applied Science.

Master of Science in Computer and Information Science, December 1985.
Area of concentration : Graphics and image processing. 
Grade Point Average :  3.6/4.0.

University of Pennsylvania, School of Engineering and Applied Science. 

Bachelor of Science in Mechanical Engineering, May 1982. 
Grade Point Average :  3.9/4.0. 
Rank in Major :  1/37;  Rank in Class;  10/303.

Computing Experience
Hardware PCs, SGI (Silicon Graphics), Sun, VAX, Apollo.
Operating Systems Windows (Windows 7, XP, 2000, NT), Unix (Linux, IRIX, Solaris, SVR4).
Languages C++, C, Python, C#, Tcl/Tk, Scheme, FORTRAN, Pascal.
Other Twisted, OpenCV, Amazon Web Services (EC2, S3, EBS, SQS, SDB, IAM, CloudWatch, AutoScaling), wxPython, X Window System (including widget writing), Motif, SGI GL, OpenGL, ImageVision, OpenInventor, Performer, Optimizer, CORBA, ONC/RPC, TCP/IP, DCOM, PostScript, SQL, MFC, XML, ActiveX, ESRI ArcObjects.

Copyright (c) 2013 Systems & Scientific Software. All rights reserved.