Projektowanie, rozwój i utrzymanie oprogramowania w języku C++
Tworzenie rozwiązań zgodnych z założeniami architektonicznymi i wymaganiami jakościowymi
Debugowanie, profilowanie oraz optymalizacja istniejącego kodu
Pisanie i utrzymywanie testów jednostkowych oraz integracyjnych
Udział w code review oraz przeglądach architektury
Współpraca z zespołem w celu dostarczania stabilnych i wydajnych rozwiązań
Odpowiedzialność za jakość dostarczanego oprogramowania oraz świadomość wpływu własnej pracy na cały system
Nasze wymagania
Zaawansowana biegłość w programowaniu w C++ (C++17/C++20) oraz umiejętność tworzenia wydajnego, bezpiecznego i czytelnego kodu
Doświadczenie w projektowaniu i rozwijaniu modularnych oraz skalowalnych rozwiązań z wykorzystaniem zasad SOLID, wzorców projektowych i dobrych praktyk inżynierskich
Bardzo dobra znajomość narzędzi deweloperskich: CMake, Git, kompilatorów (GCC/Clang/MSVC) oraz debuggerów (gdb/lldb)
Doświadczenie w debugowaniu, profilowaniu i optymalizacji aplikacji (CPU, pamięć, wielowątkowość)
Umiejętność tworzenia i utrzymywania testów jednostkowych oraz integracyjnych, a także dbałość o jakość kodu (code review, analiza statyczna)
Zdolność analitycznego myślenia, diagnozowania problemów oraz podejmowania trafnych decyzji technicznych
Samodzielność w realizacji zadań przy jednoczesnej umiejętności efektywnej pracy zespołowej
Umiejętność jasnej komunikacji technicznej oraz dokumentowania tworzonych rozwiązań
Znajomość języka Go (Golang)
Doświadczenie w pracy z dużymi lub złożonymi systemami
Znajomość narzędzi do analizy jakości i wydajności kodu
Udział w projektowaniu architektury systemów lub przeglądach architektonicznych