Position: Senior Embedded Software Engineer
Category: C++
English level: fluent
Years of experience: 8


I have over 8 years of experience in the IT industry, 10+ years experience in PCB design. I have a solid understanding and knowledge of software and hardware engineering principles and concepts.
I have taken part in the full life cycle of software and hardware development projects, including design from scratch, performance analysis, code refactoring and optimization, bug fixing, porting and re-design software to another platform.

Professional experience and skills:
Software Languages: C, C++, Python
Linux (Kernel Driver, BSP porting)
Experience in developing firmware for real-time based devices (TI-RTOS, ChibiOS, FreeRTOS, OSEK)
In-depth knowledge in developing firmware: bare-metal embedded-C programming
Strong background developing drivers for running sensors into a given system: accelerometers, IMUs, gyroscopes, encoders, barometers, temperature, etc.
Strong skills in new features/enhancements implementation, as well as in debugging and reviewing code
Processors: ARM Cortex-M (M0, M0+, M3, M4, M7), Atmel AVR/NXP/TI, Allwinner A64
In-depth knowledge of several communication protocols such as SPI, I2C, RS232, RS485, CAN, USB
MCU peripherals: CAN, UART, SPI, I2C, ADC, DAC, DMA, Bluetooth, Ethernet, WIFI, LCD, Timer, USB, etc
HW architectures fundamentals
Knowledge of analog and digital circuit design
Strong experience with building products with electronics components: encoding, decoding, circuit simulation
Skilled in designing two or more layer PCBs using software such as Altium Designer and soldering (Up to 0201 size, LQFP, QFN.)
Experience with RF, certifications, measurement, testing
Experience with operate lab equipment (spectrum analyzer, oscilloscope, logic analyzer, power supplies, signal generator)