Informačné technológie a digitálne profesie
Vývojár embedded systémov (alebo firmware inžinier) programuje jednoúčelové počítače, ktoré sú 'vnorené' (embedded) vnútri väčších elektronických alebo mechanických systémov. Píše softvér, ktorý priamo ovláda hardvér a je optimalizovaný na výkon, spotrebu energie a prácu v reálnom čase.
Junior
1 200 EUR
Mid
2 700 EUR
Senior
4 200 EUR
Pre toto povolanie zatiaľ nemáme uloženú zhodu.
Spustiť matching testEmbedded vývojár trávi väčšinu dňa písaním a ladením kódu v jazyku C. Ráno môže pracovať na implementácii nového ovládača pre akcelerometer, pričom študuje datasheet (technický list) súčiastky, aby správne nakonfiguroval I2C komunikáciu. Po napísaní kódu ho skompiluje a nahrá do vývojovej dosky na svojom stole. Pomocou debuggera krok po kroku prechádza kód a na logickom analyzátore sleduje, či je komunikácia korektná. Popoludní rieši bug nahlásený z testovania – napríklad problém s vysokou spotrebou zariadenia v spánkovom režime. Spolupracuje s hardvérovým inžinierom, aby zistili, či je problém v softvéri alebo v hardvéri. Práca je veľmi detailná a vyžaduje hlboké pochopenie interakcie medzi softvérom a hardvérom.
- Návrh a implementácia firmvéru pre mikrokontroléry (MCU) a systémy na čipe (SoC)
- Programovanie v jazykoch C a C++ pre embedded platformy
- Konfigurácia a inicializácia periférií mikrokontroléra (GPIO, ADC, Timers, UART, SPI, I2C)
- Implementácia komunikačných protokolov
- Práca s operačnými systémami reálneho času (RTOS), napr. FreeRTOS, Zephyr
- Optimalizácia kódu pre nízku spotrebu energie a vysoký výkon
- Oživovanie a ladenie hardvéru (debugging) pomocou JTAG/SWD debugerov a logických analyzátorov
- Tvorba a údržba ovládačov (drivers) pre senzory a iné komponenty
- Implementácia a testovanie bootloaderov a OTA (Over-the-Air) aktualizácií
- Písanie unit testov a integračných testov pre firmvér
Odporúčaná úroveň: Stredoškolské vzdelanie alebo odborné učilište
Odporúčané odbory: Informatika, Elektrotechnika, Programovanie embedded systémov
Odporúčané slovenské školy
- Stredná priemyselná škola elektrotechnická v Bratislave
- Stredná odborná škola elektrotechnická v Košiciach
- Stredná odborná škola informatiky a výpočtovej techniky v Bratislave
- Fakulta elektrotechniky a informatiky STU v Bratislave
Odporúčané zahraničné školy
- České vysoké učení technické v Praze (Česká republika)
- Vysoké učení technické v Brne (Česká republika)
- Technická univerzita v Liberci (Česká republika)
- University of California, Berkeley (USA)
Alternatívne vzdelávanie: Odborné kurzy zamerané na programovanie embedded systémov, ako aj online platformy ako Coursera alebo Udemy ponúkajúce kurzy v oblasti C/C++ programovania a RTOS.
Všeobecné zručnosti
- Riešenie problémov na nízkej úrovni10/10
- Logické a systematické myslenie10/10
- Trpezlivosť a vytrvalosť pri ladení10/10
- Schopnosť čítať a rozumieť technickej dokumentácii10/10
- Preciznosť a zmysel pre detail9/10
- Optimalizačné myslenie (výkon, pamäť, spotreba)9/10
- Samostatnosť8/10
- Spolupráca s hardvérovým tímom8/10
Špecifické vedomosti
- Programovací jazyk C10/10
- Architektúra mikrokontrolérov (ARM Cortex-M, RISC-V)9/10
- Komunikačné protokoly (UART, I2C, SPI, CAN, Ethernet)9/10
- Princípy práce s hardvérom (prerušenia, DMA, registre)9/10
- Techniky ladenia (debugging)9/10
- Programovací jazyk C++ (pre embedded)8/10
- Operačné systémy reálneho času (RTOS), napr. FreeRTOS8/10
- Správa pamäte v embedded systémoch8/10
Technické zručnosti
- Git9/10
- JTAG/SWD Debuggery (napr. J-Link, ST-Link)9/10
- Vývojové prostredia (IDE) (napr. VS Code s PlatformIO, IAR, Keil, STM32CubeIDE)9/10
- Logický analyzátor, Osciloskop8/10
- Build systémy (CMake, Make)7/10
- Statická analýza kódu a unit testing frameworky (napr. CppUTest, Unity)6/10
- Skriptovacie jazyky (Python, Bash) pre automatizáciu6/10
- Docker (pre build prostredia)5/10
Kariérna cesta
Kariérny postup od juniorných pozícií po seniorné role
Firmware Architect
Team Leader pre embedded vývoj
Senior embedded vývojár
Linux embedded vývojár
Vývojár embedded systémov
Junior programátor
Junior programátor sa zapája do vývoja softvéru a podpory technických projektov.
Asistent v oblasti vývoja softvéru
Asistent v oblasti vývoja softvéru pomáha pri programovaní a testovaní softvéru pre rôzne aplikácie.
Chceš si túto cestu naplánovať? Otvor ju na mape kariér →