Elis Purkov

About Me

My name is Elis Purkov and I am a professional embedded system, machine vision, and robot software developer with a strong educational background (graduated from the Faculty of Computer and Information Science, Ljubljana). I have more than 7 years of working experience in the fields of embedded system development, industrial robotics, and complex machine vision applications. I am also a freelancer who likes to work project-based.

  • Age 33
  • Residence Slovenia
  • e-mail info@elispurkov.dev

What I Do

Embedded systems

My primary focus is developing embedded software for ARM, AVR, and ESP32 microcontrollers. My key skills are C/C++ programming and multithreaded applications. I also have strong skills in wireless communication (BLE, WMBus, GSM, Iridium, etc.), as well as low-level (SPI, I2C, UART, etc.) and higher-level (TCP, UDP, MQTT, etc.) protocols.

Industrial robotics

I develop robot software for EPSON, Stäubli, and FANUC industrial robots (SCARA and 6-Axis) with or without a combination of industrial machine vision systems. I also have a vast understanding of industrial communication protocols, such as Profibus, Profinet, RS232, RS485, Modbus, etc.

Machine vision

I design and develop industrial machine vision systems, focusing on using Cognex and Keyence smart systems. I also develop custom vision applications written in .NET using C# with a focus on object-oriented programming. I write custom libraries for third-party frame grabbers and cameras, such as Basler, Opto Engineering, and The Imaging Source. 

Desktop applications

I design and develop custom desktop applications written in .NET for use in the industry. I have a deep understanding of object-oriented principles, test-driven development, design patterns, and other good practices.

Resume

Education

2010 - 2014
Ljubljana Faculty of Computer and Information Science

Computer science

We have been learning various programming languages, such as Java, C, and Python. We have also been learning about computer architecture, database design, embedded systems, signal processing, web technologies, industrial automation, parallel processing, system programming, and Linux.

2006 - 2010
Nova Gorica Technical School Center

Secondary school for computer science

We have been learning various programming languages, such as Java and Python. We have also been learning about networking, databases, logic circuits, and computer architecture in general.

Experience

2020 - Current
EMA d.o.o. (BlueTraker)

Lead firmware developer

My job is to develop custom firmware for smart sensors and satellite tracking and monitoring devices used by fishing boats. I am currently writing firmware for ARM and ESP32 microcontrollers, where my main focus is using FreeRTOS and the development of various custom communication protocols, which use CAN, WMBus, BLE, GSM, IRIDIUM, and other communication channels.

2016 - 2020
Hidria technology center

Machine vision, robotics, and embedded systems specialist

My job was to develop advanced machine vision and robotics applications for big industrial production lines for domestic and international customers. Besides that, I have also been developing PCBs for custom lighting and other controllers, specifically used for machine vision and robotics applications. These controllers had an ARM and an AVR microcontroller, with my own custom firmware.

2015 - 2016
Ljubljana Faculty of Computer and Information Science

Leader of a makerspace

My job was to teach students how to design simple PCBs and how to develop custom firmware for ARM and AVR microcontrollers.

Coding Skills

C

100%

C++

85%

C#

95%

Python

70%

Database Skills

MySQL

80%

SQLite

80%

MSSql

80%

Embedded systems Skills

ARM

95%

AVR

90%

ESP32

90%

Nordic

70%

Networking Skills

TCP

95%

UDP

95%

MQTT

90%

CoAP

60%

RPC

85%

REST

80%

HTTP

75%

Custom protocols

90%

Robotics Skills

EPSON

95%

Stäubli

80%

FANUC

65%

Machine vision Skills

Cognex VisionPro

95%

Cognex In-Sight explorer

90%

Keyence

80%

Other Skills

Automation

95%

Electronics

65%

PCB design

55%

Windows

100%

Linux

80%

TouchGFX

85%

FreeRTOS

90%

Zephyr RTOS

70%

OTA

90%

IO-link wireless

65%

BLE

85%

WMBus

80%

GSM

70%

IRIDIUM

65%

WiFi

80%

Low power embedded programming

90%

Blockchain

65%

Git

90%

CI/CD

90%

Containerization

70%

Knowledges

  • Sales
  • Engineering
  • Social Media
  • Communication
  • Problem-Solving
  • Social Networking
  • Flexibility
  • Project managment
  • Computer science

Certificates

FANUC robotics training

Membership ID: /
Februar 2019

HALCON training

Membership ID: /
September 2018

Cognex VisionPro training

Membership ID: /
September 2016

Portfolio

Multichannel bluetooth RGB controller

Multichannel bluetooth RGB controller

Embedded systems
Multichannel camera light controller

Multichannel camera light controller

Embedded systems
Pneumatic valves bluetooth controller

Pneumatic valves bluetooth controller

Embedded systems
Stepper motor controller

Stepper motor controller

Embedded systems
License usb dongle

License usb dongle

Embedded systems
Multichannel temperature monitoring device

Multichannel temperature monitoring device

Embedded systems
Bluetooth IO controller

Bluetooth IO controller

Embedded systems
6 axis robotic application

6 axis robotic application

Industrial robotics
SCARA robot packing

SCARA robot packing

Industrial robotics
Multiple SCARA robots

Multiple SCARA robots

Industrial robotics
6 axis robot assembly

6 axis robot assembly

Industrial robotics
6 axis robot soldering

6 axis robot soldering

Industrial robotics
Conveyor tracking with a camera (Opticum d.o.o.)

Conveyor tracking with a camera (Opticum d.o.o.)

Industrial robotics

Contact

Slovenia

info@elispurkov.dev

Freelance Available

How Can I Help You?