www.hms3.com - The Web Site of Howard Swope   twitter  

resume Howard Swope

Objective

Software and systems engineering is a service job. It’s about understanding the needs of the principles and the domain and providing technology services that meet those needs. More than that it is about enlightening those principles and that domain on technological possibilities to feed into their creative process. This in turn helps said principles create new and exciting things, which in turn they have engineers build (one of my favorite parts of the process). When one understands the needs of the principles and domain and creates technology systems to represent those needs, the systems almost build themselves. It is almost as if the need brings the resultant solution to life. My part in this creation is the gratification I get from my craft. But also, as an engineer, I remind myself to appreciate the rich interpersonal interactions that result from this process, which are ultimately the most important aspect.

Written Applications

Applications are listed in chronological order and are referenced in the experience section under the organizations for which they were created.

NAVTEQ - CommuteVantage Traffic Reporting Software - C++, C++ / CLI, C#, XML, XSD, XSLT, COM, ATL, DirectX, DirectShow, Gamebryo, WinForms, .Net Custom Serialization, ADO.Net, TELNET, HTTP

CommuteVantage is an application for creating traffic reports primarily for the television industry. It is employed by TV stations in most major metropolitan areas in the United States. Live traffic data is consumed as XML and exposed to the application through ADO.Net. A WinForms UI written in C# provides a designtime to the traffic producer to create a traffic report. The traffic report is displayed through a presentation / animation layer written in C++ / CLI utilizing Gamebryo gaming middleware and DirectX. On air presentation is in a full screen DirectX window. A video subsystem brings in live traffic video as frames into the 3D rendering pipeline via DirectShow with a custom Allocator / Presenter written in C++ with ATL. The application implements full undo / redo through a comprehensive command pattern. It also has document serialization implemented through custom .Net serialization. Documents are fully backward compatible across versions. 

Gigamoto Technology Partners - Pharmaceutical Insurance Coverage Campaign System - SQL Server Database, Web Service, InfoPath Client, Reporting Services, ASP.Net

This system manages campaigns to gain acceptance by health insurance providers for a given drug. The system uses SQL Server to house data, a web service written in C# for client access to the data, and a client written as an InfoPath form. Administration of the system is done through an administration web site created with ASP.Net. Reports for system data are served by SQL Server Reporting Services.

Spitz Theater Server - Windows Service - C# - .Net Remoting - COM Interop - Sockets

Spitz Theater Server is a windows service, written in C#, that provides planetarium and theater device control to various control devices. It has interfaces into system services through .Net Remoting, DCOM, and Sockets.

SpitzPlayer - C# - .Net - .Net Remoting - Windows Forms - COM Interop - C++ - ATL - COM - DirectShow - Direct 3D - Sockets

SpitzPlayer is a two part application. The server piece exposes services for playing any type of media for which there is a codec installed. It also provides control over sound devices on the local machine as well as control of a third party astronomical program through sockets. The full screen video window will fade in and out of other software that might be in the foreground to provide a seamless viewing experience. The server piece is written in C++ with the ATL and uses DCOM as its primary interface into the application. DirectShow using VMR9 with a custom allocator - presenter is used for video playback.

The client piece was written in C# with windows forms and uses COM Interop to talk to the server out of process or remotely. It provides access to all functionality of the server and manages a play list of media. All settings are stored through .Net binary serialization. The client uses .Net Remoting to talk to instances of itself to handle external launching of media to the play list.

Spitz Nomaditor (Nomad Editor) - C# - .Net - .Net Remoting - Windows Forms - COM Interop - .Net Design Time Environment

Nomaditor is an application for programming the Nomad Portable Control Console. Nomaditor provides a graphical interface for creating Nomad documents. The application is written in C# and uses COM interop to talk to Nomad. There application is comprised of four modules, an .exe to coordinate application functionality, a data .dll which houses the application's data object tree, an interface .dll which houses the application interface object tree, and a controls .dll which houses controls designed for Nomaditor's extensible controls architecture hosted in the .Net design time environment. The .Net collections based object trees of each module are exposed through .Net binary remoting.

Spitz Nomad Portable Control Console - Assembly Language - C - C++ - ATL - COM - ActiveX - XML - WIndows CE Platform Builder

The Nomad portable control console is a Windows CE 4 based, embedded, real-time device consisting of a series of tactile controls as well as a touch screen for the display of virtual controls. The tactile and virtual controls can be user mapped to control any device in a Spitz Theater. Together, an electrical engineer and I designed and built Nomad.

The software system consists of three major parts, the operating system, the driver, and the application. The operating system is a custom build of Windows CE 4 which was built with Platform Builder. Along with creating the build, OS kernel modifications were made to support interrupt processing of custom hardware. Kernel level code was written in C and Assembly Language.

The driver is a windows CE stream device driver that contains a control loop for all custom hardware, including custom motor control and A to D filtering algorithms, as well as an interface into the hardware for software applications. The driver was written in C++ and Assembly. The driver controls the following tactile controls:

  • Motorized Faders
  • Pushbutton Encoder Knobs
  • 16 Button Array of Lcd Pushbutton with 24x36 pixel readout and 12 backlight variations
  • 2 Axis Joystick with pushbutton

The application was written C++ utilizing ATL, DCOM, ActiveX controls, and uses an XML based document type. The application facilitates the layout of software controls and the mapping of the sofware and hardware controls to the hardware devices that Nomad controls.

Spitz InterAct (Presentation Node) - C++ - ATL - COM - ActiveX - MS Office Add-in - HTML Help

The InterAct system consists of a planetarium or theater populated with chairs with attached user interaction buttons. Users press buttons on their chairs in response to activities taking place in the theater. The presentation node allows show designers to create interactive PowerPoint presentations that read and display audience input in real time. The application consists of an Add-in for Microsoft PowerPoint that was written in C++ and ATL implementing the IDTExtensibility2 interface and syncing with the PowerPoint events. The add-in provides a custom menu in PowerPoint that is the central point for application organization. A suite of ActiveX controls, also written in C++ and ATL allow presentation designers to display audience input in their presentations. Worker threads in the ActiveX controls are spawned to poll user input chairs and then display their results on the active PowerPoint slide. The application has context sensitive help written in HTML help.

Spitz Intranet and Extranet - C# - ASP.Net - XHTML - ADO.Net - SQL

The Intranet is a web site application that provides internal resources to employees. The Extranet is an external site for collaboration with company partners. The sites were written XHTML compliant. Style sheets were used to maintain a common look and feel. ASP.Net and C# were used to generate XHML dynamically to form the sites' uniform navigation system. ADO.Net was used to communicate back to SQL Server databases.

BBandT Web Banking Product – Windows DNA / FS – MIFST – OFX – SQL/ODBC/ADO – HTML/ASP – VBScript / JavaScript – C++ / Java / Visual Basic – DCOM.

A web based product that provides services for Internet banking. The system uses the Microsoft Financial System Toolkit, OFX financial specification, and our DCOM based encapsulation of said technologies to provide for web based online banking. The application is a browser independent application using some small Java applets when standard HTML would not suffice. On the server side IIS along with ASP and custom active server components provide for communication with OFX middle-ware partner Intellidata as well as HTML rendering. Server side scripting was done in VBScript and client side scripting was done in JavaScript. Active Server components were written in C++ and Visual Basic.

ActiumX Project Profile - DHTML/ASP - VBScript / JScript - SQL/ODBC/RDS/ADO – C/C++/ODS API/MAPI

A web based system serving data from Microsoft SQL Server. A combination of SQL, OBDC, ADO, and RDS are used for data access. Active Server Pages (ASP), Dynamic HTML, and ActiveX are used to create the interface with a combination of VBScript and JScript. The system provides entry and viewing of past and ongoing projects in a case study format. For importing pertinent data that’s primary location is Microsoft Exchange, I wrote a SQL Server extended stored procedure with the ODS API that utilizes MAPI to query all given information from the Exchange global address list.

PNC Bank - Internet Server Log Filter - C/ Win32/ISAPI

An Internet Server API Filter Application which handles the logging features of Microsoft Internet Server. The application extends existing logging by adding user agent, referrer, and cookie information to the log file. The filter is written in C using the Win32 and Internet Server API's.

Tokai Financial Services Application Inquiry Web System - HTML/ASP - VBScript/JScript - SQL/ODBC/ADO

A web based system serving data from an IBM AS/400. A combination of SQL, ODBC, and ADO are used for data access. Active Server Pages (ASP) are used to create the interface with VBScript on the server side and JScript on the client side.

PECO / NRCG Web System - HTML/ASP - VBScript/JScript - SQL/ODBC/ADO – C/C++ - Win32/MFC

A web based system that does project, material, and inventory management. The system uses a web-based interface accessing a SQL database. Active Server Pages (ASP) are used for user interaction with VBScript on the server side and JScript on the client side. A C/C++ program using WIN32, MFC, and ODBC migrates data from a DB2 mainframe to the web based system.

HPOrders - C/C++ - Win32 / MFC - ISAPI

An Internet Server Extension application, HPOrders (heart product orders) takes order information from a web page, tallies the information and returns a confirmation request page. Upon confirmation, HPOrders emails the appropriate distributors with the pertinent order information.

WebTools - C/C++ - Win32 / MFC

A Win32 / MFC application which institutes three tools for web site management, Index Site creates an HTML file containing a tree of hyperlinks to all pages and images in a given site. Fix Local Links fixes all broken hyperlinks in a given path and outputs a text file listing links that couldn't be resolved. Change Reference changes all references to a given link to another given link within a given path.

DBTools - C/C++ - Win32 / MFC

A Win32 / MFC application which checks the validity of an NDX file (dBaseIII index file). DBTools validates the NDX header information and does a byte by byte comparison against a control index created by dBaseIII. All output is sent to a CEditView based class called CReport that provides a public, text stream member for use in the various testing routines. All test routine dialogs use a CProgress control to indicate a test's progress.

The Shaggy Dog - C/C++ - UNIX CGI

A CGI application written for the UNIX environment, the application uses an HTML form to provide a forum for threaded dialog on a given subject. Shaggy Dog is ANSI C compliant for portability.

Patents

Method and System for Adding Gadgets to a Traffic Report

  • U.S. Patent Application Serial No. 12/399,763 - Filed 3/9/2009

Method and System for Transitioning Between Views in a Traffic Report

  • U.S. Patent Application Serial No. 12/398,305 - Filed 3/5/2009
  • European Patent 10250276.2 - 1232 - Filed 5/10/2010

Traffic Display Depicting View of Traffic from within a Vehicle

  • U.S. Patent Application Serial No. 12/254,212 - Filed 10/20/2008
  • European Patent 09252236.6 - 2215 - Filed 9/21/2009

Method and System for Providing a Realistic Environment for a Traffic Report

  • U.S. Patent Application Serial No. 12/210,336 - Filed 9/15/2008
  • European Patent 09252093.1 - 2215 - Filed 8/28/2009

Published Works

1996    Windows NT 4 Workstation Unleashed      Sams Publishing

Contributing Author

1996     cc:Mail Insider     The Cobb Group

Contributing Author

Experience

October 2011 - Present     Radiate Media     Malvern, PA

Director, Broadcast Engineering

  • Collaborated on software and technical infrastructure spinoff from NAVTEQ to form Radiate Media
  • Collaborated on design and implementation of company technology infrastructure, enterprise architecture and production services architecture
  • Collaborated on broadcast software architecture
  • Directed management team of 2 and development team of 3

July 2006 - October 2011     Navteq     Malvern, PA

Manager of Engineering, Traffic Media Division

Navteq purchased Traffic.com November 2006
Promoted to Lead Engineer from Senior Software Engineer March 2008
Promoted to Manager of Engineer from Lead Engineer April 2011

  • Architected and collaborated on CommuteVantage animated traffic reporting system
  • Collaborated on Jamcast animated traffic reporting system
  • Collaborated on Nexgen animated traffic reporting system
  • Managed Broadcast Media - Team of 12

November 2005 - July 2006    Gigamoto Technology Partners, Inc.    Conshohocken, PA

Software Engineer

  • Collaborated on the SQL Server database for pharmaceutical insurance coverage campaign system
  • Collaborated on Web Service for data access for pharmaceutical insurance coverage campaign system
  • Collaborated on MS InfoPath Web Service client for pharmaceutical insurance coverage campaign system
  • Wrote Reporting Service reports for pharmaceutical insurance coverage campaign system
  • Wrote stored procedures and Reporting Service reports for iPledge system.
  • Performed maintenance and updates of ASP.Net applications
  • Designed and implemented a Windows 2003 server network consisting of a forest root, two domain trees, a child domain, ISA Server 2004, PIX firewall, Exchange Server 2003, SQL Server 2005, SharePoint Portal Server 2003, and performed the migration from the former network.

February 1999 - August 2005    Spitz, Inc.    Chadds Ford, PA

Software Engineer and Network Administrator

  • Collaborated on building and administering the Windows NT / 2000 network consisting of NT / 2000 Server, Proxy Server, Exchange Server, SQL Server, Oracle, Veritas Backup Exec, and Network Associates Total Virus Solution.
  • Collaborated on the upgrade to the network to Windows 2003 Server, ISA Server, Exchange 2003
  • Wrote Company Intranet and Extranet
  • Wrote various support applications
  • Wrote Presentation Node of the Spitz InterAct System
  • Wrote Nomad Portable Control Console
  • Wrote Nomaditor Editor for Nomad Console
  • Wrote SpitzPlayer
  • Wrote TheaterServer
  • Managed Network Operatons - Team of 2

August 1998 – November 1998     CoreTech Consulting Group      King of Prussia, PA

Senior Consultant / Developer for the Application Technologies Group
  • Consulting duties
  • Year 2000 Fixes for Citibank Corporation, NY, NY
  • For BBandT I was the senior developer for their web banking program based on CoreTech’s CoreDirect Product. Technologies employed were SQL, OFX, ADO, ASP, HTML, Java Script, VB Script, C / C++, Visual Basic, Java, MIFST, DCOM, Windows DNA – FS.

February 1997 – June 1998     Actium Technologies      Conshohocken, PA

Senior Consultant / Developer for the Internet Team
  • Consulting duties.
  • Edited Microsoft Developer Journal
  • Administered Microsoft Certified Solution Developers' Book Club
  • For Actium Corporate wrote Project Profile software for the company's Intranet. The system uses SQL, ODBC, ADO, RDS, ASP, Dynamic HTML, Active X, VBScript, JScript, C/C++, ODS API, and MAPI.
  • For PNC Bank wrote Internet Server Log Filter. This ISAPI DLL extended existing Internet Server logging by including user agent, referrer, and cookie information to the log files. The application was written in C using the Win32 and Internet Server API's.
  • For Tokai Financial Services, Inc. wrote Application Inquiry web system. The system uses ODBC, SQL, HTML, ASP, VBScript, and Java Script. In order to facilitate data access to the IBM AS/400. I became intimate with Microsoft SNA Server and general AS/400 connectivity issues.
  • For Tokai Financial Services, Inc. I co-authored a document outlining an applications architecture for distributed component based applications specific to the existing Tokai infrastructure. The document centered on my research into distributed computing, DCOM, fault tolerance, load distribution, and transaction management.
  • For PECO Energy - wrote PECO / NRCG Web based, project and material management system using C/C++, MFC, WIN32, ODBC, HTML, ASP, VBScript, and Java Script.

March 1995 – January 1999     The WellnessWeb      Villanova, PA

CIO and Programmer
  • Advise in all technical areas.
  • Write CGI and C/C++, MFC, ISAPI, and web based applications.
  • Built network domain utilizing NT Server, IIS, Exchange Server, SQL Server, Internet Locator Server, Usage Analyst Server, Index Server, and Commerce Server.

August 1996 – December 1996     Component Software      Rocky Hill, NJ

Software Engineer
  • Wrote Win32 / MFC applications.
  • Laid the groundwork for bringing Internet connectivity in-house.
  • Wrote technical articles for Component managed Cobb Group Journals.
  • Performed web and phone based technical support duties.
  • Wired new offices for phone and network.

September 1994 - October 1994     Professional Training Services      King of Prussia, PA

Consultant
  • Performed technical support, via phone, for PTS clientele.

November 1993 - June 1994     The Partnership Group, Inc.      Lansdale, PA

Network Operations Coordinator
  • Administered Novel NetWare LAN.
  • Maintained and upgraded the hardware and software of the 100+ PC network.
  • Performed in-house help desk and training duties.

August 1993 - October 1993     Elf Atochem.      King of Prussia, PA

Consultant
  • Inventoried, backed up, and upgraded the workstations at the King of Prussia site.

December 1990 - March 1993     Specialized Training Program      Eugene, OR

User Support Specialist
  • Wrote DOS applications in PASCAL.
  • Maintained and upgraded 100+ PC network.
  • Acted on the committee for new equipment purchases.
  • Gave continued training seminars on DOS, Windows, and assorted applications.
  • Performed in-house help desk duties.
  • Designed and implemented the company BBS.

March 1989 - July 1989     US Healthcare      Blue Bell, PA

Network Technician
  • Maintained and upgraded 1000+ terminal network attached to IBM mainframe.
  • Ran, connected, and repaired network cabling (twisted pair, coax, twinax).
  • Repaired and replaced defective equipment

Familiar Tools and Technologies

Operating
Environments
Development
Technologies
Development
Tools
Server
Technologies

Primary:
Windows 7
Windows 2003 Server

Secondary:
Windows 2000 Server
Windows 2000 Professional
NT Server
NT Workstation
Windows CE
Windows ME
Windows 98
Windows 95
QNX
WFW
Windows 3.1
DOS
Novel NetWare
Banyan Vines
UNIX
VMS
AS400
Mac OS
Max OSX

C / C++
C++/CLI
C#
x86 Assembly
Agile / SCRUM
UML
RUP
Win32
.Net
MFC
ATL
SQL
Java
ASP
ASP.Net
VBScript
JavaScript
HTML
DHTML
XHTML
HTML Help
Windows Help
Windows Installer
PASCAL
Visual Basic
Lingo

Visual C++
Visual C#
Platform Builder
Bounds Checker
Visio
Rational Rose
Visual Interdev
Visual J++
Visual Basic
Visual Source Safe
Installshield
Subversion
RoboHelp
MS Project
NUnit
XML Spy
UModel
Jira
GreenHopper

MS Sharepoint
MS ISA Server
MS IIS
MS Index Server
MS SQL Server
MS Exchange Server
MS Proxy Server
MS Site Server
Sybase SQL Server
MS SNA Server
Oracle
CISCO PIX

Administrative Tools:

NA Total Virus Solution
Veritas BackupExec

Education

June 2008 - Present, Villanova University, Villanova, PA

  • Focus in Computer Science and Mathematics

January 2011, NAVTEQ, Malvern, PA

  • Certified Scrum Master - Scrum Alliance Member 000118438

November 2010, NAVTEQ, Malvern, PA

  • Cultural Awareness

September 2010, NAVTEQ, Wayne, PA

  • Management Excellence

November 2009, NAVTEQ, Wayne, PA

  • Facilitating Successful Meetings

November 2009, NAVTEQ, Wayne, PA

  • Effective Presentation Skills

May 2008, NAVTEQ, Wayne, PA

  • Behavior Based Interviewing

April 2000, Pro-IV Consultants, Washington DC

  • ProIV Technical Environment

January 2000, Oracle Education Center, Berwyn, PA

  • Oracle Enterprise DBA Part 1A: Architecture and Administration

December 1999, Pro-IV Consultants, Washington, DC

  • Pro-IV Introduction to SuperLayer

February 1997, Actium Corporation, Conshohocken, PA

  • Sybase’s Fast Track to SQL Server

September 1990 - June 1992, University of Oregon, Eugene, OR

  • Focus in English Literature and Music.

September 1987 - June 1988, Drew University, Madison, NJ

  • Focus in Computer Science and Philosophy.

July 1988 - August 1988, Montgomery County Community College, Blue Bell, PA

  • Classes in Computer Science and History.

September 1981 - June 1987, Germantown Academy, Fort Washington, PA

  • Class of 1987.

References

Available upon request.

  MSDN   weather   Daily Local   fandango   food   dictionary   expedia   amazon   facebook   linked       bing - Bing