Kenneth Demers

Software Engineer

860 916-7518 ( C )  860 233-7695 ( H )

 

Summary

Software architect, developer with 28 years experience in the specification, design, and implementation phases of software development. Expertise includes: structured real-time highly optimized applications, embedded systems, hardware and device drivers and interfacing, object oriented design, client server system design, distributed system design, web (design and back end), security components, design patterns, database system design, operating system internals, networking, graphical user interfaces.

 

Hardware

PC based systems (including Intel’s new multicore processors in 32 and 64 bit mode), HP, SUN, and DEC workstations VME based systems; embedded HW systems; Vax computers; PDP-11 minicomputers, Interdata minicomputers; Concurrent computers; 

 

OS

Windows CE 6.0, Windows XP, Windows 2000 & 2003 (server & client), Windows NT 4.0 (server & client), Windows 98, Windows 95, Windows 3.11, DOS, Novell, UNIX (HPUX, SUN Solaris, DEC Ultrix), VAX VMS, Real Time OS’s (VxWorks, OS9000, OS9, VRTX, PSOS, RTOS, VersaDos, iRMX-386, QNX, RSX-11M and RT-11)

 

Protocols

TCP/IP, Berkley Sockets, WinSock, XML-RPC, RMI, RPC, SMTP, POP3, DECNET, HDLC, SDLC, MAP, ASYNCH, Rapid

 

Languages / Technologies

C++, C, C#, Com, Java, Java Script, HTML, ASP, JSP, XML, XSLT, Visual Basic, VBA, PASCAL, FORTRAN, PLM, PL/1, SQL, PL/SQL and numerous assembly languages

 

Development Environments - APIs

.NET, .NET Compact Framework, Intel C++ Optimizing Compiler, Intel VTune Performance Analyzer, Intel Thread Checker, Intel Thread Profiler, Open MP, Posix PThreads, Microsoft Win32 Thread API, Microsoft Enterprise Library,  Visual Studio, Borland, Visual Age Java, Vax VMS, Sun Solaris, HP-UX, Rogue Wave class libraries, MFC libraries, ATL

 

Database Software

Sql (Oracle, SyBase, and Ingres), Microsoft ODBC, DAO, and ADO, and Desktop DBA

 

Education

B.S., Education, University of Connecticut - 1970

M.S., Computer Science, University of Connecticut - 1976

MBA, University of Connecticut (1984 – 1988 42 credits completed)

 

Teaching Experience

The University of Connecticut – 1977 – taught undergraduate Computer Science courses at the West Hartford campus

 

The Hartford Graduate Center – 1983 – 1984 – taught “Robotic Systems and Control”

 

Work Experience

June 2006 – Present -  ESPN (Consultant)

Software engineer in the MIT department.  Responsibilities include:

·        Design and development of Windows CE 6.0 embedded system used for instrumented camera heads.  Supports data acquisition of multiple encoder boards (up to 12 encoders) and Fujinon and Canon lenses. Supports serial and network clients

·        Design and development of tracking system that utilizes ultra wideband RF sensors.  System used tags located on skateboards and bikes to support the “huck tower” at the 2007 summer XGames.  System used tags located in football player helmets to support player tracking graphics during the telecast of the 2007 Arena Bowl championship telecast.

·        Developing highly optimized image processing algorithms to process real time high definition video streams.  The algorithms are implemented via various state of the art programming optimization techniques including: SIMD (single instruction multiple data) tools, compiler intrinsics to support Intel MMX, SSE, SSE2, and SSE3 register usage, explicit fine grain thread control to utilize Intel’s new multicore processors, and OpenMP.

·        Evaluating state of the art Intel processors and motherboards to evaluate image process performance in regard to number of cores, L1, L2, and L3 cache size, and system front side bus speed.

 

November 2005 – June 2006 -  Accu-Time Systems (Consultant)

Software architech for a provider of workforce management terminals (time clocks).  Primary responsibilities includes developing software framework to provide VARS with a communication dll for all models of terminals.  The framework is developed in .NET 2.0.  The framework eliminates the need for VAR applications to have any knowledge of the terminal model or mode (network, serial, and/or modem) and eliminates the need for the application to poll any terminal.  The framework is scalable allowing thousands of clocks to be connected.  The framework also utilizes the Microsoft Enterprise Library for .NET 2.0.

 

November 2001 – November 2005 - SCIENTECH (Consultant)

Software developer for the SCIENTECH Connecticut office.  Primary responsibilities includes developing R*TIME applications to communicate with various new and existing devices and subsystems at the following Nuclear Power Plants: Salem, Hope Creek, Kewaunee, Three Mile Island, Millstone, Oyster Creek, Dresden, and LaSalle.

 

Software architect responsible for developing .NET2002 Visual Basic Class Library Assemble to support client-server communication for up to 500 Accu-Time System time clocks.

 

Software developer responsible for the following R*TIME application upgrade at the LaSalle Nuclear Power Plant: General Electric RCMS (Rod Control Management System).

 

Software developer responsible for the following R*TIME applications at the Dresden Nuclear Power Plant: SOE (Sequence Of Events), RPIS (Rod Position Information System) and RMP (Rod Monitoring Process).

 

Software developer responsible for the GE Exciter Modbus TCP/IP software upgrade at the Millstone Nuclear Power Plant.

 

Lead Software Engineer for the R*TIME SPDS upgrade at the Oyster Creek Nuclear Power Plant.

 

Software developer responsible for the following R*TIME applications at the Oyster Creek Nuclear Power Plant: Sequence of Alarms Recorder, Environmental Monitor, Rod Worth Minimizer, Digital Feedwater Recirculation Control System, and PowerPlex Core Model Interface.

 

Software developer responsible for the FIDMS software upgrade at the Three Mile Island Nuclear Power Plant.

 

Software developer responsible for BETA interface software upgrade performed on the R*TIME system currently operating at the Three Mile Island Nuclear Power Plant.

 

MetData – new application that communicates via TCP/IP with existing Salem Met Data hardware.  Due to vague protocol documentation, successful protocol implementation had to be reversed engineered using TCP dump analysis on the existing packet stream

 

DataLogger – new application needed to communicate with the new Salem Met Data Campbell Scientific CR10X PLC via two serial data links.

 

MetToVaxComm – new application that send R*TIME data to the existing Hope Creek Met Vax computer via a serial link.

 

Software developer responsible for installing the SPDS and MetData systems at Salem and verifying the correct operation of R*TIME and it’s associated applications that communicate with all new and existing hardware at Salem and Hope Creek.

 

Software developer responsible for supporting the ERDS Vax based computers at the NRC in Washington DC.  Helped install the latest security upgrade to the ERDS system in February 2002.

 

Software developer responsible for adding new functionality to the R*TIME Excel Add-in that allows Excel to access R*TIME functionality.  New functionality added was the results of requests from Millstone and Ginna Nuclear Power Plants

 

November 2000 – November 2001 - Lincoln Financial Group

Senior Software Architect – Projects included designing, developing, and deploying a C++ - Java bridge.  LFG is in the process of converting / rewriting their producer applications to be Web enabled.  This necessitated the ability to have existing legacy C++ Com code invoke Java methods and having new Java applications call existing legacy C++ Com code.  After a thorough industry review, I based the design on XML-RPC.  The bridge has been successfully operating in production since July.  It includes Client and Server code in the C++/Com environment and client and Server code in the Java environment.  Another project involved designing the new authorization module for Lincoln’s intranet site utilizing the Java Cryptography API.  Another project involved adding search, glossary, and Faq (frequently asked questions) components to LFG intranet site utilizing HTML and server side Com and Java Script with a SyBase database.  My current project involves designing a framework to process real time XML content provided by Screaming Media LLC.  The solution involves using XSLT to transform the XML news, weather, and stock content into HTML.

 

September 1999 – November 2000 - Westinghouse -CE Nuclear Automation (Consultant)

Software development responsible for Host / Client communication between HPUX hosts and 20 clients (14 workstations, and 6 different data acquisition systems using HP C++.  Communication is via sockets, message queues, and shared memory.

 

September 1999 – November 2000 - ABB –Advanced Technology Labs (Consultant)

Software development team leader responsible for developing the functional requirements, software specification, framework design and the implementation of the ABB FERP (Fast and Easy Robotic Programming) system.  This system allows users of ABB robots to: provide real-time closed loop control of the robots from a supervisory computer processing real time sensor data 2. program industrial robots via data specified in offline CAD/CAM systems.  Portions of the software is developed using Visual C++, MFC, and ATL Com. Other sections of the software was developed using Visual Basic and VBA.

 

November 1997 – March 1999 - Hartford Reinsurance (Consultant)

Conversion team leader and member of a large scale software development project at HartRe.  The project was HartRe’s next generation worldwide reinsurance platform.  It is an object oriented system based on “design patterns”.  As the conversion team leader, I was responsible for developing an application which used the newly designed HartRe design pattern based application framework, to transfer all existing legacy data into the new system’s database.  Software was written in Borland C++ with Rogue Wave class libraries.

 

January 1996 – November 1997 -  Woodbridge Sterling Capital (Consultant)

Information systems manager for Woodbridge Sterling capital, a NY financial corporation.  Responsible for a 75 user  Novell and Windows NT network.  Responsible for the functional and technical design of it’s corporate database used to locate and track correspondence to/from Lottery winners.  The database used was Microsoft Visual Foxpro.  I also managed and developed systems for the company based on Lotus Notes, Access, Visual Basic, and Visual C++.

 

June 1995 – January 1996 - ITT Hartford

Senior Software engineer in the Financial Analytics Group.  Lead software designer responsible for designing a distributed financial cash flow application.  This application allows cash flow simulations that required 24 hours of processing on a dedicated Sun workstation to automatically distribute their work load over 30 Sun workstations reducing their processing time to under 2 hours.  The application was developed using C++ and Unix RPC (remote procedure calls ) software.

 

1991 – June 1995 -ABB-Combustion Engineering (Consultant)

Chief software architect for the Nuplex 80+ Plant Monitoring System (Unix client-server based).  Responsibilities included overall design of system architecture (including evaluation and selection of vendors supplied software components vs. in-house developed class libraries) and object oriented software development of a distributed real time plant monitoring system utilizing a distributed database.  This system was developed in C++, using: 1. HP-UX OS on 10 distributed workstations, 2. HP RTAP real time data base (with Berkeley socket developed extensions for use in a distributed client-server environment), 3. VI Dataviews GUI to provide dynamic data visualization.

 

Software engineer on a Concurrent based Plant Monitoring Systems.  Responsibilities included developing a standardized design (for the BOP data links) to support communication with up to 48 different data acquisition systems from numerous vendors.

 

 

 

1984 – 1991 - Adaptive Automation, Inc.

Co-founder and VP of AAI, a systems integration and contract software engineering company specializing in real-time manufacturing automation systems and real-time image processing systems.  Chief architect responsible for software design, coding, debug, test, and documentation of numerous systems.

 

Primary Projects:

NASA: responsible for developing a real time robot, vision, and computer based automation laboratory.  This system was developed in C, using VMS OS on a Dec Micro Vax and OS9 OS on multiple 68030 processors.  The AAI developed image acquisition system on the 68030, communicated with the Vax in real time allowing the Vax software to perform closed loop control of an ASEA iRb-90 robot.

 

Developed specialized manufacturing automation inspection systems for customers such as the US Army, Spaulding, and Amp.  Systems were PC and VME based using specialized image processing hardware (for area and line scan cameras) and libraries of software developed by AAI to perform all aspects of the inspection system’s tasks.

 

Pfizer & Burroughs Wellcome: developed Dos based PC real time image acquisition systems using Microsoft C

 

Gerber Garment Technology: software engineer responsible for developing GGT's new generation of garment cutting machines.  These systems were developed in C, using VRTX OS on multiple Motorola 68030 processors.

 

International Fuel Cells: Lead software engineer responsible for developing software for IFC's new generation of fuel cells.  These systems were developed in PLM, using the iRMX OS on multiple Intel based processors.

 

General Electric: Software engineer responsible for developing applications for GE's factory automation system.  These systems were developed in C and SQL, using the Vax VMS and Ingres database

 

1976 – 1984 - United Technologies Research Center

Head of software development for the UTRC Factory Automation Laboratory.  Senior software engineer specializing in designing, coding, debugging, testing, and documenting of real-time data acquisition systems.  Responsible for the networking of all Vax and DEC PDP-11 minicomputers.  Designed numerous DEC operating system drivers and utilities for general UTRC use. Designed, implemented, and documented a graphics library for TEKTRONIX displays for use on DEC minicomputers.  Directed software development within the UTRC automation laboratory.  Developed software to communicate and control robots from external computers.  Designed factory automation data acquisition systems.  Developed image processing based inspection systems.