Andreja Tonev, Developer in Parma, Province of Parma, Italy
Andreja is available for hire
Hire Andreja

Andreja Tonev

Verified Expert  in Engineering

Software Developer

Location
Parma, Province of Parma, Italy
Toptal Member Since
February 8, 2020

Andreja is an experienced C and C++ software engineer with an extensive background in embedded and automotive software. He specializes in the development of architecture, bare-bones digital signal processors (DSP), ARM chips running real-time operating systems (RTOS), embedded Linux, full desktop Linux systems, and custom hardware and OS solutions.

Portfolio

Ambarella, Inc.
Embedded Hardware, Cross-platform, C++, Linux, Embedded C++, Embedded Systems...
Ferrari Spa
Cross-platform, Embedded Hardware, Jira, AUTOSAR, Simulink, MATLAB...
Rimac Automobili, d.o.o.
Cross-platform, Embedded Hardware, Yocto, Robot Operating System (ROS), C++, C...

Experience

Availability

Part-time

Preferred Environment

CMake, Valgrind, GNU Debugger (GDB), GCC, KDevelop, C++, Linux, Embedded C++, Embedded Linux, Embedded Software

The most amazing...

...project I've worked on is an open-source library; CABpp.

Work Experience

Senior Algorithm Engineer

2018 - PRESENT
Ambarella, Inc.
  • Developed multiple libraries used to communicate with and control the company's custom hardware.
  • Took on and improved several pre-existing projects.
  • Communicated and worked in sync with colleagues on a global scale.
Technologies: Embedded Hardware, Cross-platform, C++, Linux, Embedded C++, Embedded Systems, Embedded C, Embedded Linux, Embedded Software, ARM Embedded, Microprocessors, Electronic Sensors, Hardware, C, Jira, Bash, Git, Parallel Programming, Concurrent Programming, GCC, GNU Debugger (GDB), Valgrind, Image Processing, Microcontrollers, Robotics

Embedded Software Developer

2017 - 2018
Ferrari Spa
  • Adapted to new technical challenges and became an integral part of the team.
  • Tracked tasks and software bugs using Jira and Bitbucket.
  • Participated in the development of software with an extensive pre-existing library.
Technologies: Cross-platform, Embedded Hardware, Jira, AUTOSAR, Simulink, MATLAB, Embedded C++, Embedded Systems, Embedded C, Embedded Software, ISO 26262, Microprocessors, Electronic Sensors, C, Git

Embedded Software Developer

2016 - 2017
Rimac Automobili, d.o.o.
  • Developed both low-level and high-level portions of the Greyp bike system.
  • Implemented protocols used for quality control and bug tracking.
  • Adapted to a new environment and development tools while furthering the production of the project.
Technologies: Cross-platform, Embedded Hardware, Yocto, Robot Operating System (ROS), C++, C, Real-time Operating System (RTOS), Linux, Embedded C++, Embedded Systems, Embedded C, Embedded Linux, Embedded Software, ARM Embedded, Microprocessors, Bluetooth, Electronic Sensors, Hardware, Bash, Git, Parallel Programming, Concurrent Programming, GCC, GNU Debugger (GDB), Valgrind, Microcontroller Programming, Microcontrollers, Robotics

C++ Header-only Library Implementing a Cyclic Asynchronous Buffer

https://github.com/andrejtonev/cabpp
Cyclic Asynchronous Buffer (CAB) is a communication mechanism used between periodic tasks. CAB architecture implements a block-free buffer, where reading from it returns the last value written to it. It is used to ensure consistent real-time execution and, in some cases, for better performance. The project implements architecture using modern C++. While the architecture has been implemented before in low-level C, my library allows for easy inclusion at a higher level using a novel C++ methodology.
2015 - 2016

Master's Degree in Electrical Engineering

University of Belgrade - Belgrade, Serbia

2011 - 2015

Bachelor's Degree in Electrical Engineering

University of Belgrade - Belgrade, Serbia

Tools

Git, MATLAB, CMake, GCC, GNU Debugger (GDB), Valgrind, Jira

Languages

C++, Simulink, C, Embedded C++, Embedded C, Bash

Paradigms

Parallel Programming, Concurrent Programming, Cross-platform

Platforms

Embedded Linux, Linux

Other

Embedded Systems, Embedded Hardware, Embedded Software, ARM Embedded, Microprocessors, Microcontroller Programming, Microcontrollers, Non-blocking I/O, Motor Control, Electronic Sensors, Hardware, Robotics, AUTOSAR, Real-time Operating System (RTOS), Yocto, Robot Operating System (ROS), ISO 26262, Bluetooth, Image Processing

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring