Professional Experience
Firmware Engineer Level IV, International Game Technology - Systems Division, Las Vegas, Nevada.
May 2000 - July 2007.
Primary responsibilities as a Firmware Engineer included the project development, project design, code development and
installation of touch screen casino player tracking firmware and hardware.
Completed software development and system integration on an interactive touch screen Player Tracking device based on an ARM
processor with a WinCE RTOS using C and C++. Developed and verified PXA270 on chip peripheral interfaces, integrated new
features as well as porting of existing code from on an earlier iteration of the device, which also ran a multithreaded application on a
WinCE RTOS.
Completed a firmware enhancement on an 8051 controller based player tracking unit written in Assembly to add a cashless feature
incorporating smart card technology with secure authentication and communication for monetary transactions with gaming machines
and using a proprietary communication protocol.
Wrote a firmware upgrade in C for an Intel 80296 based product by analyzing and bridging between an overseas regulatory protocol
and Gaming Control Board (GCB) protocol, also upgraded the software power management and communication modules on a PIC
processer on the same hardware.
Designed and wrote a production test application using C++ for testing and recording failure conditions during final assembly and
testing of player tracking units.
Part of a team that authored a game security device patent: US patent 6641484.
Software QA Engineer, Bally Gaming, Las Vegas, Nevada.
November 1998 - April 2000.
Developed regression test software and hardware equipment, to test video game machine accounting and functionality using a
scripted language. The automated testing carried out verification of pay table accuracy, game functionality and system
communication for event messages.
Firmware Engineer, Hubbell Industrial Controls Madison, Ohio.
January 1997 - October 1998.
Developed firmware to monitor power quality on a Transfer switch control device written in assembly using a Microchip PIC
processor. The device used signal phase and amplitude difference to monitor both preferred and emergency power sources on a 3
phase or single phase system that enabled dependable transfer of power between the two sources during out of parameter
frequency (@ 50, 60, 400 Hz) or voltage level fluctuations(110-415 volts). Developed and documented test scenarios such as
testing under different environmental conditions, and documented the results as required for UL certification of the transfer switch.
Redesigned and enhanced a fire pump controller utilizing state machine methodology to add additional functionality for onsite fault
analysis.
Technical Experience:
Processor: Intel 8051/8032, Intel PXA 270, Intel 296, PIC 17/18.
Languages: ANSI C, C++, Assembly Language.
IDE/Development tools: Embedded Visual C++, Platform Builder, Visual Studio 2005, Keil micro-Vision, IAR embedded Workbench,
Borland Codewright, Microchip MpLab IDE.
Tools: Metalink PE, MPLab ICE In circuit emulators, logic analyzer, multi-meter, protocol analyzer, oscilloscopes.
Software: Microsoft Office 2003/2007, PVCS version manager and tracker, Visual SourceSafe.
Communication interfaces: RS232, RS485/422, UART, SPI, and USB.
Peripheral interfaces: Smartcard and Mag-stripe Card Readers, Bill Acceptor, ADC, LCD and Touch Screen, Keypad.
Software courses: QNX Neutrino RTOS, Netrino embedded C boot camp, Microchip masters conference.
ISO9001 certified work environment
Education:
De-Montfort University
Leicester, England, June 1996.
Bachelor of Engineering in Electrical and Electronic Engineering.
Specialized in Control Systems and Digital Design.
Final year project: develop an access control keypad on a Xilinx FPGA using Verilog tool set.
Graduate Intern with Crane Electronics (UK), carried out calibration and testing of torque control equipment.