Andrei Gramakov

CV - Web Version

Current Version: 09-Apr-2024
Latest version:




I am an electronics engineer focused on embedded systems. My experience includes working in small teams and large multinational corporations in different areas - space, aircraft, IoT, industrial automation, semiconductors.

I have strong knowledge of C, C++, and Python and a good understanding of electronics from bits to complex electronic systems.

My experience allows me to develop an effective software architecture and support my team in the development process.


Portfolio online:
(code examples, open source projects, etc.)

Programming languagesC, C++, Python, PowerShell
Processor architecturesARM (STM32 series), AVR8 (ATTiny/ATMega series), GreenArray F18 (GA144), RISC-V, SPARCv8 (LEON3), Xtensa (ESP32 series)
Communication protocolsARINC 429, CAN, CIP, I2C, RS-232, RS-422, RS-485, OPC UA, SPI, USB
Tools and technologiesGDB, Microsoft DAP, OpenOCD, C++ STL, FreeRTOS, OpenCV, CI/CD, Docker, Git, SVN, Bash, PowerShell, Agile, GitLab, GitHub, Jira, Redmine, SCRUM, SOLID
PCB and schematic softwareAltium Designer, EAGLE CAD, Proteus, MultiSim, KiCAD
CAD softwareAutodesk Inventor, Autodesk AutoCAD, Fusion 360, SolidWorks
Mathematical modelingMathCAD, MATLAB, Octave, SciPy
DatabasesMS Access, SQL


  • English Professional working proficiency (B2)
  • Russian Native proficiency (C2)
  • Czech Elementary proficiency (A2)


Master’s degree / Specialist degree

Bauman Moscow State Technical University (2007-2013)

  • Major: Radio-Electronic Systems and Devices
  • Minor: Laser Location and Communication Systems
  • Thesis: “Development of Microsatellite’s Onboard Hardware Complex”

Ph.D., not completed

Bauman Moscow State Technical University (2013-2017)

  • Thesis: “Unified Radio- and Optoelectronic Remote Sensing”

Employment History

Senior Embedded Software Engineer

2N TELEKOMUNIKACE, an Axis Company - Prague, Czech Republic
May 2023 - Now
~ 1 year

Firmware development for NFC card readers, fingerprint sensors, and other access control devices. Integration of the devices with the main unit Linux software. Typical tasks:

  • Firmware development
  • Extensive debugging
  • Code review
  • Providing help and support to teammates


  • Software architecture development for a new version of a card reader.
  • Establishing a Unit Testing environment and integrating it in the operational process.
  • >10 new features delivered

I also caused a significant positive impact on the team culture and work process:

  • Revised polished and crystalized the team development workflow according to the AGILE principles.
  • Established an effective information exchange in the team through a team internal documentation, established a team book library.
  • Actively participating in the integration of AI technologies in the company development practices

Technology Stack

C, C++, Python, Git, ARM, STM32, NFC, RFID, OSDP, Jira, SCRUM

Senior Embedded Software Engineer

Rockwell Automation - Prague, Czech Republic
February 2021 - April 2023
2 years 3 months


Development of firmware for industrial automation computers. In detail:

Typical tasks:

  • Development of MISRA-compatible firmware code according to the High-Level documentation
  • Unit tests development
  • Code review
  • Providing help and support to teammates


  • Development features by design requirements (about 80 closed stories):
    • Sequence Manager - an entity for organizing complex technological processes into easily manageable sequences and subsequently, provide step-by-step implementations for each sequence.
    • Implementation of a new OSAL for a future device
    • Writing unit tests
  • Fixing bugs (about 50 fixed and closed exceptions)
  • Code Reviewing (more than 100 reviews as the main reviewer)

Besides software development, I have actively engaged in fostering a positive team culture and driving organizational improvements within the company. Some of the key initiatives I have undertaken include:

  • Revamping the New Employee Onboarding Process: I played a main role in revitalizing the onboarding process for new employees, ensuring a smooth transition for developers worldwide.
  • Creating a Learning-Supportive Environment: Collaborating with the team lead, I established an environment that promotes continuous learning within the team. This involved organizing regular team-wide learning sessions and allocating dedicated time for individual learning endeavors. I personally led five learning sessions to facilitate knowledge sharing and growth.
  • Enhancing Team Communication and Collaboration: To foster effective communication and collaboration, I introduced a series of meetings for reviewing team rules, synchronizing efforts at the start of each sprint, and ensuring alignment midway through.
  • Developing an Extensive Team Documentation Space: Recognizing the importance of easy access to information, I spearheaded the development of a comprehensive team documentation repository. This resource ensures that team members have quick and convenient access to critical information, enabling smoother project execution and knowledge sharing.

Technology Stack

C, C++, Python, Git, ARM, ABOS, OPC UA, PLC, MISRA, Logix Designer, Common Industrial Protocol (CIP), GitLab, SAFe, SCRUM

Embedded Software Engineer

Espressif Systems - Brno, Czech Republic
January 2019 - December 2020
2 years

Activity: Development of tools and drivers for ESP-based processors. Involved in the development of debugging tools like OpenOCD and GDB. Implementing and developing of debug module based on the DAP protocol; Implementing and developing a USB driver for ESP32-S2 chip based on TinyUSB stack.


  • Debugging tools development (Debug adapter for ESP-IDF VSCode Extension, OpenOCD)
  • Middleware driver development (ESP-IDF framework)
  • Unit tests development
  • Preparing trainings for colleagues

Technology Stack

C, C++, Python, Git, ESP-IDF, USB, VSCode Extensions; Powershell, CI, Docker, GitHub, FreeRTOS, TinyUSB, Xtensa, Raspberry Pi, Microsoft DAP, OpenOCD

Embedded Systems Programmer

Scientific Production Enterprise Digital Solutions - Moscow, Russia
January 2018 - September 2018
9 months

Activity: I worked with SPARC and RISC-V-based processors projects, and with Sputnik processor (ARM architecture). I developed libraries for interactions with processors and peripherals; I developed tests and testing software for developed processors, their peripherals and memory; debugged code with HDL models, FPGA, and prototype layouts. All developed ICs are for spacecraft purposes.

Typical tasks:

  • Processor design verification
  • Low-level driver development
  • Unit-tests development
  • Development of debugging tools

Technology Stack

C, C++, Python, SVN, GIT, Cadence, SPARC V8, RISC-V, ARM, AMBA, I2C, SPI, RS-232, RS-422, RS-485, SpaceWire, CAN, RTOS, FreeRTOS

Chief Specialist of Flight Test Instrumentation Department

Sukhoi Civil Aircraft - Moscow, Russia
June 2017 - December 2017
7 months

Activity: I worked with Sukhoi Superjet 100 aircraft. My main duty was preparing the Measuring Onboard Systems for qualification trials. I programmed aircraft systems according to the sensor set, developed SQL databases, wrote Python programs for information processing, and worked with measure sensors and tools.


  • Preparing hardware and software for coming trials
  • Modeling trials and troubleshooting on aviation simulator
  • Development of UI for trials
  • Sensor nomenclature accounting
  • Sensor database development

Technology Stack

C#, XAML, Visual Studio, MS Access, Python, MySQL, Entity relationship diagram (ERD), Acra KAM-500, ARINC 429, AFDX, Thermal Sensors

Electronics Engineer

Bauman Moscow State Technical University - Moscow, Russia
September 2015 - July 2018
3 years 11 months

Activity: My main area was in space data processing and recognition of the space satellites data. In parallel with work projects, I was doing image recognition research.


  • Research and development in space imagery (image recognition)
  • Development of experiments and experimental stands in support of current research

Technology Stack

Python, SciPy, OpenCV, Visual Studio, Eclipse, Octave, MATLAB, Autodesk Inventor, CCD devices, IR-, Vis-, UF- imagery devices, Raspberry Pi, ARM, STM32, CANbus, SPI, I2C, RS-232

Electronics Engineer

Research Institute of Radio-electronic Technologies (BMSTU) - Moscow, Russia
August 2012 - September 2015
3 years 2 months

Activity: My work in the Research Institute was in the field of optoelectronic imagery systems for spacecraft and providing research in space satellite imagery systems.


  • Preparing on-ground demonstration of the satellite’s (Chibis-M) system with our modification
  • Research and development in space imagery (image recognition)
  • Teaching Electronic Components Course for Bauman students

Technology Stack

C, C++, Python, ColorForth, MATLAB, Visual Studio, AtmelStudio, Autodesk Inventor, Arduino, AVR, CANbus, CCD devices, CANbus


Personal characteristicsproactive, collaborative, team player, positive, enthusiastic, consistent, detail-oriented
Hobbiesrobotics, wood crafting, fine arts, literature