C++ / Backend Engineer
Do uzgodnienia
Wymagania
- C++
- Qt5
- CMake
- Conan
- Docker
Opis stanowiska
We are looking for an experienced C++ / backend engineer to join on a short-term, time-bound basis to lead refactoring and modernization work on a mature desktop application. The product has a large, cross-platform C++ codebase (~500k lines of code plus third-party dependencies) built on Qt5. The primary goal of the engagement is to modernize the build toolchain and dependency stack, with the migration to Apple Silicon as the top priority.
Not all of the tasks below are guaranteed to be completed within the engagement. At a minimum, the Intel → Apple Silicon migration must be delivered; remaining items will be prioritized based on time and progress.
Migrate the macOS build of the application from an Intel to an Apple Silicon build (C++ codebase, ~500k LOC plus third-party libraries, Qt5).
Migrate third-party libraries from Conan 1.x to Conan 2 across the Windows, macOS, and Linux builds.
Update the Linux build to use Clang 19 (from Clang 11) and move the build to Ubuntu 24.04.
Update selected third-party libraries to recent versions to meet security requirements.
Migrate the codebase from C++17 to C++20.
Not all of the tasks below are guaranteed to be completed within the engagement. At a minimum, the Intel → Apple Silicon migration must be delivered; remaining items will be prioritized based on time and progress.
Migrate the macOS build of the application from an Intel to an Apple Silicon build (C++ codebase, ~500k LOC plus third-party libraries, Qt5).
Migrate third-party libraries from Conan 1.x to Conan 2 across the Windows, macOS, and Linux builds.
Update the Linux build to use Clang 19 (from Clang 11) and move the build to Ubuntu 24.04.
Update selected third-party libraries to recent versions to meet security requirements.
Migrate the codebase from C++17 to C++20.
🔍 Dekoder Ogłoszenia
🔴
short-term, time-bound basis
Projekt ma ściśle określony, krótki termin realizacji, co może oznaczać presję czasu i intensywną pracę.
🔴
lead refactoring and modernization work
Oczekuje się, że kandydat samodzielnie poprowadzi procesy modernizacyjne, co może oznaczać dużą odpowiedzialność i konieczność podejmowania kluczowych decyzji technicznych.
🔴
mature desktop application
Aplikacja jest stara i prawdopodobnie posiada złożoną, trudną do zrozumienia i modyfikacji architekturę.
🔴
Not all of the tasks below are guaranteed to be completed within the engagement.
Zakres prac może ulec zmianie, a priorytety mogą być przesuwane, co oznacza, że nie wszystkie wymienione zadania mogą zostać wykonane.
🔴
At a minimum, the Intel → Apple Silicon migration must be delivered
Jest to kluczowy i absolutnie wymagany cel, który musi zostać osiągnięty, nawet kosztem innych zadań.