Software Engineering Manager @ FARO Technologies, Inc.
Software Architect @ TA Instruments
Front End Development Cert; Data Visualization Cert; Back End Development Cert (in progress) @
Free Code Camp
For the last 17 years I've been creating software for products that ship across multiple industries. I believe the quality of the software and product is a reflection of myself, my team, and my company, so I'm continually striving to create correct, reliable, elegant, and on-time solutions; and I love the challenge of balancing these. I believe
For the last 17 years I've been creating software for products that ship across multiple industries. I believe the quality of the software and product is a reflection of myself, my team, and my company, so I'm continually striving to create correct, reliable, elegant, and on-time solutions; and I love the challenge of balancing these. I believe in getting things done so they stay done.
Senior Firmware Engineer @ Software research, development, and testing. From September 2015 to Present (4 months) Software Architect / Senior Software Engineer @ Software Architect: March 2014 – Present
Senior Software Engineer: June 2010 – March 2014
Software architect and hands on senior software engineer for multiple generations of thermal analysis instruments. Combined both COTS and custom hardware and software to speed time to market while still maintaining flexibility, reliability, and enhanced feature sets. Expedited development for multiple instruments by creating common platform hardware and software with interfaces for customization. Increased reliability by focusing on simplicity, modularity, and correct assignment of responsibilities. Authored requirements, software architectures and design documentation.
Programming Languages - C, C++, Java, C# / .NET / .NETCF, ARM assembly, Python, bash, sed, awk, Flex, Bison, Perl
Hardware - ARM7TDMI, multicore ARM Cortex A9, PEAK PCAN-USB
Communications - CANbus, RS232, TCP / IP, UDP, USB, XML, XMLRPC
Debugging - Lauterbach, gdb, Visual Studio 2008 / 2010 / 2013, windbg, LeCroy USB Protocol Analyzer
OS - Windows Embedded Compact 7, Linux (Ubuntu 10.04, 14.04), FreeRTOS, bare metal
General Programming Skills - Multithreaded programming, multicore programming, device drivers, libraries, unit testing, client-server architectures, make (GNU), ANT, communications protocols
General Skills - mentoring, code reviews / inspections, design reviews, architectures, including balancing trade offs, advanced mathematics From June 2010 to August 2015 (5 years 3 months) Senior Software Engineer / Software Engineer @ Senior Software Engineer: January 2005 - June 2010
Software Engineer: March 2002 - January 2005
Lead for all Windows device drivers and VxWorks RTOS code within FDA regulated environment.
Authored multiple FDA software requirement specifications and design specifications, including system requirements for “Fault Handling and Recovery” for future generation product.
Provided support for hardware engineering, verification and validation, manufacturing and field service teams. Working on various embedded projects as needed.
Programming Languages - C, C++, C# / .NET HC9S12 Assembly, bash, Perl, VBS
Hardware - Hitachi SH2, Coldfire 5282, HC9S12
Communications - CANbus, RS232, TCP / IP, USB, HTML / HTTP / CGI, Custom (Serdes, etc.)
Debugging - gdb, Visual Studio, windbg
Drivers - Windows XP / XP Embedded - WDF, KMDF, Linux, VxWorks, bare metal
OS - Linux (Debian 2.2, 3.0), VxWorks, Solaris, Windows XP / XP Embedded, bare metal
General Programming Skills - Multithreaded programming, multicore programming, device drivers, libraries, unit testing, client-server architectures, make (GNU), communications protocols
General Skills - mentoring, code reviews / inspections, design reviews, advanced mathematics From March 2002 to June 2010 (8 years 4 months) Embedded Software Engineer @ Developed and maintained digital air data computers and interface devices to FAA DO-178B Level-A and Level-B certification.
Wrote software requirements specifications and design documentation and supported verification & validation as needed.
Architected and programmed custom Air Data Sensor (ADS) instrument on HC12 in C.
Analyzed predictive flight trajectory algorithms as part of a new integrated flat panel air data computer.
Supervised software contractors and provided mentoring of co-op and junior team members.
Integrated PC-Lint into existing software process and development environment. From May 2001 to March 2002 (11 months) Associate Software Engineer @ Designed and programmed embedded software and PC applications. Debugged software and hardware using BDM, ICE, and oscilloscopes.
Authored requirements specifications, design specifications and software verification plans. Executed verification tests.
Designed and developed embedded real-time software for additive injector controller handling 10 meters in real time using C and assembly on a 68000 microcontroller.
Championed and developed soft real time PC Simulator of a real time mass meter, using C based Win32 DLLs and VB 6.0 front end.
Designed, programmed and tested various real time serial communications used for automation. From March 1998 to May 2001 (3 years 3 months)
M.C.S., Computer Science, 4.0 @ Colorado State University From 2003 to 2008 BS, Mathematics, 3.83 @ Gannon University From 1993 to 1997 Michael Becker is skilled in: Embedded Systems, Embedded Software, Device Drivers, Multithreading, RTOS, Software Engineering, Debugging, C, C++, Operating Systems, Embedded C, Software Design, Software Development, Linux, Embedded Linux