Software Engineer experienced in Embedded Systems, Communication Protocols and Low Level programming.
SUMMARY OF QUALIFICATIONS
Embedded Programming in C and Assembly for several Microcontrollers (8, 16 & 32-bit)
Application Development with High Level Programming Languages and Commercial packages and IDEs.
Test automation with scripting languages for Windows and Linux.
Software Development Process under CMM and CMMI.
Systems modeling with Matlab/Simulink/Stateflow.
C, C++, C#, Assembly, Java, Perl, VHDL, Verilog and others.
Real–time and Embedded Systems Programming, Embedded Linux Drivers and Power Management, CAN protocol, Automotive Calibration Protocols, Security and Cryptography, Structured and OO Programming, DC Motor Control, Automotive HVAC Controls, AUTOSAR, OSEK, Reconfigurable Hardware Programming, JTAG debugging, On The Board Diagnostics (OBD), Embedded Bootloaders.
Microsoft Office, Microsoft Visual Studio, XEmacs, COCOMO-II, DOORs, Vector Tools, ATI tools, Cygwin, QAC (static verification), Surround SCM/Test Track, PVCS, IBM Clear Case/Clear Quest.
Windows, UNIX, Linux.
Microcontrollers (Microchip, NEC and Freescale 8 & 16-bit, NEC 32-bit), ARM Processor (TI OMAP-2), FPGA boards (Xilinx Spartan-3), JTAG Emulators/Debuggers, CAN instrumentation (Vector, Kvaser)
Accurate Technologies (ATI), Wixom, MI (Software Engineer, November 2008 - April 2009)
Low level, Hardware Interfacing and Communication Protocols Development in C++.
Implemented Licensing Design using third-party libraries and the Blowfish algorithm.
Protocols development: XCP, CCP (calibration for a Honda product, polling sequence), TCP/IP (remote diagnostics in VISION for SOMAT eDAQ, requirements phase).
Continental Corporation, Troy, MI (Software Engineer, February – November 2008)
Lead Engineer for Automotive Embedded (16 & 32 bit microcontrollers) HVAC products.
CAN (DCX NOS) Diagnostics and Communications testing.
NEC V850 Bootloader configuration.
CANoe testing/CAPL Programming for Diagnostics (UDS)
ITT Technical Institute, Troy, MI (Adjunct Instructor, September 2008 – present)
Teaching Java Programming (Basic and Advanced), C Programming, Python and Network Standards/Protocols courses.
Delphi Corp., Juarez, MX (Senior Software Engineer, March 2007 – February 2008)
Leader for a Cluster project with NEC V850 and a Xilinx FPGA with Microblaze to handle graphics.
Leader for an HVAC Project with CAN bus (FNOS, transitioned from 101 to I3) and development under MISRA and AUTOSAR.
Integrated and Tested CANbedded Drivers for the NEC 78k0 Microcontroller using GENy.
Developed low level Software for the NEC 78k0 Microcontroller (Motor Control, PWM, OS, etc).
Integrated and Tested High Level Control Software Developed in MATLAB/Simulink.
Maintained and integrated the overall project using Synergy Configuration Management.
Sasken Communication Technologies, Monterrey, MX (Senior Software Engineer, May 2006-March 2007)
Senior Software Engineer for the Linux BSP Team.
Developed scripts in perl and bash, sed/awk for Dynamic Power Management Testing of the Device Drivers developed for OMAP processor and Linux (MontaVista, WindRiver and Open Source kernel trees).
Tested and Debugged Power Management performance in Embedded Linux Systems using Lauterbach Trace32 and a National Instruments DAQ.
Part of the team that participated in the Texas Instruments CMMI appraisal.
Delphi Corp., Juarez, MX (Software Engineer, March 2001 – May 2006)
In charge of maintenance of a DC Motor Control Software Building Block (Pulse-Count).
Developed low level Software for several Microcontrollers (Drivers for Freescale HC12/Star12, Microchip’s PIC 16 and 18 families, NEC V850: EEPROM, PWM, Timers, Flash memory, UART, etc.).
Developed on-the-board Diagnostics Software (KWP2000, GMLAN) for controls using CAN.
Developed Software Estimates as part of the Team in charge for new projects bids.
Implemented Security (Crypto) algorithms for Microcontroller re-flashing.
Designed and Implemented a Matlab/Simulink/Stateflow Model and Auto-generated code using TargetLink for a DC motor positioning algorithm.
CANoe/CANalyzer Programming in CAPL, Interactive Generator for Chrysler models
MS Program in Information Assurance (In Progress). GPA 4.0
UTEP (University of Texas at El Paso) (El Paso, TX)
Computer Engineering Graduate Courses
INAOE (National Institute for Astrophysics, Optics and Electronics) (Puebla, Mexico)
MS Program in Electronics Engineering, Major in Instrumentation and Control Systems; GPA 3.2
ITVER (Technological Institute of Veracruz) (Veracruz, Mexico)
B.S. in Electronics Engineering, Major in Digital Systems; GPA 3.64
Vector Academy (Novi, MI)
GMLAN and FNOS trained.
Green Card Holder (US Resident Alien)