REVISION DATE:
-FEB-**
NAME: Joel Hough ADDRESS
: *** ***** **** **. ****: New Kensington
STATE:
PA ZIP: 15068 PHONE: 412-***-**** EMAIL: ******@***.*** US Citizen
RESUME:
Joel Hough
105 Ridge View Dr.
New Kensington, PA 15068
******@***.***
9/2000
- 4/2001Peak Technical Services, Inc. Pittsburgh, PA
Project Manager/Engineer
For a Hydraulic Press Feed Automation Project, I supervised implementation and
installation of $300,00+ 8-axis electromechanical automatic part feeding
system. This system fed uncured parts into hot presses to be cured. Wrote
process specification for drives and PLC software. Verified that drives,
motors, and gearboxes were specified correctly. Completed design change from a
6K8 motion controller with Digital Servo Drives to a PLC with Digital Servo
Drive/Controllers. Laid out IO for PLC Programmer and Drive Programmer. During
installation made PLC program changes and designed, implemented, and tested
electrical circuitry in the customer's enclosure. The automatic feed system
saves 30% on the cycle time over the manual feed system.
For a Cryogenic Deflashing Automation Project, I designed electrical relay
circuitry and designed, wrote, installed and debugged Omron PLC program to
automate a Cryogenics machine for deflashing of medical grade plastic parts
used in asthma inhalers.
8/2000
- 9/2000CDI Pittsburgh/PA
Embedded Application Engineer
Write responses to Independent Verification and Validation findings. Findings
consist mainly of documentation clarifications.
6/2000
- 8/2000CDI Pittsburgh/PA
PRPS Regression Analyst
Perform regression analysis on Primary Reactor Protection System (PRPS)
software. Analyzed differences in databases and versions of PLM source code for
subsystems. The differences in the databases were analyzed with a Foxpro
message structure difference program on Windows NT and a database difference
program on MS-DOS. The differences were manually analyzed for the necessary
regression testing.
6/2000
- 6/2000CDI Pittsburgh/PA
PERL Regression Script Programmer
For Primary Reactor Protection System (PRPS), wrote a PERL script, which
extracted the subsystem registry file (a list of all the source code for a
release) and the database file names from the Subsystem Software Release Record
for versions A and B of the software. Then, the script retrieved all the source
code files, which changed between the registry versions and all database files,
which changed between versions A and B of the Subsystem Software Release
Record. These files were retrieved from the Source Code Control System (SCCS).
Next, the script performed the difference of all the source code files and
formatted the results and wrote a MS-DOS script to difference some of the
database files. This process used to take about two to three hours. The script
does the task in 10 minutes.
9/1999
- PresentCDI Pittsburgh/PA
Configuration Management Engineer
Used PERL to save 50% of the time used for weekly Configuration Management
tasks. Tasks used to take 1 to 2 days, now takes = to 1 day. These tasks
included merging files to the main branch and writing a release letter listing
the modified files by order of DDTS (Distributed Defect Tracking System)
number. Discussed with Software Developers inadequacies in the Integration
Records for the DDTS. Burn CDs for Software Releases. Track down problems in
building DHG (Data Highway Gateway), Functional Processor 1, Functional
Processor 2, Tester Processor, DMS (Diverse Monitor System), and MMI
executables.
8/1998
- 8/1999CDI Pittsburgh/PA
Database Programmer
DPS Configurator (Oracle embedded SQL C program, with a subprocess program in
Ada95) Project
The Configurator program generates 134 files using embedded SQL on an Oracle
database running on Solaris 2.6 on an Ultrasparc 10. Maintainer of the code
quit, so being the only person on the team with embedded SQL and C experience,
I picked up the program. Used lint to fix type mismatches, tracked down
unclosed file pointers, added functionality for different I/O point types,
added user changeable headers to some of the output files, moved the code from
multiple user directories to one project directory, fixed incorrect link files,
added parameters for specifying database and password to the main program,
consolidated 3 separate programs (eliminating duplicate SQL queries and
improving runtime speed by 30%), helped move project into ClearCase
Configuration Management Control Software, added table for intermediate
floating point variable descriptions, modified views for changes in
functionality, and fixed bugs in the code, and trained successor.
Also, added two-language functionality for the MMI output files by modifying
Oracle tables and C code. For example, XEMACS macros were used to expand the
one language code from:
write_io_type_record (english_language_file_pointer, io_type_record_pointer);
to:
both_languages_fp_io_type_desc_engineering_units(
english_language_file_pointer, local_language_file_pointer,
io_type_record_pointer, &write_io_type_record,
&get_english_language_description, &get_local_language_description,
&get_english_language_engineering_units,
&get_local_language_engineering_units);.
Using function pointers and XEMACS macros saved 50 percent off the original
programming estimate.
9/1997
- 9/1998CDI Pittsburgh/PA
Embedded Application Programmer
Ada83 Embedded Application Code Programming and Integration Testing Project
for DPS
Write and document Ada83 code, which consists primarily of flow, temperature,
pressure alarms, voting, and discrete logic processing. Download code onto
microprocessor board using MBUG on OS-9 running on three divisions with each
division having three Motorola 68040 processors on a VME Bus communicating
between divisions using VMICs reflective memory. Change the signals to test
the code using an Iomega based IO simulator. Check code out and in of
configuration management using ClearCase, and track defects in code using
Distributed Defect Tracking System (DDTS). Occasionally, debug loose cables and
malfunctioning equipment.
9/1997
- 9/1998CDI Pittsburgh/PA
DPS Application Code Team Leader
For 100 Application Components was responsible for categorizing changes in
code as large, medium, or small and project tracking of these changes, which
were distributed to 5 Engineers including myself.
Also, I wrote a multi-color highlighted cross section of the manuals for
training new comers. The manuals consisted of the Level 4 diagrams, which were
diagrams for the entire Diverse Protection System (DPS), Level 5 data flow
diagrams, which consisted of the data flow diagrams on a component basis, the
tables for the point types (digital input, analog input, digital output,
intermediate enumeration, intermediate float, and voting), and the source code.
The point types were highlighted in unique colors and the pages of the diagrams
and manuals with the points for a single component were highlighted. This
helped the people being trained to understand the documentations relationships
to the source code as fast as possible.
4/1997
- PresentCDI Pittsburgh/PA
Software Engineer
For the Nuclear Automation Division of the Westinghouse Electric Company, LLC
client performed several key tasks for the Diverse Protection Systems
Department. These tasks are detailed in the previous work experiences.
4/1997
- 6/1997CDI Pittsburgh/PA
CASE Tool Diagram Editor
Used Software Through Pictures CASE Tool to draw data flow diagrams for
Protection Application specifications. These diagrams broke down the software
into components and were later used to verify that all the correct tags were
used in the software.
2/1997
- 3/1997Management Sciences Assoc. Process Automation Solutions &
Services Div. Pittsburgh, PA
Hardware Engineer
1. Predecessor wrote software for Metrabyte PC Data Acquisition Board was
coded to gather voltage and amperage data for single-phase electricit. I
diagnosed with oscilloscope that voltage from Rogowski coil needed amplifiued
for the data acquistioin board. Went to Radio Shack picked up a basic circuit
book, enclosures, breadboards, power supplies, op-amps, resistors, terminal
strips, and wire. I built enclosures with a circuit for high impedance and a
circuit for gain.
2/1997
- 3/1997Management Sciences Assoc. Process Automation Solutions &
Services Div. Pittsburgh, PA
Programmer
On a high speed data acquisition project Modified the single-phase program to
use three-phase electricity, and optimized the program to run ten percent
faster. This data was analyzed using Longini's patented digital signal
processing to calculate power consumption. Assembled the manual for successor
of the project. Code was written in Microsoft visual C on a Pentium PC running
DOS.
1/1997
- 1/1997Management Sciences Assoc. Process Automation Solutions &
Services Div. Pittsburgh, PA
Systems Architect
I was on the team to upgrade Washington Steel Co.'s VMS MicroVAX 3600 to VMS
Alpha 2100. After the MicroVAX 3600 had been upgraded for memory and the CPU
became the bottleneck. Three team members and myself designed the $250,000 VMS
Alpha 2100 disk mirroring and warm backup architecture for 90 processses and
the Sybase Database Engine.
12/1996
- 12/1996Management Sciences Assoc. Process Automation Solutions &
Services Div. Pittsburgh, PA
Communications Progrmmer
Used DEC's PC socket library and DEC's non-transparent communication software
to make a multi-tasking Asynchronous System Traps (interrupt driven) server
program, which allowed multiple PC's to communicate with 1 ALPHA program
simultaneously. Programs werein in VAX C and Microsoft Visual C on Windows 95.
12/1995
- 3/1997Management Sciences Associates, Process Automation Solutions
& Services Div. Pittsburgh / PA
System Management Group Leader
I was responsible for leading the team on privileges, tuning, and system
management policies for VAXs.
9/1995
- 3/1997Management Sciences Associates, Process Automation Solutions &
Services Div. Pittsburgh, PA
Software Engineer
Designed, Implemented, Debugged and Installed systems in the field. These
projects are detailed below.
9/1995
- 3/1997 Management Sciences Associates, Process Automation Solutions &
Services Div. 9-95 / 3-97 Pittsburgh / PA
Argon, Oxygen, Decarburization (AOD) Model Program
At Washington Steel Co. Client, the PHD metallurgist and the main software
developer for the project quit during the installation, and I offered to
complete the installation. I worked on the following: Differential Equation
Based AOD Model tuning, debugging crashes, adding features, fixing, heat of
formation equations, fixing mass balance equations, fixing silicon / oxidation
equations, fixing of linear program, fixing SQL which left queries open,
designing, implementing and installing code for variable feed rate and real
time monitor model, and defended AOD model against hostile operator. Program
was in FORTRAN and used Sybase SQL running on VMS 7.0.
5/1995
- 5/1995ESA, Inc. contracting for Management Sciences Associates PASS
Div. Evans City
Hardware Troubleshooter
For MicroVAX II to MicroVAX 3100 Upgrade Project added strain relief hoods to
the serial port cables and resoldered some of the loose and the broken
connections.
Analyzed that the ground connection from the line driver modem in the Melt Shop
to the line driver modem in the Chemistry Lab was missing. This resulted in
sporadic loss of data. Ground wire was added and the loss of data no longer
occurred.
5/1995
- 5/1995ESA, Inc. contracting for Management Sciences Associates PASS
Div Evans City, PA
System Manager
For the MicroVAX II to MicroVAX 3100 Upgrade Project, wrote DCL script, which
verified the tape when backing up and instructed the user that too many errors
occurred and that the tape drive needs cleaned or serviced.
Also, used Edit /FDL /script=optimize to optimize the files, because the
chemical anaylsis for one furnace would take ten seconds to write to disk while
the chemical analysis for another furnace would take over one minute to write
to a disk. After optimization, files would be updated in less than ten seconds,
with the ten seconds accounted for in modem communication time.
4/1995
- 5/1995ESA, Inc. contracting for Management Sciences Associates PASS
Div Evans City, PA
Software Engineer
For MicroVAX II to MicroVAX 3100 Upgrade Project,
changed serial ports directly attached to the MicroVAX II to Terminal Server
using system calls in VAX FORTRAN.
9/1994
- 3/1995ESA, Inc. contracting for Communications Firm Evans City, PA
Software Engineer
Remote Monitor Using Modem Project 3-95 / 3-95
Found diffeent ways for remote keyboard driven Monitor Program to be redirected
to the COM port.
GUI Prototype Project 12-94 / 2-95
This project used a modem to remotely run a monitor program using
communications over a modem. Discussed functional requirements with users.
Wrote functional requirements including GUI prototypes built from Zinc Screen
Designer and Snapshot to save and export GUI windows. Reviewed functional
requirements with users. Wrote design description, which include process
control and data flow diagrams. Wrote code using IBM C Set and Green Leaf C++
Communications Library Version 2.00. The OS/2 Presentation Manager GUI
interfering with the Executive Program caused the project to be mothballed near
completion of the first stage to pursue redirecting keyboard input and CRT
output to COM port and eliminating the use of the OS/2 Presentation Manager.
Program was written in C++ on IBM PS/2 Model 70 and IBM Gearbox running OS/2
2.11 and OS/2 Warp.
Separate Monitor and Executive Program Project
9
-94 / 11-94
Designed implemented, debugged and tested separating the Monitor Program from
the Executive Program. The Executive Program ran a channel extension system
between an IBM Mainframe and a device. For example, and IBM Mainframe may be
located in Pittsburgh, with the central tape backup in Chicago. The mainframe
would have and IBM Gearbox emulating a tape backup and the central tape backup
would have and IBM Gearbox emulating a mainframe. The two IBM Gearboxes would
send data across a communications link to accomplish the task of backing up the
mainframe to tapes.
The Monitor Program would read the device control blocks from the Executive
Program through global shared memory. These device control blocks were
displayed to the user. The Monitor Program communicated commands to the
Executive Program through Queues and Semaphores.
Initially, creating the Monitor Program executable separate from the Executive
Program executable was easy. Unfortunately, OS/2 returns a different base
address for the same global memory in both programs and the device control
blocks have relationships based on the base address. So obtuse pointer
arithmetic was used to make the Monitor Program look like it had the same base
address as the Executive Program.
8/1994
- 9/1994ESA, Inc. contracting for Westinghouse Evans City, PA
Embedded Programmer
On High Integrity Control System (HICS) Cubicles Project
Team Leader assigned development of cubicles to 6 programmers. Toward the end
of the project programmers were moving from this project to another project.
Two Test Procedure Writers (see previous project) were assigned to this
project. At this point in the project the programmers were making Functional
Change Requests (fixing bugs and making small changes). Team Leader assigned
sets of Functional Change Request to a programmer. The programmers found the
code to make the Functional Change Request, reserved the code, made the
changes, replaced the code, and unreserved the code. Also, if changes to the
I/O databases were needed the programmer found the database fields which needed
changed, reserved the database, changed the data base, and rebuilt the I/O
buffers with Datamaster. The programmer burnt the EPROMS and the EEPROMS for
the cubicle. Last, the programmer put the changes in the Composite Block
Diagrams for the procedure writer. The Composite Block Diagrams were data flow
diagrams of the analog and discrete signals associated with the cubicle.
3/1993
- 9/1994ESA, Inc contracting for Westinghouse Evans CityTest Engineer
For Test Procedure Project on High Integrity Control System, the Team Leader
assigned cubicles to each test engineer. The test engineer would write test
procedures for statically testing all of the I/O and dynamically testing
responses of dynamic elements. These elements were illustrated in the Composite
Block Diagrams. These elements included PID controllers, lag filters, lead/lag
filters, rate/lag filters, sequencers, and automatic and manual modes of
control stations. The programmers issued the Composite Block Diagrams to the
procedure writer. The procedure writer wrote procedures which tested the
functions in the Composite Block Diagrams. Initially, I was assigned the
Pressuriser Level Control Cubicle. As the project slowed down and fewer and
fewer procedure writers were necessary, I was assigned the Steam Generator
Level and the Rod Control Cubicles. Another procedure writer picked up the
work, when I was dismissed.
3/1993
- 4/1993ESA, Inc. contracting for Westinghouse Evans City, PA
Test Automation Engineer
For the Automation of Dynamic Data Analysis Project, Lotus graphs were used to
model and check the dynamic elements. The Lotus graph models for the lag filter
was completed before I arrived on the project. The graph models included
tolerances for the measured responses. I automated the Lotus Graphs by using
Lotus Macros and Foxpro. 8 Graphs a day were graphed manually. Once automated
upto 132 graphs were done in one day. Also, I used the Software Design
Description document to model the PID controller, the lead/lag filters, the
rate/lag filters and the ramps for the manual mode of control.
3/1993
- 7/1994ESA, Inc for a Manufacturing Firm Evans City, PA
Network Engineer
For Repair and Configure Sniffer Lanalyzer Project, found and straightened the
bent pin on the back of Compaq Sniffer. Entered the DECnet node addresses for
the VAXs, and Terminal Servers on the fiber optic backbone. This let the Plant
Fiber Optic Backbone Supervisor monitor, which VAXs caused the most network
traffic. Also, was on the Network Team, which recommended a Bridge to make the
fiber optic backbone into a ring, so that accidental interruption of the
fiberoptic backbone would not affect the attached computer systems.
7/1991
- 3/1993ESA, Inc. contracting for a Manufacturing Firm Evans City, PA
Systems Programmer
For the Replace Custom Indices Project, custom index code caused data
acquisition programs to hang. The source code was replaced with VAX RMS system
calls and, programs ran indefinitely and overall system performance improved.
For the Speed Display Programs Project, replaced routines, which wrote
characters to the terminal one by one with routines, which wrote the screen
with one QIO call. Programs sped up by factor of 10, and fewer resources were
used.
For the Realtime Database Load Project, the Rdb Database on the MicroVax 3100
was only updated once per week. I was not responsible for updating the
database. I was responsible for setting up the file shari