
Oleg Kokorin
Senior Embedded System Engineer
Salary / Daily rate
Antibes, France
Freelance
Skills
Languages
About me
Intro
Freelance embedded systems engineer with 8+ years serving Schneider Electric, Honeywell, NXP, Intel & Samsung. Expert in Linux BSP development, Yocto/FreeRTOS, and multi-threaded IoT architectures with proven DMA optimization and kernel driver development. Ready to deliver robust embedded solutions from FPGA to production deployment.
Work experience
Embedded Software Engineer
Slinex InternationalFreelance
Oct 2021 - Present
5 years 1 month
Europe · Remote
Revise toolchain build scripts, update package versions, and resolve dependencies for the buildroot tree. Debug and enhance MTD uboot/kernel subsystem recovery support. Port rockchip support for libdrm, implementing meson cross-compilation configuration and migrating from Python 2 to Python 3. Address kernel boot freeze, patch DTS with unlocking clause, and backport dwc/rockchip PCIE-bus driver from 5.x to 4.x kernel. Investigate CSI camera viewfinder software stack requirements and troubleshoot Linux kernel eSata subsystem sleep/wakeup issues. Additionally, migrate a Gentoo-based build system to Yocto, transition sysvinit applications/daemons to systemd, and implement remote control unit firmware detection/upgrade. Conduct Broadcom chipset BSP GPIO configuration debugging. Proficient in Ubuntu/Gentoo/Yocto Linux, Broadcom ARM SoC, eSata, Docker, systemd, Git, GitLab, Jira, CLion, Sublime, Confluence, GCC, GDB, Python 3, Devtool, Bitbake, Repo, Vim, Emacs, Meld, GitHub, pipelines, CI/CD.
freelance embedded system engineer
FreelanceFreelance
Jan 2016 - Present
10 years 10 months
Schneider Electric, Honeywell, NXP, Intel, ST Micro, Silicon Labs, Philips Semi, Texas Instruments, Samsung Electronics projects participation experience. Linux based devenv Gentoo, Debian, Ubuntu, Yocto, Buildroot, Docker, VmWare, VirtualBox based. Eclipse, CLion, VIM, EMacs development editors. Intel, Xilinx, STMicro, Renesas, Silicon Labs, TI, Rockchip chipset experience. VHDL,Python,C,C++,bash,make,cmake languages. USB, UART, BLE, spi, 1-wire, i2s, i2c, MDIO, SDIO, GPIO, PWM, RTC, DSI, CSI, LVDS, SATA, SCSI, 1394/FireWire, PCMCIA, ExpressCard, JTAG, CAN, NIC interfaces
Embedded System Engineer
Agilent
May 2024 - May 2025
1 year 1 month
Remote, OR 97458, USA
Worked on an industrial IoT autonomous system where I ported and fine-tuned the DTS for a custom board and re-architected legacy super-loop firmware into a clean, multi-threaded, event-driven structure. I designed a DMA-driven dual-thread AT command parser with event-based post-processing, and integrated BLE functionality using SIMCOM A7672 — supporting both Microchip and Nordic proprietary services. I also handled NMEA GNSS data parsing and exposed location data over BLE using custom GATT navigation characteristics. For user interaction, I built a terminal-style command-line interface accessible via BLE.
Embedded System Engineer
FeeligreenFreelance
Sep 2020 - Oct 2022
2 years 2 months
06560 Valbonne, France
freertos multi thread software architecture. dac/adc DMA based data processing. bootloader, power management, hysteresis based pwm with active feedback closed loop. USB acm command line. internal flash data logger and firmware upgrade. stm32L4 series.
Embedded Software Engineer
Schneider ElectricFreelance
Jan 2021 - Jan 2022
1 year 1 month
Carros, France
Adapting Yocto-based firmware recipes from Rocko to Dunfell, migrating Linux 4.9 patches/drivers to 5.4, and troubleshooting TPM system drivers/libraries/applications. Transitioning SysVInit applications/daemons to systemd, addressing an out-of-memory issue with 25% RAM availability, and analyzing core dumps. Implementing cybersecurity iptables rules patches, debugging Linux 5.4 MTD drivers, and backporting QEMU usability for specific kernel versions. Proficient in Ubuntu/Debian/Yocto Linux, Renesas ARM RZN1, MTD, TPM, Docker, systemd, Git, GitLab, Jira, CLion, Sublime, Confluence, GCC, GDB, Python3, Devtool, BitBake, Repo, Vim, Emacs, Meld, GitHub, CI/CD pipelines
Embedded Software Engineer
HoneywellFreelance
Jan 2020 - Jan 2021
1 year 1 month
06250 Mougins, France
Create and optimize software functionality for NXP iMX6 Yocto Linux systems, incorporating BLE GATT profile command handling using bluez5 for iOS and Android clients. Develop firmware for NXP JN516x for BLE, ZigBee, and 6LoWPAN communication. Port lower power applications to STM32L4 with FreeRTOS. Backport/embed Yocto recipes for Linux compatibility. Construct a multithreaded C++ application with MQTT and ZMQ brokers for inter-thread and inter-process communication. Debug serial-based microcontroller interconnectivity, firmware upgrades (OTG), and BLE emission region specifics.
Embedded Software Engineer
NXP SemiconductorsFreelance
Sep 2018 - Jan 2020
1 year 5 months
Mougins, France · Hybrid
Provide support for the integration of hardware in an acoustic laboratory. Develop USB device descriptors to enable multichannel constant audio streaming for playback and recording. Implement hardware support for the iMXRT10xx series using DMA for storage, audio, and memory management. Optimize threading and performance in Amazon FreeRTOS.
Embedded Software Engineer
SFRFreelance
Apr 2017 - Aug 2018
1 year 5 months
Greater Marseille Metropolitan Area · Hybrid
Fix and implement Yocto Linux recipes, focusing on encrypted boot/rootfs filesystem images, Python, and 3rd party library packages for various product targets. Integrate FPGA bitstreams and DSP firmware, and debug board interfaces. Develop Linux kernel IIO drivers, BSP, device-tree pinmux, and interface mapping. Implement Python-based event-driven UI with AVR, audio resampler, and Hayes commands parser for voice events/messages playback. Engage in OpenWRT/LEDE-based SOHO router software development and BSP integration. Validate software for Silabs EFM8 MCU and conduct Broadcom SoC hardware design and software integration. Configure Docker for the Linux toolchain and assist in Broadcom BSP compilation. Conduct reverse engineering of XML Schema for existing configurations and future data management with TR-069.
Embedded System Engineer
AirdogFreelance
Sep 2016 - Oct 2017
1 year 2 months
Latvia · Remote
nuttx and Linux flight stack. lidar and multi camera CV for objects/obstacles proximity. Xilinx FPGA, VHDL, drivers, IMU modules electronic design supervision/management. Accel, gyro, compas, gnss components evaluation/drivers implementation.
SoC verification and BSP development engineer
Intel CorporationFreelance
Jan 2016 - Mar 2017
1 year 3 months
Dublin, Ireland
Support the design, development, and porting of Arduino, Yocto, and Android build systems BSP. Implement a Cordova UI-based IoT peripherals management interface. Validate and support IoT SoC (D2000/Atlas) BSP using Python-based validation scripts and C code test cases. Conduct validation of X86 and MIPS dual-core shared peripherals SoC, including driver development and BSP debugging/enhancement. Port and debug Linux kernel GPIB modules, perform oscilloscope signal level validation, and validate logic analyzer interfaces. Address power management, RTC, Always-On GPIO, interrupt controller, slow down clocking timing adjustment, and various communication interfaces (SPI, I2C, UART, PWM, I2S, Maxim 1wire). Integrate RTOS services, validate CPLD XC95xxXL based IO RTL, and write Python verification scripts. Utilize tools such as Linux Fedora, Eclipse, Python (pyserial, nanpy, pyvisa, nose, matplot, scipy), ThreadX, Xilinx ISE, VHDL, GIT, Gerrit, avrdude, bitbake, repo, xc3sprog, iMpact, oscilloscope, and logic analyzer.
embedded systems architect
NodBox
Sep 2009 - Aug 2016
7 years
France · Hybrid
Research/Science: Analyze Engine Control Unit (ECU) algorithms to minimize fuel consumption. Fed Matlab with vehicle routing telemetry data to improve algorithms based on real roads experience. Record real-time data on camshaft ahead angle, air pressure, position, temperature, and humidity for algorithm optimization. Measure exhaust gasses nitrogen mixture for optimal CO reduction. Hybrid cars fuel cycle and battery charge balancing. Design/Development/Porting: Integrate software and pcores for Xilinx Virtex/Spartan/Zynq running Microblaze, ThreadX, TrustZone, ARM, and PowerPC. Research platform portability to migrate the existing automotive stack to PowerPC for performance comparison. Optimize interrupt handling latency for smooth system response, especially for automotive CAN Flexray data rate and large data support. Design, implement, and port VHDL/Verilog-based drivers for Xilinx FPGA Autosar, covering various peripheral interfaces. Assist in high-level PCB layout design, including elements embedding and ensuring radio interference respect.
video/bsp development engineer
STMicroelectronicsFreelance
Jun 2007 - Aug 2009
2 years 3 months
France · Hybrid
Developed UIQ/S60 viewfinder, incorporating DSP functionality. Architected boot-time device-tree like hardware autodetection and profiling based on common sensors information database, configuring board-dependent settings, and camera and flash-light configuration pickup.Addressed i2c/CSI protocol issues related to speed and platform initialization system. Ported FAT32 filesystem support for SD/MMC card readers. Mitigated DSP/IRP interference through firmware multiversion configuration, traces/logs automated decoding script, dynamic bootloader memory allocation, and config-dependent IRP multiboot.
Porting/Integration embedded software engineer
Silicon LaboratoriesFreelance
Apr 2006 - May 2007
1 year 2 months
France · Hybrid
Designed a common driver architecture for the cameras and ported for Toshiba TCM8230 and Omnivision OV7660. Formulated universal requirements for optimizing performance in mobile cameras. Designed a versatile API supporting linear, circular, and double-buffer functionalities for 4905/4701 DSPs. Engineered a camera protocol URI parser for the mobile multimedia interface. Created an audio mono/stereo resampler for the 4905 DSP operating in the 8-48KHz range.
Integration Engineer
Philips SemiconductorsFreelance
Sep 2004 - Mar 2006
1 year 7 months
France · Hybrid
Developed and debugged a DSP integration environment, creating a bit-compatible simulation for data processing. Designed and implemented a configuration management utility for Atmosphere batch and debug modes, along with an execution helper. Established an export configuration system with a DSP execution parser. Implemented an ARM to DSP DMA-based playback/recording loop-buffer with an interrupt-handling triggered refill mechanism. This mechanism supports dynamic TDMA-based input data with an adjustable frame counter for input/output operations.
embedded software development and Integration engineer
Texas InstrumentsFreelance
Sep 2003 - Oct 2004
1 year 2 months
France · On-site
Designed, developed, and debugged audio path validation environment, enhancing BSP with audio multi-channels commutation and redirection. Participated in OMAP Linux/Nucleus port integration, CCS setup. Successfully created and delivered a fully firmware Obigo framework based, including (SMS, MMS, EMS) ARM7 running Nucleus OS. Contributed to the porting u-boot OMAP family boards. Assisted in integrating and debugging the Obigo framework into the Nucleus RTOS platform. Conducted extensive debugging, performance research, and power consumption optimization activities.
embedded software development and Integration engineer
Samsung Electronics
Jan 2002 - Aug 2003
1 year 8 months
South Korea · On-site
Developed codecs with dynamic image rescaling for Nucleus mobile RTOS. Addressed critical issues, including debugging a JPEG decoding crash. Researched and outlined a mobile cross-platform migration procedure and Qtopia-based GUI integration plan for Linux mobile platforms. Contributed to porting and debugging the MP4 codec on TI OMAP and Ericsson (EMP) framework/OS. Created integration documents for EMP OS and mobile platform, covering SMS, MMS, EMS, SyncML, WAP integration, and various functionalities. Guided kernel porting for MIPS and ARM-based mobile platforms, integrating SMS, MMS, and EMS libraries.
Software Development Engineer
Comverse Network Systems
Jan 2000 - Oct 2001
1 year 10 months
Sites, CA 95987, USA
Created and deployed voice-based management interfaces for web browsing and email reading on cellular WAP-enabled phones. Engineered voice directory services with a protocol recognizing search and navigation commands using DTMF-based commands. Integrated an MMS-synthesis library for the information delivery subsystem. Utilized UML modeling tool AccessMax to merge, enhance, and modify business logic for both KDI and IDO service providers. The C source code was generated as part of the process.
Education
Taras Shevchenko National University of Kyiv
MS, Computer Science
1992 - 1998
6 years 1 month
Activities and societies: Laboratory of Information Sciences and Computer Engineering Sr.System Administrator