Robert's Résumé
For those who are looking for Robert’s résumé, here it is. You may either browse
it here, or click here to view or download Robert’s résumé in
PDF format, or in Microsoft Word format.
It is also highly recommended that you check out
Robert’s Interactive Project History containing
a page for every significant project Robert has done over the past 30 years. It
goes into far more detail than a short résumé can. It contains a Technology Index
to help you find projects specific to a particular technology. It also contains
a Client/Company Index to help you find projects related to a particular client
or employer.
ROBERT E. WEATHERFORD
Parastream Technologies, Inc.
Principal Engineer
With more than 30 years of experience in developing products from hardware to
application software, Mr. Weatherford has been involved in numerous commercially
successful projects. Most projects have been full life-cycle product
development. His diverse background in hardware, embedded systems, driver, and
software application development enables him to take a “big picture” view of
projects.
He is self-motivated, creative and dedicated to excellence, and strives for
highest levels of product performance. He makes use of strong and effective
debugging skills, developed over many years of experience. As Principal
Engineer, he is responsible for Parastream’s product development, production
processes, and web sites. His primary strengths are in the areas of:
- Windows Development (C++, MFC, C#, VB.NET, ATL, COM, WIN 64/32/16)
– 14 years
- Web Development (HTML, JavaScript, ASP, ASP.NET, XML, SOAP, C#,
VB.NET, PHP) – 2 years
- Hardware Development (Digital Logic, Analog, Microcontrollers,
PCB Layout) – 4 years
- Object Oriented Design
- UML Modeling
|
- Embedded Systems Development (C/C++/Asm, Linux, pSOS and others,
Digital Video and Telecom sectors) – 8 years
- Database Development (ADO.NET, MSSQL, MySQL, MS Access) –
2 years
- Networking and Communications (TCP/IP, HTTP, FTP, SNMP, LAP,
Serial Async/Sync)
- User Interface Design
- International and Accessibility Requirements
|
PROFESSIONAL EXPERIENCE
|
Dyna-Bal – Industrial Engineering & Machine Corp. (2005-Present, Contract)
Developed software application updates for the Dyna-Bal
product, which is used to perform dynamic balancing of machined parts.
The system works by capturing vibration data from pickups using an A/D
converter card and performing numeric transformations including FFT. The updates
included a new InstallShield setup and changes to logic, changes to the
user interface, a new device
driver which talks to the ISA A/D card, and an interface to a new USB
A/D hardware device. Future work will most likely include a rewrite in
MFC in Visual Studio 2008 with completely new user interface, XML data
file formats, printing and preview support. |
-
Visual C++
-
Windows Application
-
Real-time
threading
|
|
ORCHESTRA Element Manager –
EG Technology, Inc. (2005-2007, Contract)
Element Manager is a GUI for managing EGT’s MPEG encoders and their
settings in a network environment. I worked with the technical and sales
staffs to define the product. An XML-based framework was designed to
represent devices and settings so that the entire user presentation is
data driven. My concept was proven valid when EGT later added new
settings for encoder upgrades on their own, just by editing the XML
files. .NET interop classes were written to wrap the Castle Rock
database C language APIs in C# in order to develop the application in
the more productive environment of Visual C#. HTTP/1.1 protocol
interoperability issues with the encoder’s NanoWeb server were solved
using Ethereal. The application is built on the Castle Rock SNMPc
network management platform. In a subsequent contract, added support for
new encoders to the product as well as adding SNMP objects to the MIB
files and embedded Linux encoder software. Responsible for the full
life-cycle product development; 44k lines of Visual C# .NET code, 5.1k
lines of XML, 22 icons, and 11 bitmaps. |
-
Visual C# .NET 2005
-
Windows Forms
-
Threading
-
.NET Interop
|
|
Receipt Creator – LDC Direct,
Ltd. Co.
(2004, Contract)
Receipt Creator is a graphical designer for a system that prints prepaid
cards and receipts. It is similar to a forms editor that lets the user
choose from a palette of objects to place on a form, and to then
manipulate the properties and relationships of the objects. The
application supports two modes, card (fixed size) and tape (fixed width,
variable height). I worked with the client’s Director of IT Development
to specify the product. Visual Basic .NET was requested by the client
because they wanted to be able to maintain the application internally. I
was able to achieve 100% pixel accuracy between the application display
and the printout (which was a proprietary thermal printer). Responsible
for the full life-cycle product development; 14k lines of Visual Basic
.NET code, 14 character set bitmaps, 9 object icons, and 35 toolbar
bitmaps. |
-
Visual Studio .NET
-
Windows Forms
-
XML
|
-
Visual Basic .NET
-
Web Services
|
WallGen – Parastream Technologies, Inc. (2003-Present)
Developed a Windows application to generate Windows backgrounds that can
be used to identify machines and their configurations at a glance.
Responsible for the full life-cycle product development; 15k lines of
C++ code and 11 help topics. |
- Visual C++
- Windows Application
|
|
Project Publisher .NET
– Parastream Technologies,
Inc. (2002-2004)
Project Publisher .NET is a Visual Studio .NET add-in for web application
and site developers. The add-in can upload only the changed files to a
remote web server using FrontPage Server Extensions. The Visual Studio
.NET “Copy Project” command can only copy the entire project at once. I
was required to reverse-engineer most of the FrontPage Server Extensions
RPC calls and write the client side code in C# to achieve this.
Ethereal was an essential tool for
reverse-engineering and debugging protocol issues. Responsible
for the full life-cycle product development, including installer,
documentation, and on-line help, and 10k lines of Visual C# .NET code. |
- Visual Studio .NET IDE Add-In (EnvDTE)
- Web Services
- FrontPage Internals
- FrontPage Server Extensions Protocols
|
- Visual C# .NET
- Windows Forms
- Visual Studio Integrated Help
|
PagePorter – Parastream Technologies,
Inc. (2002-2004)
Developed an add-in and web forms control suite for web application developers
using Visual Studio .NET.
PagePorter provides
integration with FrontPage or conversion
of FrontPage webs into Visual Studio .NET
web projects.
Reverse-engineered many of the FrontPage configuration and metadata file
formats. Responsible for the
full life-cycle product development including installer, documentation,
on-line help,
and class library documentation; 35k lines of Visual C# .NET code and
59 help
topics. |
- Visual Studio .NET IDE Add-In (EnvDTE)
- ASP.NET
- Web Forms
- Web Services
- FrontPage Internals
|
- Visual C# .NET
- Windows Forms
- Web Custom Controls
- Visual Studio Integrated Help
|
ACommServer – Automatic Data Processing,
Inc. (2000, Contract)
Developed a Windows Server application that received incoming requests
from a database, queued and relayed the requests to an existing dialup
service and returned the results back to the database. The product was
used internally as a bridge between the new payroll web applications and
the legacy dialup processing servers. Used TAPI to access the server’s
modems. 56k lines of C++ code and a 30 page design document. |
- Visual C++
- Windows Application
- TAPI (Telephony API)
|
- MFC
- MS SQL Server
- ZMODEM File Transfer Protocol
|
Track Link – ANTEC Corporation
(1999-2001, Contract)
Track Link is a Windows application that configures and monitors
equipment in a cable TV plant over a network. I was responsible for cleaning
up and standardizing the user interface and localization into Brazilian
Portuguese. Created several custom controls to represent the real-world
devices that the application was configuring and monitoring. |
- Visual C++
- Windows Application
|
|
HRizonBuilder – Automatic Data Processing,
Inc. (1997-1999, Contract)
HRizonBuilder is an integrated development environment (IDE) for
developing Human Resources applications in ADP HRizon. I was responsible
for overall product plug-in architecture, which allows for efficient and
modular development as well as simple deployment of new features. I also
developed the Panel Editor, which is a graphical editor for creating
panels from a palette of controls such as labels and text boxes. Other
functions were developed by other team members. Contributed 117k lines
of C++ code, 50 toolbar bitmaps, 32 cursors, a 24 page code document,
and a 90 page design document. |
- Visual C++
- Windows Application
- Rogue Wave
|
- MFC
- MS SQL Server
- Plug-in Architecture
|
DHCI
– Scientific-Atlanta, Inc. (1995-1997, Contract)
Developed a Windows application that displays and configures equipment in
a broadband processing chassis over serial port or a network.
Responsible for the full life-cycle product development, including the
plug-in architecture that allowed new cards to be added by writing a
plug-in module. Created several custom controls to represent the chassis
and cards that the application was configuring. 50k lines of C++ code. |
- Visual C++
- Windows Application
- GDI
|
- MFC
- Serial Communications
- Plug-in Architecture
|
AComm.Dll – Automatic Data Processing,
Inc. (1995, 1997)
Developed a communications library for ADP’s new Windows 3.0
applications. Implemented a modem dialer, a modified ZMODEM file
transfer protocol, and a scriptable terminal emulator. 25k lines of C++
code. |
- Visual C++
- Windows DLL
- ANSI and IBM 3101 Terminal Emulation
|
- MFC
- Hayes AT Command Set
- ZMODEM File Transfer Protocol
|
Vista
– Knowledge Access International, Inc. (1993-1994, Contract)
Vista is a Windows application that is used to configure and monitor
an embedded machine vision system. The system could recognize objects
optically, based on a configuration created by the Vista application.
Responsible for the full life-cycle product development, including the
serial error-control protocol. 25k lines of C++ code. |
- Visual C++
- Windows Application
- Communications Protocol Design
|
|
Publisher’s Paintbrush, PhotoFinish,
and UltraFAX – ZSoft Corporation (1992)
Managed a group of 2 other developers to develop scanner drivers for
ZSoft’s paint and fax product lines. Converted development from pure
8086 assembler to C using a new interface. We supported over 50
different scanners from more than 20 vendors. |
- MS-DOS TSR Drivers
- 8086 assembly language
|
|
|
Set-top Boxes – Cisco Systems, Inc. (2010-Present, Contract)
Member of the tirage team responsible for working with Comcast's
Native iGuide rollout. Evaluate bug reports from the lab and field. Some
bugs are assigned to other Cisco groups for resolution. Some bugs are
fixed within our group. Others are returned to the customer with proofs
that the bug report is in the customer's code; often times we provide
suggestions for fixes. Job requires familiarity with all aspects of
set-top box design. Some new feature development. |
- Embedded
Linux
- Desktop Linux
- Clarify
|
- Embedded C/C++
- Synergy SCM
- Code Collaborator
|
Set-top Boxes – Motorola, Inc. (2007-2009, Contract)
Worked in the “Thin Client” and OCAP DVR groups. Worked on debugging
local networking of DVR content using MOCA. Developed the OCAP
platform’s device and thermal management functionality as well as
integration into SNMP. Wrote a command line API test application to aid
in unit testing as well as an example of how to use the Thermal Manager
classes. Created detailed design documentation with UML sequence, state
and class diagrams. |
- Embedded
Linux (BusyBox)
- SNMP / MIB
- Rational Rose / UML
- Red Hat Linux
- SlickEdit
|
- Embedded C/C++
- ATA / SMART
- Rational ClearCase / SCM
- CodeWarrior
|
HEMi – EG Technology, Inc.
(2007, Contract)
HEMi is a “micro-headend” built around a standard rackmount PC and
custom QAM tuner and MPEG encoder cards. I was responsible for
implementing the SNMP support, using the NetSNMP package, as well as
authoring the MIB. |
- Embedded
Linux (BusyBox)
- SNMP / MIB
|
|
QPSK Modulator – Scientific-Atlanta,
Inc.
(1997, Contract)
Member of the development team of a QPSK modulator chassis for a
broadband system. Responsible for the front panel interface code. |
- Embedded C++
- PowerPC (68302)
|
|
Hayes
V-series Smartmodem – Hayes Microcomputer Products, Inc. (1986-1991)
The Hayes V-series modems were the first to incorporate advanced features
such as error-control and compression. Developed the Dynamic Packet
Sizing algorithm, a method to reduce transmission latency of start-stop
data due to packetization. Worked with the developer of the Adaptive
Data Compression algorithm to refine and implement it. Co-developed
AutoStream (a U.S. Patent was awarded), a method to encode multiple data
channels over a single asynchronous connection. Also implemented a full
X.25 PAD, MNP Class 5 compression, and V.42bis compression. |
- Packet Assembly and Disassembly
- Communications Protocol Design
- Embedded C++
|
- X.3, X.28, X.29 standards
- Data Compression
- Z80 Assembler
|
EZ-Print – MEPCOM International,
Inc. (1982-1983)
Developed all firmware for a 40 column standalone impact printer for
point of sale applications. Responsible for all firmware engineering, including
a real-time software UART that operated one bit at a time at 9600 bps
while simultaneously servicing the printer mechanism. |
- Z80 Assembler
- Font Creation
|
- Asynchronous Serial Communications
- RS-232
|
|
RP-SM304A – Parastream Technologies, Inc.
(2002)
Developed a small circuit board that is a direct physical and electrical
replacement for an out of production part. Reverse-engineered and characterized
the original part and designed an equivalent in SOIC 4000-series CMOS
that would fit in a 40-pin DIP footprint. Responsible for the full
life-cycle product development, including a full datasheet. |
- Low-speed Digital Hardware
- OrCAD Schematic Capture
|
- 4000-series CMOS
- OrCAD PCB Layout
|
dbr
Noise Reduction System (1985)
Developed a single-ended analog noise reduction system similar to dnr,
which is a variable lowpass filter controlled by the high frequency
intensity of the source material. |
|
|
MPU-85
– Fischer-Freitas Corporation (1981, Contract)
Developed an IEEE-696 card that was 100% bus timing compatible with
the current IMASI MPU-A CPU card while running at 150% of the MPU-A
clock rate. Contemporary 8085 card designs did not faithfully reproduce
all of the 8080 bus signals or had insufficient bus drive current, and
had compatibility problems with some other IEEE-696 cards and systems. |
- Low-speed Digital Hardware
- Intel 8085
|
- LS-series TTL
- IEEE-696 (S-100) Bus
|
FM-1
– Innovative Computer Products (1977)
Developed an IEEE-696 card that contained 3KB EPROM and 1KB RAM, and
bootstrap circuitry to allow a system to run without a front panel. Also
contained a hardware non-maskable interrupt circuit (which was a
capability lacking in the 8080), and was intended to be used as a
hardware single-step or as an in-circuit emulator. |
- Low-speed Digital Hardware
- Intel 1702A and 2102
|
- LS-series TTL
- IEE-696 (S-100) Bus
|
|
DeCarlo Family Chiropractic Web Site –
Richard DeCarlo, DC, PC. (2007)
I took the original web site and reworked the framework in Microsoft
Expression Web and Visual Studio, using the .NET menu system. I brought
consistency to the layout of the pages, changed the color scheme, and
created a new banner graphic. A little bit of code was used in the
master page to implement automatic setting of the page banner from the
title. |
- Visual Studio .NET 2005
- Visual Basic .NET
|
- Expression Web 1.0
- Photoshop 7
|
Parastream Technologies Web Sites – Parastream
Technologies, Inc. (2002-Present)
I developed three web sites for Parastream Technologies which provide
corporate presence with on-line catalog and shopping, on-line
documentation, and internal corporate operations with automated order
processing. The approximately 30 database tables are operated on using
ADO.NET, C#, and stored procedures, while the business logic objects are
written in Visual Basic .NET. The PayPal IPN protocol is supported in
the backend to automatically process both download and physical orders.
The phpBB MySQL database was bridged with the SQL Server user database
to provide seamless forums and technical support. The sites were
designed with the idea in mind of offering an extensible modular web
presence as a future product. Web sites are managed using Microsoft
Visual Studio .NET, Microsoft FrontPage, and Parastream PagePorter. |
- Visual Studio .NET 2005
- Visual C# .NET
- ASP.NET 2.0
- ADO.NET 2.0
- MS SQL Server 2005
|
- FrontPage 2003
- Visual Basic .NET
- ASP
- PHP
- MySQL
|
WORK HISTORY
2002–present |
|
Owner/Principal Engineer, Parastream Technologies, Inc. |
1993–2002 |
|
Principal Engineer, Weatherford Enterprises D/B/A |
1991–1993 |
|
Project Manager, ZSoft Corporation |
1988–1991 |
|
Senior Design Engineer, Hayes Microcomputer Products, Inc. |
1986–1988 |
|
Design Engineer, Hayes Microcomputer Products, Inc. |
1982–1983 |
|
Design Engineer, MEPCOM International, Inc. |
1980–1982 |
|
Engineering Technician, MOSTEK Corporation |
1979–1980 |
|
Engineering Technician, IMSAI Manufacturing Corporation |
1978–1979 |
|
Production Test Technician, IMSAI Manufacturing Corporation |
EDUCATION
Memphis State University, Computer Science program.
PRODUCTS, PATENTS, AND PUBLICATIONS
- ORCHESTRA Element
Manager, EGT,
Inc.
- Receipt Creator, LDC
Direct, Ltd. Co.
- Parastream Project Publisher .NET, Parastream Technologies,
Inc.
- Parastream PagePorter, Parastream Technologies, Inc.
- Parastream Technologies Web Sites, Parastream Technologies,
Inc.
- Parastream WallGen,
Parastream Technologies, Inc.
- RP-SM304A, Parastream Technologies, Inc.
- ACommServer, Automatic Data Processing, Inc.
- HRizonBuilder, Automatic Data Processing, Inc.
- DHCI
Scientific-Atlanta, Inc.
- Vista,
Knowledge Access International, Inc.
- AComm.Dll, Automatic Data Processing, Inc.
- Hayes V-series Smartmodem,
Hayes Microcomputer Products, Inc.
- EZ-Print, MEPCOM International,
Inc.
- MPU-85, Fischer-Freitas Corporation
-
U.S. Patent 5,012,489: Method for sending a plurality of data channels
over a single communications line. (AutoStream)
|
|