C++ Developer with Rust/ BLE/ SDK (f/m/x)
⚲ Gdańsk, Białystok, Kraków, Bydgoszcz, Katowice, Łódź, Lublin, Poznań, Rzeszów, Szczecin
Do uzgodnienia
Wymagania
- Rust
- BLE (Bluetooth Low Energy)
- SDK (Software Development Kit)
- C++
- Linux
- CI/CD
- CMake
- Docker
Opis stanowiska
Poszukujemy doświadczonej osoby na stanowisko Senior C++ Developer do projektu realizowanego dla globalnego lidera w obszarze zaawansowanych urządzeń technologicznych. Dołączysz do międzynarodowego zespołu odpowiedzialnego za rozwój oprogramowania wspierającego inteligentne urządzenia oraz ich integrację z aplikacjami i zewnętrznymi systemami. Projekt obejmuje rozwój wysokowydajnych komponentów systemowych, bibliotek oraz SDK wykorzystywanych przez partnerów i zespoły produktowe. Na co dzień będziesz pracować z nowoczesnym stosem technologicznym obejmującym C++, Rust oraz Bluetooth Low Energy (BLE), mając realny wpływ na architekturę i jakość rozwijanych rozwiązań.
Jeśli cenisz pracę z nowoczesnymi technologiami, interesują Cię rozwiązania embedded oraz komunikacja bezprzewodowa, a także lubisz współpracę w międzynarodowym środowisku – ta oferta jest dla Ciebie.
Twoje zadania
• Projektowanie, rozwój oraz utrzymanie aplikacji i komponentów w języku C++ oraz Rust
• Tworzenie i rozwój bibliotek oraz SDK wykorzystywanych przez zespoły wewnętrzne i partnerów
• Implementacja oraz optymalizacja komunikacji opartej o Bluetooth Low Energy (BLE)
• Projektowanie skalowalnych i wydajnych rozwiązań zgodnie z dobrymi praktykami inżynierii oprogramowania
• Udział w projektowaniu architektury oraz podejmowaniu decyzji technicznych
• Współpraca z międzynarodowymi zespołami odpowiedzialnymi za firmware, aplikacje desktopowe i mobilne oraz testy
• Przeprowadzanie code review i wspieranie pozostałych członków zespołu
• Dbanie o wysoką jakość kodu poprzez testy, automatyzację oraz Continuous Integration
Wymagania
• Minimum 3 lata doświadczenia w tworzeniu oprogramowania w języku C++
• Praktyczna znajomość języka Rust oraz doświadczenia w jego wykorzystaniu w projektach komercyjnych
• Biegłość w pracy z nowoczesnym C++ (C++17/C++20)
• Doświadczenie z Bluetooth Low Energy (BLE) oraz implementacją komunikacji bezprzewodowej
• Praktyczne doświadczenie w projektowaniu i rozwoju SDK lub bibliotek programistycznych
• Znajomość systemów Linux oraz środowiska programistycznego dla systemów embedded
• Wcześniejsza praca z systemami kontroli wersji (Git) oraz procesami CI/CD
• Umiejętność projektowania oprogramowania z wykorzystaniem wzorców projektowych i zasad SOLID
• Doświadczenie w pracy w metodykach Agile
• Bardzo dobra znajomości języka angielskiego (min. B2)
Mile widziane
• Wcześniejsza praca w rozwoju oprogramowania dla urządzeń embedded
• Znajomość protokołów komunikacyjnych wykorzystywanych w systemach IoT
• Doświadczenie z CMake oraz narzędziami do budowania projektów
• Wiedza z zakresu Docker lub innych technologii konteneryzacji
• Doświadczenie z testami jednostkowymi i integracyjnymi
• Zrozumienie zagadnień związanych z bezpieczeństwem komunikacji bezprzewodowej
Jeśli cenisz pracę z nowoczesnymi technologiami, interesują Cię rozwiązania embedded oraz komunikacja bezprzewodowa, a także lubisz współpracę w międzynarodowym środowisku – ta oferta jest dla Ciebie.
Twoje zadania
• Projektowanie, rozwój oraz utrzymanie aplikacji i komponentów w języku C++ oraz Rust
• Tworzenie i rozwój bibliotek oraz SDK wykorzystywanych przez zespoły wewnętrzne i partnerów
• Implementacja oraz optymalizacja komunikacji opartej o Bluetooth Low Energy (BLE)
• Projektowanie skalowalnych i wydajnych rozwiązań zgodnie z dobrymi praktykami inżynierii oprogramowania
• Udział w projektowaniu architektury oraz podejmowaniu decyzji technicznych
• Współpraca z międzynarodowymi zespołami odpowiedzialnymi za firmware, aplikacje desktopowe i mobilne oraz testy
• Przeprowadzanie code review i wspieranie pozostałych członków zespołu
• Dbanie o wysoką jakość kodu poprzez testy, automatyzację oraz Continuous Integration
Wymagania
• Minimum 3 lata doświadczenia w tworzeniu oprogramowania w języku C++
• Praktyczna znajomość języka Rust oraz doświadczenia w jego wykorzystaniu w projektach komercyjnych
• Biegłość w pracy z nowoczesnym C++ (C++17/C++20)
• Doświadczenie z Bluetooth Low Energy (BLE) oraz implementacją komunikacji bezprzewodowej
• Praktyczne doświadczenie w projektowaniu i rozwoju SDK lub bibliotek programistycznych
• Znajomość systemów Linux oraz środowiska programistycznego dla systemów embedded
• Wcześniejsza praca z systemami kontroli wersji (Git) oraz procesami CI/CD
• Umiejętność projektowania oprogramowania z wykorzystaniem wzorców projektowych i zasad SOLID
• Doświadczenie w pracy w metodykach Agile
• Bardzo dobra znajomości języka angielskiego (min. B2)
Mile widziane
• Wcześniejsza praca w rozwoju oprogramowania dla urządzeń embedded
• Znajomość protokołów komunikacyjnych wykorzystywanych w systemach IoT
• Doświadczenie z CMake oraz narzędziami do budowania projektów
• Wiedza z zakresu Docker lub innych technologii konteneryzacji
• Doświadczenie z testami jednostkowymi i integracyjnymi
• Zrozumienie zagadnień związanych z bezpieczeństwem komunikacji bezprzewodowej
🔍 Dekoder Ogłoszenia
🔴
doświadczonej osoby na stanowisko Senior C++ Developer
Może oznaczać, że szukają kogoś z długim stażem, ale równie dobrze mogą mieć niskie oczekiwania co do faktycznego poziomu seniority.
🔴
realny wpływ na architekturę i jakość rozwijanych rozwiązań
Może oznaczać faktyczny wpływ, ale równie dobrze może być pustym sloganem, jeśli decyzje techniczne są już podjęte lub zdominowane przez innych.
🔴
nowoczesnym stosem technologicznym obejmującym C++, Rust oraz Bluetooth Low Energy (BLE)
Chociaż wymienione technologie są nowoczesne, ich faktyczne wykorzystanie i głębokość mogą być ograniczone do specyficznych modułów, a nie całego projektu.
🔴
Udział w projektowaniu architektury oraz podejmowaniu decyzji technicznych
Może oznaczać rzeczywisty wpływ na architekturę, ale równie dobrze może ograniczać się do dyskusji i konsultacji bez ostatecznego decydowania.
🔴
Współpraca z międzynarodowymi zespołami odpowiedzialnymi za firmware, aplikacje desktopowe i mobilne oraz testy
Może oznaczać ciekawą współpracę, ale też potencjalnie trudności komunikacyjne i koordynacyjne wynikające z pracy w rozproszonym, wielokulturowym zespole.