Firmware Engineer Resume
Austin, TX
SUMMARY:
- Software engineering professional with fifteen plus years of experience in design and development of operating systems software, firmware and web sites. Full Life cycle development experience in analysis, design, development, test and implementing E - commerce and Client Server applications in multi-site team development using Agile, Jira.
TECHNICAL SKILLS:
Operating Systems: Windows: XP, Vista, PE, RE, 7,10, Windows MobileLinux: RTEMS, Ubuntu, Linaro, RedHat, CentOS, Gentoo, KNOPPIXUnix: Mac OSX, Solaris 9, HP-UX 11, AIXOther: ESXi, Android, RIM, PalmOS, Symbian, Brew, VMware, Oracle VM VirtualBox,OS/2, DOS, MVS, TSO, z-OS
Hardware: ARM Cortext-A57 64bit, ARM9, ATOM, Pandaboard ES, Raspberry PI, Arduino, NAS, Odroid, Phoenix, BIOS, Confidential x86, I7/I9 x64, AMD Ryzen Threadripper, Motorola(68000,6800), Sun Sparc, HPUX PA-RISC, Confidential RS6000, z-Series, Rabbit3000, BDE2000, PICOScope, Oscilloscopes, JTAG debuggers(Segger), logic analyzers, WASP 3900, AcroMag 989EN-4C16 Ethernet Modbus,DCS-900W, DCS-5300W, GPIB, Magma
Smartphone: Android, iPhone/iPod Touch, BlackBerry, Palm, Symbian, BREW, Windows Mobile
Middleware: CUDA, TensorFlow, RabbitMQ, Nagios, Hardcat, MONIT, LDAP, Apache, Websphere, Servlets,cgi, HTTP, SNMP, SNMP4J, SMTP, SCCM, MDT, SMB, DNS, NFS, SSH, Samba, NTP, Etcd, Sinatra,MDT, Winsock2, J2EE, JSP, JMS, EJB, MQ Series, MQSI, JDBC, ODBC, JNDI, JNI, Swing
Databases: SQL, T-SQL, DB/2, MySQL, PostGres, Ingres
Scripting: Javascript, Tcsh, CSH, BSH, BASH, KSH, VBscript, BAT, HTML, Frontpage
Programming Languages: Perl, C, C++, C#, Ruby, GO, Python, Java, VBA, PHP, MinGw-g++, Cygwin-gcc, COBOL, Fortran, APL, BASIC, MASM(ARM(ARM,Thumb), x86( Confidential, MS,Borland,gcc,g++), Rabbit,M6800,Series/1,601,BAL)
SOA: JSON, SOAP, XML, REST, XAML
IDE: VS 2013,2015,2017, .NET, Keil, Xilinx ISE Design Suite, Eclipse, Borland C++ Builder,Bloodshed, Dynamic C, Nvu
Applications: Nero, SureThing, WinISO, Attachmate, Robohelp, MS Project, Acrobat, Access, Dreamweaver, QuarkXpress, Photoshop, Crystal Reports
Test tools: Kernel debugger, AutoIT, Struts, SoftICE-w
Build tools: Ant, Make, TeamCity
Project Mgmt: Jira, PTM, PTDS, Redmine, ApTest
Soft Rev Ctrl: SVN, CVS, PVCS, TortoiseSVN, GIT, Github, GitKraken, CMVC, SCCS, PTAR
PROFESSIONAL EXPERIENCE:
Confidential
Firmware Engineer
Responsibilities:
- Developed Ring0 KMDF device driver for thermal measurement at the core complex level of Confidential I7/I9 cpus and AMD Ryzen Threadripper cpus.
- Developed Ring3 exerciser application for driving Ring0 KMDF device driver to produce CSV and XML output.
- Used Kernel debugger for testing of Ring0 device driver.
Confidential, Austin, TX
Senior Software Engineer
Responsibilities:
- Developed embedded HCI server installation using C# extracted tar.gz file using JIRA.
- Developed build version extraction for VS build and version number using C#.
- Developed installation software for ESXi version of HCI.
Confidential, Austin, TX
Contract Engineer
Responsibilities:
- Developed embedded firmware using C for 68000 legacy embedded parking systems.
- Developed architecture for SNMP monitor system for a lane controller in a tolling system.
- Developed multiple SMS clients to interface with Nagios and Hardcat software.
- Developed using GO for future release requiring concurrent programming infrastructure.
- Developed middleware using Perl, Ruby, Java, SNMP4J, REST, SNMP for tolling systems.
- Developed pop3 mail clients for Perl, Python, PHP, Java, C#, C++ to parse JSON and save data in MySql.
- Developed and managed a QNAP NAS box.
- Developed MONIT scripts and shim scripts for CentOS Linux platform.
- Developed client/server based monitoring support applications for CentOS/Linux.
- Utilized Agile SCRUM development process for firmware and tolling development and JIRA.
Confidential, Austin, TX
Contract Engineer
Responsibilities:
- Developed embedded diagnostics for AMD ARM 64bit SoC micro server Seattle project.
- Developed random diagnostic testing applications to act on shared L2 cache coherency scenarios for a multi-ARM Cortex-A57 core 64bit quad processor clustered AMBA ring SoC architecture.
- Developed random diagnostic testing applications to act on AHCI SATA controlled disk clusters.
- Developed kernel modules for cryptographic validation testing on an UBUNTU/Linaro 64bit Linux OS.
- Developed random number generator for scaled ranges of expected outputs for random option values usage.
- Purchased a Pandaboard ES, Inti Media board and SATA expansion board and 64bit USB to serial cable to accelerate alpha testing.
- Utilized an ARM DStream jtag debugging tool for internal SoC control testing.
- Used Kernel debugger for testing of Ring0 device driver.
- Developed I/O routines for performing sampling of external events based on the SoC architecture for ACHI SATA, Fibre Channel and Ethernet for diagnostics automation.
Confidential, Austin, TX
Contract Firmware/Software Engineer
Responsibilities:
- Developed C# and Python code for ATOM SoC processor debug system including extending the IronPython command line using Pyreadline like functionality to also include the internal commands of the Confidential internal debugger.
- Developed automation scripts using Python for Build Verification Test of ATOM SoC processor debug system.
- Developed automation scripts using Python for Ethernet based WTI, iBoot power strips and USB based AVIOSYS USB8800, PowerUSB power strips for debugger automation.
- Validated embedded Confidential Atom processor configurations using Netburner Serial to Ethernet adapters.
- Stitched CMOS BIOS for Confidential ATOM SoC processor configurations.
- Wrote multiple Python scripts for core scan results filtering.
- Wrote and published to internal wiki's and webpages multiple example Python and C# scripts for USB to modem interfacing techniques to reduce future ramp up time for lab personnel.
- Joined USB-IF to empower my abilities to debug USB peripherals and enlisted the use of an Agilent bus analyzer to flush out Windows XP vs Windows 7 USB 2.0 differences.
- Joined PCI-SIG to empower my abilities to debug PCI-E bus peripherals for future debugging needs.
- Purchased a USB8800, PowerUSB and NetBurner SB72 Development Kit to prepare for current debugger interface needs.
- Developed I/O routines for performing sampling of external events based on the SoC architecture for Ethernet, Serial and USB for debug automation.
Confidential, Austin, TX
Contract Engineer
Responsibilities:
- Developed automation scripts for marginal silicon Shmoo testing using Ruby for AMD processors on vendor motherboard configurations.
- Developed Ruby with Rubygems GPIO sense and switch process control for AcroMag 989EN-4C16 Ethernet Modbus.
- Developed auto sensing thermal and humidity website using THUM.
- Developed I/O routines for performing sampling of external thermal, voltage and frequency events for post silicon verification automation.
Confidential, Austin, TX
Contract Developer
Responsibilities:
- Developed AutoIT automation scripts for validation of AMD OEM motherboard configurations using vendor software.
- Programmed a Raritan for multiple VoIP KVM system access.
Confidential, Austin, TX
Contract Software Analyst
Responsibilities:
- Developed UEFI BIOS Diagnostics try/catch code to handle low level ERRORLEVEL return codes and kernel signal dispatching from diagnostic function execution of Windows diagnostics release.
- Developed UEFI BIOS Diagnostics for MBR and PBR file system virus detection.
- Developed MBR analysis in ePSA and Windows diagnostics release for all platforms, factory and ODMs.
- Developed unsigned driver usage script for Win7 64 bit.
Confidential, Austin, TX
Software Consultant
Responsibilities:
- Created automated low level testcases for testing SISTEM LMS 6.51 web paged learning using BASH, PHP, MySql, Apache, in an AJAX toolkit environment using Agile.
Confidential
Software Consultant
Responsibilities:
- Developed RTL skills for programming FPGAs using Xilinx ISE Design Suite.
- Developed CUDA applications for Windows 10 to learn TensorFlow open-source machine learning framework.
- Developing message queuing applications using RabbitMQ for inclusion in future software offerings.
- Developed smartphone applications for iPhone/iPod Touch, RIM/BlackBerry, PalmOS, Symbian, Android, BREW and Windows Mobile platforms.
- Developed UEFI diagnostic tools to migrate function out of OS into UEFI space for hard disk manipulation and memory testing.
Confidential, Austin, TX
Software Consultant
Responsibilities:
- Developed proposal and implementation plan for iPhone/iPod Touch applications for SISTEM and AVATAR products.
- Researched Bluetooth OBEX interface for wireless keyboard, mouse and custom Alchemy remote on both WindowsXP sp2 stack using the WinSock2 api support and the WIDCOMM stack using its proprietary api support.
- Downloaded and installed toolkits and registered as an iPhone/iPod Touch developer on Mac OSX and as a WIDCOMM developer on WindowsXP.
- Researched Android, BlackBerry, BREW, Palm, Symbian, Windows Mobile alternate platform SmartPhone implementations of wireless keyboard, mouse and custom Alchemy remote.
- Created automated low level testcases for testing SISTEM LMS 6.3 web paged learning using BASH, PHP, MySql, Apache, in an AJAX toolkit environment.
Confidential, Austin, TX
Software Engineer III
Responsibilities:
- Developed Visual Basic script calling Attachmate scp2.exe and ssh2.exe to transfer public and private keys from an IAVA secured WinXP system to Linux system(s). This included writing a C++ password dialog that passed back an Enigma machine encoded password string to the Vbscripts to ensure security. Created script shortcuts and custom icons using MicroAngelo. Included creation of a contextual help file using Adobe Robohelp and hcrtf.exe in a PVCS build environment.
- Developed Linux CentOS LiveCD patches for nVidia dual-head video card inclusion in a WinXP install.
- Developed Custom Actions in vbscript for an Advanced Installer project for a DOD system.
- Designed, developed and tested using MinGw with g++ for C using native Windows registry API and file system APIs a WinXP enabled instant messaging client detector for the eleven most popular instant messaging clients.
- Designed, developed and tested using MinGw with g++ for C and cscript.exe and netsh.exe a WinXP registry modification program to add the IPV6 protocol for multiple NICs.
- Designed, developed and tested using MinGw with g++ for C using native Windows registry API a WinXP registry modification program to remove "File and Printer Sharing for Microsoft Networks" for multiple NICs.
- Created a makefile to generate a version controllable CD/DVD label using SureThing and iso images using Nero command line interface for a production PVCS build environment.
- Designed, developed and tested using MS Visual Studio 2005 C/C++
- Developed AUTORUN Windows GUI setup application utilizing the WinXP registry using native Windows registry API to prime from DVD an application to perform virus testing.
- Modified an existing LiveCD DVD build to install a custom ReadMe.txt file without having this file installed for a CentOS embedded build.
- Modified an existing KNOPPIX DVD build to disable DHCP for a CentOS embedded build.
- Designed, developed and tested an Confidential Core2Duo CPUID detection and processor affinity setting wrapper programs for the DOD ADSI system using MinGw with g++ for C and MinGw x86 cross-assembler.
- Designed, developed and tested using MS Visual Studio 2005 C/C++ an AUTORUN Windows GUI setup application utilizing the WinXP registry using native Windows registry API to prime from DVD an application to perform virus testing.
- Modified an existing LiveCD DVD build to install a custom ReadMe.txt file without having this file installed for a CentOS embedded build.
- Designed, developed and tested a processor affinity monitoring program using MinGw, CentOS with g++ for C.
- Designed, developed and tested a WinXP registry modification and un-modification programs for testing system changes.
- Developed and tested Linux DDs for MIL-STD-1553B.
- Developed and tested Linux DD wrapper from PCI to the Tundra UniverseII DD.
- Developed and tested Linux DDs for Pre-Boot Execution Environment (PXE) and Etherboot to a VME bus.
- Utilized PVCS for source control and source code revision management.
Confidential, Austin, TX
AIX Level 3 Technical Specialist
Responsibilities:
- Provided mission critical AIX level 3 technical support on KERNEL Loader and LVM components for customer problems on AIX versions 5.1 through 5.3.
- Debugged C and RISC assembler on the AIX Kernel Loader component and in C on the LVM component.
- Created multiple interim fixes in C for the AIX Kernel Loader and LVM components to World Trade customers in a multi-site team development.
- Created multiple APARdrafts that were accepted by development for C code fixes to the AIX Kernel Loader and LVM components.
- Received accolades from development for thoroughness of example code provided in LVM APARdraft.
- Created Confidential flow diagrams for LVM on multiple PMRs.
- Provided Confidential updated process documentation for the multiple password change processes for .
- Provided Confidential collateral for a soft skills class presented to all Level 3 personnel.
Confidential, Austin, TX
Contract Systems Consultant
Responsibilities:
- Developed I/O Keypad, Serial port and LCD panels(s) device drivers on RTEMS in a multi-threaded environment for embedded projects for Atmel Arm9 and Rabbit3000.
- Used Linux RTEMS with a JTAG debug interface to a PuTTy terminal for an Arm9 processor embedded project.
- In the debugging of these device drivers, I used my own USB 200Mhz Oscilloscope to trace land patterns and detect simple signal patterns.
- Currently I use a USB interface 8 channel digital logic analyzer for debugging hardware projects.
- System build out of DOD proprietary GPS system.
- Wireless 2.4Ghz Indoor/Outdoor Internet Camera Video Surveillance system installation with a VPN router.
- Wireless 2.4Ghz Outdoor Backhaul Bridge system installation with a VPN router.
Confidential, Austin, TX
BIOS Consultant
Responsibilities:
- Developed BIOS for server boards for K8 processors in PCI-Express and DDR2 areas.
Confidential, Austin, TX
Software Developer
Responsibilities:
- Designed and implemented the ABXUTIL C code portion of the interim and GA releases of the Confidential and Confidential File Export IMS and DB2 data abstraction utility in a multi-site team development.
Confidential, Austin, TX, Boca Raton, FL
Staff Software Engineer
Responsibilities:
- Expert level knowledge of system BIOS for x86 architecture, related to BIOS interface for OS and hardware
- Expert in system BIOS bring-up capabilities between BIOS and Kernel, for 12 versions of OS/2, along with 2 versions of DOS and an x85 embedded system. OS/2 work was for server product development.
- Expert Assembler language coding capabilities with 23 years experience with Assembler on multiple platforms including Confidential x86, x85, Confidential mainframe and Confidential Series/1.
- Expert "C" language coding capabilities with 18 years experience with C on x86 platforms using Microsoft and Borland compilers to write utilities, operating system internals for kernel and file systems and virtual DDs. Learned C from the authors of "The C Answer Book”, " Writing DOS Device Drivers in C", “Mastering Make” books.
- Wrote the Advanced Power Management (APM)/ACPI enablement for Win-OS/2, which interfaced between the device drivers, virtual Device Drivers, OS, extenders and the hardware and BIOS.
- Designed a USB implementation for DOS: Worked through design of the BIOS interface to the USB device driver implementation for DOS.
- Developed BIOS work around code for Workspace on Demand for DOS using Pre-Boot Execution Environment (PXE) PCI and PXE Token-Ring PCCard bus.
- Developed a WAP assessment for providing an embedded DOS TCP/IP unit for telephony. Assessed the infrastructure additions to DOS with the vendor TCP/IP stack to support WAP in our imbedded toolkit.
- Developed solution to problem of incorrect serial I/O programming efforts that were meant to interface ROM and BIOS. Solution was to write BASIC source code for testing the horizontal and vertical embedded microcode in a hardware memory mapper. In addition, wrote BIOS using Assembler/MASM for horizontal and vertical embedded microcode in a hardware memory mapper.
- Wrote Assembler for Motorola 68000 memory mapper exercising using Walking 1/0, Checkerboard, Sliding Diagonal, Butterfly and other custom algorithms specific to 64bit architecture requirements.
- Worked on BIOS work-arounds for PCI-X card issues related to DOS and SMP based operating systems.
- Wrote Chapter 16 in "OS/2 Warp Uncensored", chapter related to helping empower users to fine tune DOS or Windows per session using the DOS and OS/2 settings.
- Built and configured two Sun rack 9000s with multiple Sun 280R quad SMP systems that used USB SMP with a Shark KVM and Shark 1U rack mount display.
- Built and configured three Confidential P4 systems and two AMD K6 systems.
- Worked on putting a browser in a gas pump with Dresser-Wayne Fueling Systems.
- Drove to completion the HomePage Surfer Demo CD for DOS.
- Provided build and integration support for EDK 3.0 for DOS and Windows 3.1 CD
- Workspace on Demand for DOS and Windows 3.1 build, integration and windows support.
- Patent filing on Netscape Communicator 4.04 for OS/2 Win16 plugin architecture.
- Updated Netscape Communicator 4.04 for OS/2 Plug-in Pack in a multi-site team development.
- Created Netscape Communicator 4.04 for OS/2 Warp Plug-in Programmer's Toolkit using JNI LiveConnect.
- Updated Netscape Navigator Java switcher program to determine version of Confidential Java available.
- Created the Netscape internal project status tracking WWW pages.
- Constructed web pages using HTML and Javascript.
- Utilized Robohelp to create Windows help files for software manuals and tutorials for users.
- Lead the Win-OS/2 team lead during the shutdown of OS/2 for the PowerPC.
- Provided mission critical level 3 technical support on customer Crit-Sits during Warp and Warp Version 4 in a multi-site team development.
- Drove to completion the Win-OS/2/DOS Emulation support in OS/2 V4 US and all NLV releases. in a multi-site team development
- Provided assistance in the build of Win-OS/2 2.0, 2.11, 3.0, 4.0
- Mentored, provided and helped coordinate on Win-OS/2 for L3 support WarpV4 in a multi-site team development.
- Designed, developed and tested a product build automation superuser tracking system.
- Designed, developed and tested three major MQSI ESQL/XML flows for Trusted e-Payments Initiative in a multi-site team development.
- Created multiple dynamically updating web pages from an SQL database.
- Lead a team of developers to create the Confidential Marketing ASPPrime survey.
- Led the WIN32s 1.25a team to ensure on-time completion and compatibility.
- Worked level 3 support and customer Crit-Sits during 2.0, 2.1, 2.11 in a multi-site team development
- Lead the Win-OS/2 team for level 3 support of DOS/Win-OS/2 2.0, 2.1, 2.11
- Technical support provided in OS/2 was crucial in securing the TMS bid that created $40mil of revenue for Confidential in hardware and software sales.
- OS/2 - Novell development contact Novell Lan Requester fixes for OS/2.
- Architected/designed/developed Printing/Loading/Contextual help of the DOS/Win-OS/2 settings.
- Architected/designed/developed BLDLEVEL.EXE for OS/2 2.11.
- Architected/designed/developed dynamic loading of DOS/Win-OS/2 setting description, and contextual help via a DLL implements SSSO.
- Architected "Dedicated DOS/Windows Session" for OS/2 Warp Preload and OS/2 Warp Version 4.
- Started/maintained the MIDI IHV/ISV list to ensure OS/2 and Win-OS/2 compatibility.
- Source code library administrator for PTDS, CVS, SCCS, PTAR, PTR and CMVC systems.
- Maintained the BARTOS operating system for Confidential Series/1 hardware verification testing.
- Maintained Fdisk, Sys, Format, Diskcopy, Chkdsk, Spool, command.com, cmd.exe for multiple releases of OS/2.
- Designed, developed with BASIC and tested, laboratory automation software using an Confidential PC for automating the setup and data reduction from a Gould Biomation K101 Logic Analyzer and a Tektronics TDR Time Domain Reflectometer.
- Designed, developed with MASM and tested I/O TheRMal laboratory automation measurement system using an Confidential Series/1 with EDX with GPIB enabled: Fluke Dataloggers and Honeywell programmable Tenney Temperature Humidity Altitude Chambers.
- Maintained with MASM the Automatic Power Supply Tester System laboratory automation measurement systems using an Confidential Series/1 with EDX, DIDO, Serial IO, GPIB enabled: HP DC volt meters and Kepco Power supplies.
- Maintained with MASM the DCVM and ACVM laboratory automation measurement systems using an Confidential Series/1 with EDX, GPIB enabled: HP DC volt meters, Kepco Power supplies, an Invetron AC Voltage supply and HP plotters.
- Designed, developed with APL and tested an acoustics data reduction and database for laboratory automation software an Confidential 5120 and a BK FFT and a hemianechoic RF isolated chamber.
Confidential, Hamilton, OH
Programmer/Analyst
Responsibilities:
- System BIOS bring-up capabilities between BIOS and Kernel for Motorola 6800 embedded system.
- Assembler language coding capabilities with 2 years experience with Assembler on multiple platforms including Confidential mainframe, Motorola 6800 and Confidential Series/1.
- Designed, developed with MASM and tested a hierarchical file transfer system utilizing the infrastructure of an SWTPC M6800 to Confidential Series/1 running CDPS to an Confidential Mainframe running MVS with TCAM infrastructure in a multi-site team development.
- Designed, developed with MASM and tested Format, Diskcopy, Chkdsk for a SWTPC Motorola 6800 Mini-Flex operating system.
- Developed in MASM for the SWTPC M6800 and tested the creation of graphical rendered labels for a mill roll tracking system which included the use of circular bar codes.
- Designed, developed with MASM and tested an Confidential Series/1 to Confidential Mainframe to multiple Confidential Series/1 software distribution system to dynamically update operating system level code.
- Wrote production control mill tracking software in CDPS for Confidential Series/1.
Confidential, Fairfield, OH
Adjunct IT Professor
Responsibilities:
- Tutored computer science languages: COBOL and Fortran.
- Taught COBOL and Intro to Computers computer science courses.
Confidential, Fairfield, OH
Programmer
Responsibilities:
- Wrote the Mill Order Summary report for a Trim Loss paper roll tracking system using Fortran with MIBS 2.012 operating system on a GA 16/440 for the Boise-Cascade contract.
- Wrote a GUI interface application to manage a Trim Loss paper roll tracking in the rewinder area using Fortran with MIBS 2.012 operating system on a GA 16/440 and Tektronics serial terminals for the Van Gelder Papier contract.
Confidential, Bowling Green, OH
Computer Consultant
Responsibilities:
- Mini-computer lab consultant for Data General Nova 2 and Nova 800 mini-computers using Owens-Illinois Digiview graphic plasma terminals and Calcomp plotters.
- Statistical package student consultant for SPSS, SAS and BMD-P statistical packages.
Confidential, Bowling Green, OH
CS Tutor
Responsibilities:
- Tutored computer science languages: Fortran, PL/c, PL/1 and COBOL.