Post Job Free

Resume

Sign in

Software Development Business

Location:
Lexington, KY, 40508
Posted:
December 15, 2023

Contact this candidate

Resume:

Benjamin A. Herr, PhD, DCS

Cell 360-***-**** ad1z1m@r.postjobfree.com

SR. PRINCIPAL SOFTWARE/FIRMWARE DEVELOPMENT .

With years of experience creating solutions for

complex communication systems and real-time embedded devices.

Highly Technical Proven Architect of Complex Systems Innovation Leadership Strategic & Technical Planning

Technical Leadership Design Validation Problem Solving

Business Development Change & Configuration Management

Team Building Coaching & Mentoring Talent Recruiting & Retention

SKILLSET SUMMARY

Technical, business-savvy, pragmatic Sr. Principal Engineer with a track record of goal-surpassing performance delivering complex, large-scale product development projects through the entire product lifecycle on-time under traditional and agile software development methods in regulated environments, both domestically and globally. Thorough knowledge of the complete software development process, able to take a project from initial startup and analysis through to completion of production deployment and support. Hands-on software design and development experience with numerous server-level, real-time embedded and non-embedded platforms, operating systems, device drivers, and communication and data bus protocols. Proven skills in:

Product Life Cycle Management

Network-Function

Virtualization (NFV)

AWS

Technical Team Building

Software Engineering

Web-services Frontend & Backend

Software Life Cycle Management

Matrix Management

Database Design

Service Oriented Architecture (SOA)

PMBOK

OOD / OOP / Design Patterns

Medical Device Experience

IEC-62304

Risk Management & Mitigation

Agile / Scrum / Model Driven Development

Wireless Communication

Real-time Embedded Software Design & Development

OS & Device Driver Development

Domestic / International Regulatory Experience (FDA, FCC, etc.)

Android

TECHNOLOGIES .

LANGUAGES: Assembler (PPC: 4xx, 6xx, 7xx, 8xx: Intel: 80x86, 680x0; MIPS32; Arm-M, Arm-A, ARM7, ARM9, ARM11), Visual C/C++ (MFC & Win32 APIs), FORTRAN, Pascal, PL/I, MPEG, Java, JPEG, PCL, Perl, PJL, Postscript, UML, HTML, CSS, PHP, Ruby-on-Rails, Javascript, SQL.

OS’s: MSDOS; UNIX (System V, BSD, SUN OS, Solaris, SCO, Ultrix); Linux (Redhat, Ubuntu, Debian, CentOS, Fedora, Yocto, SUSE, Arch); FreeRTOS; MS-Windows: 7, 8, 10, Mobile; Windows Server 2003, 2008, 2012; VxWorks, COS-II OS, OSE, Android, VMWare, OSE/OSEck.

DESIGN / PROCESSES: OOD/OOP, Design Patterns, Agile methodologies (Scrum and Extreme Programming), Model Driven Development (MDD)

PROTOCOLS: TCP/UDP/IP (IPv4/IPv6), IEEE 802.16, 802.11a/b/g/n/ac/ax, 802.3, 11073, 1394 (Firewire), USB, Bluetooth, Zigbee, PCI/PCIe, SPI, SDIO, HL-7, CAN-Bus, MAC layer.

DATABASES: DBVista, Informix, Ingress, Oracle, MySQL and Sybase.

NETWORKING / BUSES: Wireshark/TCPView Packet Analysis, DNS Servers, Mail Server, Beagle USB Analyzers, LeCroy, Agilent/HP-8757A, Agilent 4396B, R&S ZVB40 Vector Network Analyzer

DEVELOPMENT / DEBUGGING TOOLS: Microsoft Visual Studio, Eclipse, MyEclipse, PHPEclipse, PhpED Pro, PHPEdit, KDevelop, NetBeans, Qt Creator, Adobe Dreamweaver, Ruby IDE, ARM Dev Studio, SoftICE, Lauterbach TRACE32, WinDbg, X64dbg, KDbg, SlickEdit, KDB, GDB, IDB, pdb, git, githib, Jira, BitBucket and Confluence

PROFESSIONAL EXPERIENCE .

Sonos, Inc., Louisville, KY 2022 – Present

Sonos, Inc. is an industry leading consumer audio company that provides high quality sound systems.

Sr. Principal Engineer As a Sr. Principal Engineer in the Advanced Technologies R&D group, I am responsible for investigating, prototyping and integrating new wireless and audio concealment technologies into our products.

Yor Labs, Inc., Beaverton, OR 2021 - 2022

Yor Labs, Inc. is a medical device company that solves complex clinical needs in cardiac imaging through the world's most advanced, high-performance, miniaturized ultrasound technology.

Sr. Staff Engineer As a Sr. Staff Engineer, reporting to the Director of Embedded Software Development, I am responsible for designing and implementing of embedded software and firmware, including PCIe and XDMA device drivers and kernel modifications for Linux and FreeRTOS for our miniaturized ARM M-7 and Xilinx FPGA based ultrasound technology.

Summit Wireless Technologies, Inc., Beaverton, OR 2017 – 2021

Summit Wireless Technologies, Inc. is a semiconductor company that develops wireless audio integrated circuits and software for home entertainment and pro-audio markets.

Sr. Principal Software Engineer As a Sr. Principal Engineer, reporting to the V.P. of Software Development, I am responsible for investigating new Wi-Fi technologies, as well as designing and implementing them; with particular emphasis on assessment and development of Wi-Fi stacks, drivers, and firmware. This includes the investigation and development of Random Linear Network Coding (RLNC) to increase product reliability and reduce latency.

I was responsible for the design and development of our 2nd generation wireless audio framework and evaluation kits – offered across several platforms, including various ARM-based processors, Linux, and various RTOSs. Additionally, I oversaw the design and implementation of our AWS-based prototype of the company’s customer interface, including personally designing the underlying database schema and server backend.

Accomplishments

Systems Architect I personally designed the overall architecture of the Gen-2 software framework, as well as many of the major components. I co-designed and directed the implementation of the test framework and remote diagnostic systems.

Sr. Principal Engineer I personally designed and implemented the company’s network coding scheme, based on RLNC, to enhance the Gen-2 product’s network reliability and latency to reinforce our position as the industry leader in audio Wi-Fi technology. I am also responsible for investigation of new hardware and software platforms for our technology, including various processing architectures, operating systems, Wi-Fi stacks, and radio hardware, as well as employing various process scheduling algorithms to reduce latency. I designed and developed the frontend and backend to Summit’s Continuous Integration (CI) system, including the database schema, server, and client applications, as well as the web-interface applications. I also implemented Summit’s Over-the-Air (OTA) firmware update software and incorporated it into our customer database server (initially AWS, later PostgreSQL) so that customers will only have access to their specific software and information. This software validates the customer’s credentials, as well as the specific device’s unique ID. Developed Android-based phone application to control speakers and play audio content through them, as well as determining listener position relative to the speakers to optimize the sound timing reception of the audio at that location.

Workflow Improvement I was instrumental in turning around the Software Engineering department, which was struggling to establish and adhere to agree upon timelines. Previously, there had been a Laissez-faire attitude towards commitments. I instituted several sustainable operational mechanisms into the SOPs of multiples software development teams and various stakeholders. This change included introducing the Scrum Agile development process, as well as new integrated support tools to ensure proper progress tracking and proactive identification of execution risks by automatically gathering various industry standard performance metrics and properly analyzing them on a regular basis, and then educating management of their meaning and proper use. We changed the culture from one of "over commitment, and under delivery" to one of "give me one (reasonable) date, and make sure that it is the DATE, and then MEET IT". I was instrumental in repairing the "credibility gap" between software development and the rest of the organization in part, by reaching across functional "silos" to my counterparts and upper management, understanding their needs and concerns, and ultimately delivering what I promised, when I promised, with the highest quality.

State of the Art Software Development Lifecycle I instituted state of the art agile software development lifecycle best practices, as well as the tools to support them. This included creating an automated Continuous Integration (CI) system that supported our multiple platforms.

Talent Building I instituted a highly successful internship program at Summit, which was approved by all universities in Oregon, Washington, and Idaho. Our interns do real software engineering, not just testing. As such, these positions have become highly sought after, even though the company does not offer the highest compensation. I actively recruited on all the college campuses in the greater Portland and Vancouver areas for the best and brightest engineers. I have established relationships with numerous university electrical engineering and computer science departments who do not hesitate to refer the best students to us. A vast majority of my team were not familiar with Linux internals, git, CI systems, unit & system level testing best practices. I worked hard to rectify this situation by implementing “brown-bag lunch” training seminars.

Encore Semi, Inc. (Contractor) San Diego, CA 2016 – 2017

Encore Semi is a global embedded technology company, who specializes in offering highly skilled hardware/IC design and embedded software development services, along with system validation and low power design services.

Senior Software Architect & Engineer (Intel) Primary responsibility was the design, implementation, and troubleshooting of embedded software and Linux device drivers under CentOS, running on new, specialized, complex, low-quantity, massively parallel multi-processor hardware.

Accomplishments

Embedded Software Design and Development I personally designed and implemented the memory management and event handler systems for the new hardware, as well as writing a Fuzzy Stress Test system that can parse any C source file and generate software to perform fuzzy testing of all functions found, based on their parameter’s datatype. I also wrote much of the design documentation for the system.

Colorado Technical University, Colorado Springs, CO 2016 – Present

Colorado Technical University is a for-profit university in the United States. Founded in 1965, CTU offers undergraduate, graduate, and doctoral degrees, primarily in business, management, and technology.

Adjunct Professor Primary responsibility is teaching undergraduate and graduate level classes in computer science, computer engineering, and electric engineering. I developed the overall curriculum and a significant number of lessons for the CS627 and CS267 Algorithms courses, rewrote curriculum for the CE242 Computer Architecture course, and developed the curriculum for the CE690 Computer Engineering Capstone graduate course.

Enea North America Phoenix, AZ 2013 – 2016

A global information technology company, providing real-time operating systems, high transaction embedded software products, and consulting services.

Technical and Program Director, Principal Architect Responsible for technical aspects of all projects, as well as strategic planning, project execution, and management of program and technical managers over numerous software projects for several high-profile accounts, including Medical Device and POS companies, comprised of over 60 engineers from the U.S. and Romania. I personally designed and implemented, or directed the design and implementation of, numerous embedded Linux, OSE, OSEck, and other RTOS based software systems for multiple customers, including BSPs, embedded, mission critical software, distributed enterprise systems, and highly secure applications across several industries, including medical and financial. I was also responsible for Enea Global Services Open Network Functions Virtualization (OPNFV) and Software-Defined Networking (SDN) design and development, as one of three Principal architects.

Accomplishments .

Systems Architect I personally oversaw and co-designed, with my systems & software architectural staff, the systems we developed for our clients. These systems varied from class III medical devices and Point-of-Sales (POS) terminals to enterprise systems and Network-Function Virtualization (NFV) on ARM and INTEL based servers. I also personally oversaw the design and implementation of openNFV on ARM-based servers for Enea.

Turnaround Management Immediately after hiring, I personally turned around 5 failing projects that were critical for two of our major clients. Projects typically fail for several interlocking reasons, both technical and non-technical. My job was to come in and assess the problems, as well as effect timely solutions while (gently) correcting behavior, training, and imparting knowledge to reduce future reoccurrences. Many times, this required remote diagnoses.

Program Director Instituted formalized SCRUM methodologies, establishing agile-based processes for the software development teams, incorporating several tools into a comprehensive system with quality control gates, traceability, and enhanced KPI reporting and alerts accessible from secure client project portals that my team and I established and initially maintained until taken over by corporate IT; all of which had never been done by Enea Services. During this period, I also built up a PMO of U.S. Program Managers to support the growing number of North American clients.

Technical Sales Support Instrumental in significantly enhancing our revenue stream by securing contracts with new clients, including a major medical device company. This was accomplished, in part, by growing our reputation and through the proper vetting and scoping of projects – providing comprehensive SOWs to our perspective clients.

Hospira, Inc. (now Pfizer) San Diego, CA 2008 – 2013

The world's leading provider of injectable drugs and integrated infusion therapy & medication management systems; with approximately 15,000 employees and annual sales of over $4 billion (US).

Director, Software Development Reporting to the V.P. of Software Development, I was responsible for software design and development of multiple, complex, concurrent medical device and medication management system projects, including project and technical leads, and engineers for all infusion pumps and enterprise system platforms across all Hospira. This included Symbiq, Plum, PCA, and GemStar infusion pumps, as well as the MedNet and VeriScan medication management systems. In total, I managed development teams of approximately 120 engineers across India, Romania, Chicago, and San Diego. Responsibilities included the creation and oversight of multi-million-dollar budgets, vendor contract negotiation and oversight, as well as corporate-wide project schedule and resource planning ensuring alignment of the commercial/marketing/product development and technical plans with corporate strategy. I also provided mentoring and coaching to various team members, including effective program management practices for 2nd and 3rd level managers.

Accomplishments .

Platform Lead / Architect Managed the Scrum-based, Model Driven Development (MDD) of Hospira's next generation Android-based platform, which formed the basis of all infusion and communication devices going forward. Designed and directed the implementation of support for IPv6 under this new platform. Co-redesigned and directed the implementation of a new drug library and standardized the event logging format across all platforms to make it more compact, extensible, and language agnostic. Co-designed and directed development of soft targets for legacy pump platforms that allowed for dynamic language translations and event replay and debugging. Evaluated new technologies and business opportunities including establishing Collaborative Research and Development Agreements (CRADAs) with companies and institutions such as West Health Institute (WHI) to incorporate their IEEE-11073 middleware stack into our next generation platform. Drove the design and implementation of the P-Protocol (patent-pending), which would be the internal protocol used between hardware components within the platforms, e.g. MCU-CE, UIC-CE, UIC-PMC, etc. This protocol was bus agnostic running across serial, SPI, USB, CAN, wireless, etc.

R&D Core Team Lead As the R&D Core Team Lead for Symbiq (Hospira's state-of-the-art infusion pump), I was responsible for coordinating all R&D activity required across multi-disciplined teams to deliver the product updates on time, while meeting FDA, FCC, and international regulatory requirements. I led the cross-functional team to successfully deliver two versions of the product through FDA 510K and Health Canada approvals to market, the latter being the first international version of the product, supporting multiple languages. I was also responsible for all R&D related documentation and required submission articles. In short, I was responsible for the delivery of the product from R&D to manufacturing and commercial, as well as addressing all software-related field issue complaints, which meant that I managed the project's variances and change control (i.e. risks) as they occurred developing the appropriate contingency plans and then efficiently carrying them out in compliance with the project's agreed to budget, time, resource, and value targets, in accordance with the industry’s best practices.

Turnaround Management I was instrumental in turning around the Software Development department, which was struggling to establish and implement timelines to meet project objectives and requirements in a timely manner. Because of a lack of accountability to deliver on commitments, I instituted several sustainable operational mechanisms into our SOPs, including the Scrum Agile development process, as well as new integrated support tools that helped to ensure proper progress tracking and proactive identification of execution risks by automatically gathering various industry standard performance metrics and properly analyzing them on a regular basis. I also educated management of the meaning and proper use of said metrics. Keep in mind, this was a class III medical device, where when something does not work correctly, people can and do get hurt we needed to do it right the first time.

Innovation & Product Life Cycle Management I was responsible for the company's two most popular and profitable infusion pump products: Symbiq and Plum, with install bases of 40k and 120k, respectively. I directed the internationalization of Symbiq and drove the design and implementation of Plum-15.0 code, which restructured, cleaned-up, and consolidated 14 various code bases into a single code base that supported multiple languages. This new design included the introduction of uniform, condensed, language agnostic events and string table definitions that would be used across all of Hospira's pump platforms. I received a joint patent on it in 2016.

Soft-Target / Language Editor / Event Debugger I drove the design and implementation of the first software target for Plum ever implemented. This software target included a language editor, which dramatically expedited the development of new languages and lessened the cost of debugging. I designed and drove the implementation of the language file, log format, and log-viewer definitions that would be uniform across all Hospira's pump platforms going forward. I also drove the integration of the GDB debugger into both the hard- and soft-target implementation of Plum.

Cross-Product Standardization / (Remote) Event Debugging/ Automated Test Framework I drove the implementation of standardized application messages sent between the MCU/UIC and CE, which would be uniform across all Hospira's pump platforms. I designed and drove the implementation of the event playback, system dump, and automated testing framework for Plum. This same design, coupled with the standardized application messages, would carry forward to PCA and Symbiq, as well as all new platforms going forward. This playback ability allowed for the capture, remote retrieval, and playback of events leading to a problem in the pump greatly increasing the effectiveness of our debugging in Plum. These uniform event and application message definitions, coupled with multiple methods of injecting these events, provided for automated verification testing, which Plum had never had before. It would also allow Verification to ultimately condense their automated testing into a single framework with a single, common set of test scripts that cover most of the pumps, with smaller subsets of test scripts specific to a particular platform. As part of the code consolidation of Plum-15.0, we dramatically decreased the GUI response-time to meet industry standards, with Plum's 60302 running at 12MHz.

Vendor Management and Alliances I revamped who and how the Software Development Department selected and used vendors & contractors. I practiced some social Darwinism with our large international vendors and contractors, where the bottom 20% performers of the various teams each quarter were removed and not allowed to rejoin the team for that quarter. The upper 10% were given various perks, acknowledgements, and rewards. Potential new or returning members were given the "Ben Test" to ascertain their real OOD/OOP skill level. If they did not pass, they were not allowed to join the team. It took some serious negotiation with the vendors to enact this policy, but it paid off handsomely within 6 to 12 months, depending upon the team. Vendors or contractors that did not measure up were let go, and I personally found new ones.

Human Resources and Talent Management When I first took over the embedded software development, the average experience level was over 20 years. Under my leadership, this group was trimmed of non-performers and infused with younger, very bright engineers, who brought tremendous energy and new thinking to the teams. This helped to break the entrenched thinking of "this is how we have always done it"; which was why they were always getting the same results.

I also instituted a highly successful internship program at Hospira, with numerous individuals going on to software development careers at Intel, Texas Instruments, and Google to name a few, as well as Hospira itself. Our interns did real software engineering, not just testing. As such, these positions became highly sought after, even though the company does not offer the highest compensation. I actively recruited on all the college campus in San Diego and up the coast for the best and brightest engineers. I established relationships with numerous university electrical engineering and computer science departments who did not hesitate to refer the best students to us.

NextWave Wireless, Inc. San Diego, CA 2007 – 2008

NextWave Wireless was developing a 4G broadband network utilizing WiMAX as its baseband. The Advanced Technology Group was responsible for development of WiMAX/Wi-Fi chipset, firmware, and software development.

BSP / Device-Driver / OS Team Lead Led a team of 8 engineers. Responsible for design and development of PCI, PCI-Express, SPI, SDIO and USB-based Linux, Windows-XP, Vista, and Windows-Mobile WiMAX (IEEE 802.16) and Wi-Fi (IEEE 802.11) modem/network (including NDIS) device drivers, as well as the Subscriber Station Platform (SSP) Bus-Agnostic Modem driver for ARM9-based ASICs. Wrote numerous Linux drivers conforming to Open-Source coding requirements.

HMD-BRAM Innovative Ultra-Thin Virtualization I conceived, researched, designed, and led the implementation of a hybrid architectural framework that came to be known as the Host Modem Driver (HMD) stack, which included the Bus Radio Agnostic Modem (BRAM) middle layer as its centerpiece. The goal of this development program was to produce a design that incorporated modularity, easy extensibility, and portability. Namely, this meant the ability to port the driver stack to several different operating systems, including Linux, VxWorks, Windows XP, Vista, and Mobile; as well as the ability to operate on several hardware platforms, including Intel x86, ARM-11, FreeScale, and XScale, over a number of different data buses including PCI, PCIe, SPI, SDIO, and USB. The resulting layered, modular approach allowed for minimal components to be interchanged from one platform to the next. Included in this approach was the need to abstract all of the operating system, protocol stack, and low-level device driver interfaces as much as possible to provide not only ease of porting from one hardware platform and/or operating system to the next, but to reduce volatility during such ports. This resulted in a set of layered common/core subsystems that were inviolate from platform to platform, conjoined with a much smaller set of modules that were by their very nature (tightly) coupled with the hardware.

Elgar Electronics, Corp., San Diego, CA 2006 – 2007

Senior Member of Technical Staff Designed and developed the Automated Design Validation and Test (ADVT) system. ADVT is a C# .NET-based client-server GUI application, used to test EEC DC, AC, and load products in various configurations, utilizing GPIB, serial, USB, and TCP/IP socket interfaces to pass SCPI commands to various test measurement equipment. The ADVT system provided an IDE platform from which to develop, integrate, and deploy “bundled,” self-contained test suites comprised of heterogeneous test executables, scripts, and runtime libraries, able to run locally or remotely.

VIA Telecom, Inc., San Diego, CA 2004 – 2006

Principal Software Engineer Developed and maintained Windows WDM function and filter drivers for USB-based devices, including modems, filesystems, and camera interfaces, as well as associated firmware for CBPx CDMA ARM-7 core.

V3I Inc.: (Prime Measurements, LLC) (Contractor) 2004

Principal Software Engineer & Architect Completed development of the CS50 Telemetry Firmware using the IAR Embedded Workbench, including GSM (cellular) and landline modem drivers and task management under the μCOS-II OS. Wrote a Serial Peripheral Interface (SPI) bus driver to interface a Motorola 68HC(7)05H12 to an A/D converter taking temperature and pressure-readings from an analog device attached to the valve of a pressurized-tank.

Minolta Systems Laboratories, Inc. 1998 – 2003

Project Manager & Architect Led Minolta team in co-development with Peerless Systems, Inc. of the first VxWorks based laser printer; Motorola PPC 603 based with QP1800 co-processors. Led Minolta team in their first “wholly internally developed” laser printer based upon the QP+401. Developed caching, memory management systems, and VxWorks Board Support Packages (BSPs) for the QP+401, QP+405 (PPC-based ASICs), and MIPS32 based products. Implemented: Ethernet IEEE-802.3, 802.11(b&g), USB-2, IEEE-1394 (Firewire), SBP-2 VxWorks device-drivers and protocol stacks, as well as Plug-and-Play (PnP), Active-Directory, POP-3, IMAP, and SMTP libraries. Wrote, maintained, and oversaw testing of printer drivers to support Universal Interface Format (UIF) / IPP-FAX devices, USB, 1394, Bluetooth, and Ethernet, including InstallScript installation software. Developed detailed specifications, firmware, and device-drivers for multiple Minolta MFP platforms. Designed and lead development and testing of Minolta’s I/O (MIO) system utilizing VxWorks MUX/SENS system and NICFUM-3 subsystem, including IPC messaging drivers and APIs. Maintained printer MIB support.

EDUCATION .

D.Sc. Computer Science, Colorado Technical University

(dissertation on Software Components and Ultra-thin Virtualization)

Ph.D. Applied Mathematics, Lacrosse University (dissertation on M/M/n Queuing Theory)

M.S. Computer Science, University of Idaho

B.S. Electrical Engineering, West Coast University

B.S. Computer Science, minor in Applied Mathematics, Chapman University



Contact this candidate