Przejdź do treści
BigTree108

Usługi tworzenia oprogramowania w C i C++

Usługi tworzenia oprogramowania w C i C++ dla firmware'u wbudowanego i urządzeń IoT, aplikacji desktopowych Qt, oprogramowania sieciowego i telekomunikacyjnego, systemów o niskich opóźnieniach i wysokiej wydajności, oprogramowania bezpieczeństwa, oprogramowania przemysłowego, medycznego i motoryzacyjnego oraz modernizacji długowiecznych baz kodu C++, z dedykowanymi programistami C++ w Państwa zespole lub projektem w C++ realizowanym od A do Z.

Co budujemy w C i C++

  • Firmware wbudowany w C i C++

    Firmware dla mikrokontrolerów ARM Cortex-M, ESP32 i Nordic nRF na Zephyr, FreeRTOS lub bare metal oraz aplikacje C++ na wbudowanym Linuksie budowane z Yocto, z testami hardware-in-the-loop tam, gdzie pozwala na to płytka.

  • Oprogramowanie sieciowe i telekomunikacyjne w C++

    Przetwarzanie pakietów z DPDK, VoIP i serwery mediów, routery, bramy i urządzenia sieciowe, z przepustowością i opóźnieniem mierzonymi pod obciążeniem przed każdym wydaniem.

  • Oprogramowanie desktopowe Qt, MFC i Win32

    Aplikacje Qt 6 z Qt Widgets lub QML dla Windows, macOS i Linuksa z jednej bazy kodu oraz starsze oprogramowanie MFC i Win32 utrzymywane w działaniu i rozwijane dalej.

  • Usługi o wysokiej wydajności i niskich opóźnieniach

    Serwery sieciowe, moduły obsługi danych rynkowych i silniki handlowe w C++20 z Boost.Asio lub gRPC, kolejkami lock-free i układem pamięci dostrajanym przy pomocy perf i Intel VTune, aż do osiągnięcia docelowego opóźnienia.

  • Oprogramowanie bezpieczeństwa i stacji końcowych

    Agenty stacji końcowych, inspekcja sieci, silniki antymalware i biblioteki kryptograficzne, budowane z flagami utwardzającymi i fuzzowane z libFuzzer i AFL++ przed każdym wydaniem.

  • Oprogramowanie przemysłowe, medyczne i motoryzacyjne

    Sterowanie maszynami z OPC UA i łączami fieldbus, oprogramowanie wyrobów medycznych tworzone zgodnie z IEC 62304 oraz kod sterowników ECU i infotainment zgodny z AUTOSAR i regułami MISRA C++ sprawdzanymi analizą statyczną.

  • Widzenie komputerowe, multimedia i biblioteki numeryczne

    Przetwarzanie obrazu z OpenCV, kodeki, przetwarzanie sygnałów i kod numeryczny we współczesnym C++ z SIMD oraz CUDA tam, gdzie GPU się opłaca, z benchmarkami dowodzącymi każdej optymalizacji.

  • Modernizacja starszego C++

    Kod C++98 i C++03 przenoszony etapami na C++20 lub C++23: inteligentne wskaźniki zamiast ręcznego zarządzania pamięcią, sanitizery i clang-tidy w pipeline oraz testy dodawane przed każdą zmianą.

  • Buildy, toolchainy i wiązania językowe

    Buildy CMake z Conan lub vcpkg odtwarzalne z czystego checkoutu, toolchainy do kompilacji krzyżowej oraz biblioteki C i C++ udostępnione Pythonowi przez pybind11 lub nanobind oraz .NET i Java, z zasadami własności na granicy zapisanymi na piśmie.

Zatrudnienie: programiści C++

  • Dedykowani programiści C++

    Programiści C++ dołączają do Państwa zespołu na pełny etat, pracują w Państwa repozytoriach, trackerze i na spotkaniach oraz podlegają Państwa liderowi. Państwo przeprowadzają rozmowy kwalifikacyjne, a my bierzemy na siebie ukraińską umowę, wynagrodzenia, fakturowanie i urlopy.

  • Realizacja projektów w C i C++

    Zespół, który prowadzi projekt w C i C++ od zakresu do wydania: wycena, wytworzenie, testy i wdrożenie, z liderem technicznym po naszej stronie, który odpowiada za plan i jakość.

  • Utrzymanie i przejmowanie systemów w C i C++

    Istniejący system w C i C++, przejęty od innego zespołu lub utrzymywany w działaniu: najpierw przegląd bez zmian w systemie i pisemna lista ryzyk, następnie poprawki i nowe funkcje w kolejności według wpływu.

Strona o dedykowanym zespole wyjaśnia, jak specjaliści dołączają do Państwa zespołu, a strona o outsourcingu opisuje realizację projektów, przejęcia i sposób rozliczania.

Kto pracuje nad Państwa projektem w C i C++

  • programiści C++

    Nowoczesny C++ dla usług, oprogramowania desktopowego i bibliotek

  • Inżynierowie systemów wbudowanych

    Firmware w C i C++, mikrokontrolery i wbudowany Linux

  • Inżynierowie sieci i systemów

    Sieci Linux, DPDK i stosy protokołów

  • Inżynierowie build i DevOps

    CMake, kompilacja krzyżowa i pipeline uruchamiające sanitizery

  • Inżynierowie QA

    Plany testów, automatyzacja i stanowiska hardware-in-the-loop

Jak pracujemy z C i C++

Aktualny standard C++ dla nowego kodu, RAII i inteligentne wskaźniki zamiast ręcznego zarządzania pamięcią, ostrzeżenia kompilatora traktowane jak błędy oraz AddressSanitizer i UndefinedBehaviorSanitizer w ciągłej integracji, aby błędy pamięci wykrywał build, a nie klient.

W istniejącej bazie kodu stosujemy jej standard, kompilator i zasady kodowania, takie jak MISRA C++ lub Państwa własny przewodnik stylu, i dodajemy analizę statyczną, sanitizery oraz fuzzing tam, gdzie ich brakuje. Programiści pracują w Państwa repozytoriach, Państwa trackerze i Państwa procesie, a wszystkie prawa do tego, co napiszą, przechodzą na Państwa.

Pozostałe języki, w których pracujemy

Języki programowania: przegląd

Pytania o tworzenie oprogramowania w C i C++

W jakich branżach pracują Państwa programiści C i C++?

Systemy wbudowane i IoT (firmware urządzeń, bramy i elektronika użytkowa), oprogramowanie desktopowe, cyberbezpieczeństwo (agenty stacji końcowych, inspekcja sieci i kryptografia), automatyka przemysłowa i energetyka (sterowanie maszynami i monitoring), ochrona zdrowia (wyroby medyczne i obrazowanie), fintech (handel o niskich opóźnieniach i dane rynkowe) oraz motoryzacja (sterowniki ECU, infotainment i asystenci kierowcy).

Czy zajmują się Państwo oprogramowaniem wbudowanym?

Tak: firmware w C i C++ dla mikrokontrolerów na Zephyr, FreeRTOS lub bare metal oraz dla wbudowanego Linuksa, z testami hardware-in-the-loop tam, gdzie pozwala na to płytka, i buildem odtwarzalnym z czystego checkoutu.

Czy mogą Państwo zmodernizować naszą starą bazę kodu C++?

Tak, krok po kroku: build staje się odtwarzalny, włączane są sanitizery i analiza statyczna, wokół kodu, który ma się zmienić, dodawane są testy, a standard przesuwa się do przodu o jedno wydanie naraz.

Jak szybko mogą zacząć programiści C++?

Gdy odpowiedni programista C++ jest dostępny, o terminie startu decydują wyłącznie Państwa rozmowa oraz NDA i przeniesienie praw własności intelektualnej. W przeciwnym razie prowadzimy poszukiwania, które zwykle dają profile kandydatów w ciągu dwóch do trzech tygodni, a nikt nie zaczyna pracy, dopóki Państwo nie powiedzą „tak”.

Jak wygląda zatrudnienie przez BigTree108: programiści C++?

Prosimy o informację o zakresie pracy, poziomie doświadczenia i potrzebnych godzinach. Proponujemy jedną lub dwie osoby wraz z ich profilami, Państwo przeprowadzają z nimi rozmowy tak, jak z własnym kandydatem, podpisują jedną umowę z BIG TREE 108 LLC i otrzymują jedną fakturę miesięcznie.

Do kogo należy praca, którą wykonują?

Do Państwa. Każdy specjalista ma podpisaną z BigTree108 umowę, która przenosi wszystkie rezultaty pracy na spółkę, a nasza umowa z Państwem przenosi je dalej. Kod, projekty i dokumenty są przekazywane do Państwa własnych repozytoriów i narzędzi, a nie przechowywane tam, gdzie zmieniać je możemy tylko my.

Potrzebują Państwo programistów C, C++ lub systemów wbudowanych?

Prosimy podać platformę, toolchain i zakres prac. Odpowiedź otrzymają Państwo w ciągu jednego dnia roboczego: profile kandydatów lub plan dla bazy kodu.