Embedded Software Engineer / Programista Systemów Wbudowanych
Develops and maintains C/C++ firmware for microcontroller-based devices — including autonomous, sensor-driven control systems — at a Polish space-tech company building satellite optical instruments and industrial vision systems. Day to day: RTOS work, peripheral drivers (UART/SPI/I²C), and hardware-level debugging, hybrid from Wrocław.
- Compensation
- Not disclosed
- Location
- Not listed
- Work setup
- Hybrid
- Seniority
- Not specified
- Employment
- Full time
- Experience
- Not specified
- Category
- Embedded
- Posted
Skills
Must have
- Practical knowledge of C/C++ in embedded systems
- Experience with microcontrollers and embedded environment constraints
- Understanding of peripheral communication
- Familiarity with real-time systems
- Ability to read schematics, technical documentation and datasheets
- Basic ability to work with oscilloscope, logic analyzer and multimeter
- Systematic diagnosis of hardware-software faults
- Knowledge of Git
- English sufficient for technical documentation and communicating with an English-speaking contractor
Nice to have
- Experience with STM32, ARM Cortex-M and FreeRTOS/Zephyr
- FPGA development experience
- Experience with CMake, GCC, GDB
- Python for automation, testing and measurement stations
- Experience with hardware-in-the-loop testing, CI/CD or microcontroller simulation (e.g. Renode)
- Knowledge of bootloaders and remote firmware updates
- Basics of automation, controllers and measurement systems
- Fundamentals of signal integrity, power and digital bus diagnostics
Full description
Embedded Software Engineer / Programista Systemów Wbudowanych
Dział Oprogramowania • Wrocław (praca hybrydowa) • Mid/Senior • Pełny etat / B2B
O Scanway
Scanway to polski lider w dziedzinie technologii obserwacji optycznej Ziemi z kosmosu i jeden z czołowych przedstawicieli sektora New Space w Europie. Od ponad 10 lat rozwijamy zaawansowane instrumenty optyczne dla misji satelitarnych (m.in. STAR VIBE – najdłużej działający polski satelita obserwacyjny) oraz systemy wizyjne dla automatyki przemysłowej. Nasz zespół to ponad 100 doświadczonych inżynierów, projektantów, optyków i specjalistów, pracujących w nowoczesnym laboratorium i pomieszczeniach czystych (cleanroom) we Wrocławiu.
Szukamy programisty systemów wbudowanych, który będzie rozwijać i utrzymywać firmware urządzeń opartych na mikrokontrolerach. Jednym z głównych obszarów pracy będą autonomiczne systemy sterowania w oparciu o dane z sensorów, w środowisku czasu rzeczywistego i z wykorzystaniem wybranych interfejsów niskopoziomowych i przemysłowych. To rola łącząca programowanie w C z pracą na rzeczywistym sprzęcie. Nie oczekujemy projektowania elektroniki od zera, ale ważna jest umiejętność czytania schematów, dokumentacji układów oraz diagnozowania problemów w hardware (poziom PCB).
Twój zakres obowiązków
- Utrzymanie i rozwój istniejącego firmware w języku C/C++.
- Analiza błędów występujących na styku oprogramowania i elektroniki.
- Rozwój sterowników urządzeń oraz obsługa interfejsów UART, SPI, I²C, GPIO, timerów itp.
- Praca z RTOS: zadania, synchronizacja, komunikacja i problemy współbieżności.
- Rozwój komunikacji z hostami, w tym protokołów binarnych i interfejsów przemysłowych.
- Uruchamianie, programowanie i debugowanie urządzeń.
- Wykonywanie podstawowych pomiarów oscyloskopem, analizatorem stanów logicznych i multimetrem.
- Tworzenie testów integracyjnych oraz testów wykonywanych na rzeczywistym sprzęcie.
- Udział w code review, dokumentowaniu zmian i utrzymaniu procesu CI.
- Współpraca przy uruchamianiu nowych wersji sprzętu i diagnozowaniu problemów produkcyjnych.
Nasze wymagania
- Praktyczna znajomość języka C/C++ w systemach wbudowanych.
- Doświadczenie z mikrokontrolerami i ograniczeniami środowisk embedded.
- Rozumienie komunikacji z peryferiami.
- Znajomość systemów czasu rzeczywistego.
- Umiejętność czytania schematów oraz dokumentacji technicznej i not katalogowych.
- Podstawowa umiejętność pracy z oscyloskopem, analizatorem stanów logicznych i multimetrem.
- Umiejętność systematycznego diagnozowania usterek sprzętowo-programowych.
- Znajomość gita.
- Język angielski pozwalający swobodnie korzystać z dokumentacji technicznej i komunikować się z anglojęzycznym kontrahentem.