Frederic Vicher

Senior BIOS and Firmware Developer

Salary / Daily rate

Freelance

Skills

IOS

Languages

EnglishFrench

About me

Intro

Senior BIOS and firmware developer with 15+ years of expertise in embedded systems and low-level programming. Proven track record in UEFI development, ARM/x86 architectures, and leading tech alliances with major companies like Kontron, Siemens, and Thales. Specialized in delivering robust firmware solutions for mission-critical applications.

Links

Work experience

Senior BIOS and firmware developer

A.M.I.E.Freelance

Jul 2015 - Present

11 years 4 months

Hybrid

Award legacy bios UEFI bios for embedded systems (AMI, Insyde and Phoenix based) Assembler, C, Subversion, Eclipse, American Arium emulator, I2C sniffer, tests equipment. Design and development of a customization tool for Phoenix-based UEFI bioses running in UEFI shell. ACPI coding, bug fixing Development environments under Windows. ARM Cortex M4 (Nordic), BLE, Lora using GCC, GIT PCIe bios for the European Processor Initiative (ARM based multi-processor) Boot and hardware interfacing on Xilinx Zynq UltraScale+ MPSoC Main customers Kontron, TQ, Siemens, ATOS for BIOS, Metavonics for Real time OS (mainly remote working). Metavonics filed a patent for my invention on improved connector keys. Right now, I am in charge of leading a RAPID alliance between Metavonics, Onera and Thales around TSN (high reliability ethernet network standards used in avionics).

Senior Embedded Software Engineer

NXP

Mar 2014 - Oct 2014

8 months

Caen Area, France

Implementation of functions in a NFC device running Chibios. Validation and regression tests development. ARM, C, Subversion, Eclipse, GCC, MISRA, tests equipment. Development environment under Windows.

Embedded Software Developer

GMX-YouTransactor

Jun 2013 - Mar 2014

10 months

Paris, France

Development and integration of a payment device using smart cards and mobile phone. Secure ARM, C, Subversion, IAR, JTAG, code architecture, HMI, Communication protocol design and implementation

Senior bios developer

Men

Mar 2013 - May 2013

3 months

90 Nuremberg, Germany

Implemented network drivers to boot different operating systems on proprietary hardware. UEFI, PXE, UNDI, legacy oprom, UEFI oprom.

Software Developer

A.M.I.E.

May 2012 - Mar 2013

11 months

69340 Francheville, France

Implemented a web application using HTML, Javascript, PHP, MySQL, Apache. Javabeans, subversion, collabtive.

Embedded Software Developer

SoftAtHome

Aug 2011 - Jan 2012

6 months

Paris Area, France

Implemented a France Telecom proprietary technology in a home gateway. The module reports to FT servers the failures and quality of service related to VoIP. I had to adapt it to a new internal design as well as a new software bus (data model). MIPS, Embedded linux, Wireshark Development environment under Ubuntu linux.

Embedded Software Developer

ST-Ericsson

Mar 2011 - May 2011

3 months

90 Nuremberg, Germany

Creation of a new software module for UMTS-LTE telephony . The module had to be designed to allow other modules to subscribe or unsubscribe to different services. Some of the services were called when powering up or down some of the processors. ARM ClearCase Lauterbach debugger OSE real time operating system

Senior Consultant

Atos

Feb 2011 - Mar 2011

2 months

Belgium, WI, USA

Analysis of a communication crash due to interferences on a USB-serial connection (linux and windows drivers) As USB is not designed for industrial use, very often electromagnetic glitches (the cable was connecting cash registers to card readers) made the hardware disconnect. Thus the low-level software needed to be modified to automatically reconnect using the same device number and without informing higher layers.

Windows device driver senior designer

NXP

Jul 2010 - Oct 2010

4 months

Belgium, WI, USA

Developed a NDIS-KMDF device driver for a new 60 GHz wireless standard. I made 2 windows device drivers to interface with a prototype board first as a file reader and writer then as a communication device. The driver had to buffer the data (no buffer management on the board) and manage the simultaneous flows of data.

Windows device driver senior developer

Option NV

Jul 2008 - Mar 2009

9 months

Belgium, WI, USA

Debug USB drivers for cellular network devices. Created debugging tools to help using crash dumps. The first one is a C library to write in a rotating buffer the compressed messages along with caller address. The second one is a WinDbg C++ DLL to get the messages from the crash dump and make them usable. Found bugs inside the Microsoft USB layers. Followed trainings on cellular networks and TCP/IP over cellular networks.

BIOS senior developer

Tadpole (General Dynamics UK)

Apr 2008 - Jul 2008

4 months

1180 Uccle, Belgium

Debugged and finished the Award-based BIOS for the Windows coprocessor of a SPARC notebook. Interfacing to several hardware components. It has to use the peripherals (video, keyboard, disks, network, etc…) controlled by the SPARC part. Communication between processors through SMI and non-transparent bridge. Highly secured work environment (project for the US army). Used the AMD Hardware Debug Module (JTAG technology)

Communication advisor

Confidential

Nov 2006 - May 2007

7 months

Paris, France

Hired by one the main candidates at the French presidential election to take care of the strategy and communication methods

BIOS and device driver senior developer

Datapath Ltd

Sep 2003 - Dec 2006

3 years 4 months

1180 Uccle, Belgium

Maintained and improved the video BIOS for S3 based Datapath cards (assembler) Maintained and improved the NT video miniport device drivers for S3 based Datapath cards (C) There are 4 video outputs on each card and several cards in a PC, up to 40 screens for a datawall - Added DVI (flat panels) support in the driver - Made the system not use the video BIOS after boot - Implemented the communication with the monitors using DDC protocols (DDC/Bi & DDC/Ci) - Added the automatic creation of user video modes using the registry - Introduced parallelism in the operations of the different video channels - Proposed and implemented ways to speed up the video initialization (now 100 times faster) - Enhanced the video mode change operation - Designed and implemented the hardware testing at low level and user interface (C, C++) Developed the firmware for 8052 compatible on a video splitter (assembler and C, Keil uVision IDE) - Made the firmware upgradable through the I2C connection (embedded C – assembler, PC side in C++). The firmware being stored in flash, I designed and wrote the routines to program the flash part while the data were received, which implied executing part of the code in RAM. Suggested lots of improvements and innovative technologies (hard and soft) for different products Use of Visual Source Safe

Consultant engineer

Compagnie Européenne de Développement S.A.

Jan 1999 - Aug 2003

4 years 8 months

69340 Francheville, France

Interventions at customers sites to troubleshoot and fix bios or drivers issues, or hardware misconceptions (HP, NEC, Fujitsu-Siemens) Member of the Trusted Computer Platform Alliance bios workgroup. -Continued improving the bios with Phoenix. Modified the Phoenix debugger (or Bioscope) to debug without any RAM in the target computer (software only solution). The debug engine is written in assembler and the front end in VB5. -Windows 2000 programming (Kernel and drivers). Mainly communications kernel stack (IP). Hooking of kernel functions (dispatch functions, kernel functions, device drivers entries, NDIS miniport entries, TDI). NT services. TAPI. CAPI. Sockets. Multi-threading. Io completion ports. -Client-server programming using TCP/IP with authentication and cryptography (C++) Patent FR.02/07604

Senior Bios Engineeer

phoenix

Apr 1997 - Dec 1998

1 year 9 months

CPE (Continuous Products Engineering) for HP platforms. Commited to fix or workaround bugs usually under high pressure (customers waiting before buying thousands of HP computers), these bugs being related to hardware or software. Client facing. -'owner' of the debug engine technology -wrote the code size optimisation manual used by Phoenix engineers -developed some tools in C/C++

General Manager

CED

Jan 1988 - Dec 1996

9 years

69340 Francheville, France

Main personal developments: -New version of TEC communication program including new functions, adaptation to new processors including Pentium (the IBM IABSC card was designed to be used on PC at 4.77 Mhz. On AT at 6 MHz the card registers cannot follow the data rate). Add a built-in datascope. (Assembler 80X86) -Generic BSC 2780/3780 driver API compatible with ICOM BSC driver but smaller, faster, able to use different ports in asynchronous or synchronous modes with clock generation, more complete protocol implementation. Includes many trouble shooting tools like dialog window, built-in datascope, automatic ports and interrupts recognition, ability to use a different software calling interrupt number (API) and transmit this number to application program, extended error messages, etc... (Assembler 80X86) -Multitask, multiport, multicompatible communication driver for multitask Quarterdeck's Desqview environment. Replaced parts of DOS to allow real-time. (Assembler 80X86) -Multiuser MS-DOS environment based on Desqview multitasking. (Assembler 80X86) -BIOS level generic anti-virus software for MS-DOS, PC-DOS or DR-DOS loaded from floppy partly at boot time. DOS uses CONFIG.SYS and AUTOEXEC.BAT from hard disk unit. Programs see hard disk as boot unit but DOS files are loaded from floppy. Able to restore CMOS configuration. Requires no modification in config files. (Assembler 80X86) -Interface programs and utilities in C/C++ and assembler 80X86 Main intervention domains as a contractor: -Help to develop drivers or resident programs. -Low level debugging. -Teaching on Desqview API as editor's contractor. -Memory management. -Patch programs without source nor documentation. Employees management

Software Engineer

Tokyo Electric Company

Jan 1986 - Dec 1987

2 years

Paris Area, France

-Articles administration in a Hyper Market in compiled GW-Basic. -BSC based communication programs for IBM-PC and HP- 150 to link to TEC cash registers. The upper communication levels are TEC specific and embedded in the program. Developed to be used in batch files or interactively from built-in menus (Assembler 80X86). The stack was developed from scratch.

Field hardware maintenance engineer

EUROTECHNICA

Jan 1985 - Jan 1985

1 month

Paris, France

Skills: Dépannage

Hardware Support Engineer

YREL

Jan 1983 - Jan 1984

1 year 1 month

Paris Area, France

Skills: Dépannage

Test and physical measures technician

EDF

Jan 1978 - Jan 1980

2 years 1 month

Tricastin nuclear power station

The best place to find your next move

© 2026. All Rights Reserved.