Yevgeniy Yermakov

Senior Software Engineer — Robotics, Embedded Linux & Industrial Automation

Belgrade, Serbia

Summary

Software engineer with 15+ years of experience across embedded Linux, large-scale device infrastructure and industrial automation, now focused on robotic control systems. Developed ROS 2 control software for warehouse robots, migrated a robotic depalletizer from a custom monolith to ROS 2, and built simulation-based CI testing that validates controllers without physical hardware. Earlier designed and ran a distributed platform serving 30,000+ remote Linux devices in production for 5+ years, with OTA updates and automated remote diagnostics. Experience spans firmware and industrial protocols up to backend services and CI/CD.

Experience

Robotics Software Engineer · Yandex

Aug 2024 – Sep 2026

Belgrade, Serbia

  • Developed control software (Python, C++) for 6-axis industrial robotic manipulators and collaborative robots used in warehouse automation systems
  • Migrated a robotic depalletizer from a custom monolith to a ROS 2-based distributed control architecture, unifying the codebase with other robotic systems and making it testable in CI
  • Developed motion planning and trajectory execution modules for pick-and-place cycles
  • Integrated industrial barcode scanning cameras into a robotic order consolidation system, enabling automated product identification during picking
  • Built an NVIDIA Isaac Sim-based digital twin of a robotic depalletizer, enabling controller testing without access to physical hardware
  • Integrated simulation-based tests into CI to run on every merge, catching controller regressions before deployment to physical robots and reducing manual testing
  • Contributed to robotic manipulator integration with an AMR platform via a robot management system (RMS)
  • Performed on-site debugging, hardware calibration and production setup

Career Break · Relocation to Serbia and professional development

Aug 2023 – Aug 2024

Senior Software Engineer · NPK ROTEK

Nov 2011 – Aug 2023

Moscow, Russia

  • Developed embedded Linux solutions (ARM, Buildroot) for industrial and home automation systems
  • Built and maintained embedded Linux-based automatic meter reading (AMR) and monitoring devices (C, Python, Flask, SQLite; OPC UA, MQTT, SNMP, Modbus)
  • Designed and maintained distributed infrastructure supporting 30,000+ remote Linux devices, running in production for 5+ years
  • Implemented OTA software updates enabling remote deployment across the fleet without on-site intervention
  • Developed automated remote diagnostics that proactively detected device faults, reducing downtime and on-site maintenance visits (Python, Ansible, Zabbix)
  • Developed data collection services for utility metering devices (Python, C++)
  • Built backend services in a microservice architecture (Flask, Django, PostgreSQL, MySQL, RabbitMQ, MQTT, Docker)
  • Built CI/CD pipelines for embedded Linux development, including cross-compilation, automated firmware builds, testing and deployment
  • Integrated wired and wireless sensors (Z-Wave), actuators and video monitoring systems into a smart home controller
  • Implemented TR-069 remote device management protocol in Wi-Fi router firmware (Linux, C)

FPGA Engineer · NIIVK im. M. A. Kartseva

2009 – 2011

Moscow, Russia

  • Designed and implemented digital logic on FPGA using Verilog
  • Implemented automated regression testing using Python
  • Developed stimulus generators and validation scripts for RTL verification

Technical skills

Languages
PythonC++CBashSQLVerilog
Robotics
ROS 2Motion planning & trajectory executionIndustrial manipulators (KUKA)Collaborative robots (Universal Robots)NVIDIA Isaac Sim (digital twin)OpenCVNumPyIndustrial barcode scannersHardware calibrationOn-site deployment
Embedded
Embedded LinuxBuildrootCross-compilation & toolchainsU-BootsystemdARM platformsRS-485 / RS-232 device driversGSM module integrationZ-Wave sensor integrationFPGA / RTL design (Verilog)
Protocols & Networking
OPC UAMQTTModbusSNMPTR-069TCP/IPVPNVLANWireshark
Backend & Data
FlaskDjangoREST API designMicroservicesRabbitMQPostgreSQLSQLite
Development
GitSVNAI-assisted development (Claude Code, Cursor)Unit & integration testingTest-driven development
Infrastructure
DockerLXCAnsibleJenkinsCI/CD pipelinesZabbix
Spoken
Russian (native)English (professional working)Serbian (elementary)

Education

Moscow State Automobile and Road Technical University (MADI)

2006 – 2011

Engineer’s Degree (5-year specialist), Automated Systems for Information Processing and Control

Coursework: control theory, computer architecture, operating systems, microprocessor systems, digital electronics, computer networks, databases, software engineering, data structures, discrete mathematics, numerical methods, probability & statistics, linear algebra.