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
Programowanie Java
Usługi programowania Java: mikroserwisy Spring Boot, systemy bankowe i płatnicze, backendy e-commerce i SaaS, integracje Kafka i modernizacja systemów legacy, z dedykowanymi programistami Java lub realizacją projektu.
Programowanie Node.js
Usługi programowania Node.js: API w TypeScript, backendy e-commerce i SaaS, integracje fintech, funkcje czasu rzeczywistego i strumieniowania oraz funkcje serverless, z dedykowanymi programistami Node.js lub realizacją projektu.
Programowanie PHP
Usługi programowania PHP: aplikacje Laravel i Symfony, e-commerce na Magento, Shopware i WooCommerce, API, WordPress i Drupal oraz aktualizacje PHP, z dedykowanymi programistami PHP lub realizacją projektu.
Programowanie Go
Usługi programowania Go: mikroserwisy i API w Golang, backendy fintech i SaaS, operatory Kubernetes, potoki zdarzeń oraz oprogramowanie sieciowe i bezpieczeństwa, z dedykowanymi programistami Go lub realizacją projektu.
Programowanie Kotlin i Android
Usługi tworzenia aplikacji na Androida w Kotlin i Jetpack Compose dla aplikacji bankowych, medialnych, zakupowych i zdrowotnych, a także backendy Kotlin Multiplatform i Ktor, z dedykowanymi programistami Kotlin lub realizacją projektu.
Programowanie Rust
Usługi programowania Rust: usługi backendowe i API, blockchain i Web3, oprogramowanie systemowe i infrastrukturalne, narzędzia bezpieczeństwa, firmware wbudowany i WebAssembly, z dedykowanymi programistami Rust lub realizacją projektu.
Programowanie Swift i iOS
Usługi tworzenia aplikacji iOS w Swift i SwiftUI: aplikacje bankowe, zakupowe, medialne i zdrowotne, aplikacje na Apple Watch i Vision Pro, utrzymanie kodu Objective-C i wydania w App Store, z dedykowanymi programistami iOS lub realizacją projektu.
Programowanie Scala
Usługi programowania Scala: potoki Apache Spark, backendy dla fintech i adtech, usługi na Akka, Pekko, ZIO lub Cats Effect, aplikacje Play i migracje do Scala 3, z dedykowanymi programistami Scala lub realizacją projektu.
Programowanie TypeScript
Usługi programowania TypeScript: frontendy Angular, React i Vue, backendy Node.js, aplikacje full-stack, monorepozytoria i migracje z JavaScript do TypeScript, z dedykowanymi programistami TypeScript lub realizacją projektu.
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.