Praca i Wizje Zespołów


Praca

Jesteśmy uznaną na całym świecie firmą konsultingową zajmującą się rozwojem oprogramowania wbudowanego, która wykorzystuje lata doświadczeń w branży, aby zapewnić innowacyjne usługi. Pomagamy projektantom oraz producentom sprzętu w osiągnięciu pełnego potencjału, bezpieczeństwa i niezawodności dostarczanych produktów.
Nasz zespół składa się z inżynierów, programistów, pasjonatów ze społeczności oprogramowania open source, otwartego oprogramowania sprzętowego, prelegentów konferencyjnych oraz ludzi, którzy uwielbiają majsterkować niskopoziomowo ale też osób nietechnicznych, dla których temat prywatności i bezpieczeństwa nie jest obojętny.


Jeśli chcesz stać się jego częścią, daj nam się poznać i aplikuj.

Wyślij swoje CV na adres career@3mdeb.com lub skorzystaj z poniższego formularza kontaktowego.

Ikona przedstawiająca osobę wchodzącą po schodach wykonanych w formie wznoszącej się strzałki

Aktualnie poszukujemy:


Embedded Systems Developer/Engineer

Wymagania:
  • Dobra znajomość C
  • Doświadczenie z oprogramowaniem dla systemów wbudowanych (mikrokontrolery, Embedded Linux)
  • Podstawowa znajomość przynajmniej jednego języka skryptowego (najczęściej używamy BASH oraz Python)
  • Dobra znajomość systemu Linux i systemu kontroli wersji git
  • Dobra znajomość języka angielskiego w mowie i piśmie
  • Bardzo dobre zdolności organizacyjne i umiejętność nauki różnorodnych narzędzi
Co oferujemy :
  • Elastyczne warunki zatrudnienia i godziny pracy dostosowane do kandydata 
  • Nastawienie na integrację, przyjazną atmosferę bez korporacyjnych procesów
  • Wyjazdy na konferencje branżowe na całym świecie
  • Podnoszenie kwalifikacji poprzez szkolenia i certyfikacje
  • Dofinansowanie do szkoleń
  • Opiekę medyczną
  • System premiowy
  • Pakiet sportowy
  • Ubezpieczenie grupowe
  • Możliwości rozwoju w wybranym przez siebie kierunku
  • Pracę w biurze w świetnej lokalizacji w Oliwie (dopuszczalna praca w trybie hybrydowym)
Codzienne zadania:    
  • Projektowanie oraz implementacja funkcjonalności dla systemów wbudowanych
  • Dokumentacja i raportowanie postępów w pracy
  • Debugowanie i analiza problemów związanych z działaniem sprzętu oraz oprogramowania wbudowanego
  • Analiza i poprawa bezpieczeństwa systemów wbudowanych
  • Pomoc w utrzymaniu dystrybucji Linux opartych o Yocto
Mile widziane:
  • Znajomość systemów czasu rzeczywistego (np. Zephyr, FreeRTOS, MbedOS)
  • Doświadczenie w pracy z SBC (np. Raspberry Pi)
  • Umiejętność konfiguracji i kompilacji jądra Linux
  • Znajomość narzędzi do budowania systemów opartych o Linux (OpenEmbedded, Yocto, buildroot, debootstrap)
  • Znajomość Docker oraz narzędzi CI/CD (Jenkins, Travis, Gitlab CI)
  • Zaangażowanie w społeczności Open Source


Embedded C Developer/Engineer

Wymagania:
  • Minimum dwuletnie doświadczenie na podobnym stanowisku
  • Dobra znajomość języka C
  • Dobra znajomość architektury x86 (IA-32/x64) i/lub ARM (v7/v8)
  • Doświadczenie (hobbystyczne lub komercyjne) z oprogramowaniem dla systemów wbudowanych
  • Dobra znajomość systemu Linux i systemu kontroli wersji git
  • Dobra znajomość języka angielskiego w mowie i piśmie
  • Bardzo dobre zdolności organizacyjne i umiejętność nauki różnorodnych narzędzi
  • Samodzielność
Co oferujemy :
  • Elastyczne warunki zatrudnienia i godziny pracy dostosowane do kandydata 
  • Nastawienie na integrację, przyjazną atmosferę bez korporacyjnych procesów
  • Wyjazdy na konferencje branżowe na całym świecie
  • Podnoszenie kwalifikacji poprzez szkolenia i certyfikacje
  • Dofinansowanie do szkoleń
  • Opiekę medyczną
  • System premiowy
  • Pakiet sportowy
  • Ubezpieczenie grupowe
  • Możliwości rozwoju w wybranym przez siebie kierunku
  • Pracę w biurze w świetnej lokalizacji w Oliwie (dopuszczalna praca w trybie hybrydowym)
Codzienne zadania:    
  • Dokumentacja i raportowanie postępów w pracy
  • Debugowanie i analiza kodu niskopoziomowego (firmware) oraz problemów związanych z działaniem sprzętu oraz oprogramowania wbudowanego 
  • Analiza i poprawa bezpieczeństwa oprogramowania niskopoziomowego systemów wbudowanych
  • Implementacja funkcjonalności dla systemów wbudowanych
  • Pomoc w utrzymaniu dystrybucji Linux opartych o Yocto
Mile widziane:
  • Znajomość GCC/make
  • Dobra znajomość assemblera lub doświadczenie w inżynierii odwrotnej (reverse engineering)
  • Zainteresowanie bezpieczeństwem niskopoziomowym
  • Wiedza na temat technologii takich jak coreboot, UEFI/EDK II, ACPI, Secure Boot
  • Doświadczenie w pracy z SBC (np. Raspberry Pi)
  • Znajomość narzędzi do budowania systemów opartych o Linux (Yocto, Buildroot)
  • Znajomość Docker oraz narzędzi CI/CD (GitLab CI, Travis)
  • Zaangażowanie w społeczności open-source


Hardware Validation Engineer/Developer

Wymagania:
  • Umiejętność samodzielnej diagnozy oraz naprawy usterek podzespołów elektronicznych 
  • Umiejętność czytania i analizy dokumentacji technicznej i schematów elektronicznych
  • Umiejętność uruchamiania i testowania urządzeń elektronicznych zgodnie z dokumentacją technologiczną i techniczną
  • Znajomość technicznego języka angielskiego
Co oferujemy :
  • Elastyczne warunki zatrudnienia i godziny pracy dostosowane do kandydata 
  • Nastawienie na integrację, przyjazną atmosferę bez korporacyjnych procesów
  • Wyjazdy na konferencje branżowe na całym świecie
  • Podnoszenie kwalifikacji poprzez szkolenia i certyfikacje
  • Dofinansowanie do szkoleń
  • Opiekę medyczną
  • System premiowy
  • Pakiet sportowy
  • Ubezpieczenie grupowe
  • Możliwości rozwoju w wybranym przez siebie kierunku
  • Pracę w biurze w świetnej lokalizacji w Oliwie (dopuszczalna praca w trybie hybrydowym)
Codzienne zadania:    
  • Rozwijanie infrastruktury sprzętowej wykorzystywanej w testach
  • Rozwijanie testów automatycznych (python, robot framework)
  • Dokumentacja i raportowanie postępów w pracy
  • Programowanie, debugowanie i uruchamianie urządzeń elektronicznych
  • Testowanie, diagnozowanie stanu elementów, układów i urządzeń elektronicznych oraz naprawianie uszkodzonego sprzętu
  • Obsługa aparatury pomiarowej i diagnostycznej
  • Tworzenie list materiałów oraz komponentów 
  • Bieżące reagowanie na problemy 
Mile widziane:
  • Lutowanie 
  • Zainteresowanie tematyką systemów wbudowanych
  • Umiejętność pracy w zespole i indywidualnie
  • Umiejętność korzystania z analizatora stanów logicznych oraz oscyloskopu 
  • Znajomość obsługi systemów Linux i narzędzia git 
  • Znajomość Python’a

Technik Elektronik

Wymagania:
  • Umiejętność samodzielnej diagnozy oraz naprawy usterek podzespołów elektronicznych 
  • Doświadczenie w lutowaniu ręcznym podzespołów/elementów elektronicznych  
  • Umiejętność czytania i analizy dokumentacji technicznej i schematów elektrycznych
  • Umiejętność uruchamiania i testowania urządzeń elektronicznych zgodnie z dokumentacją technologiczną i techniczną
  • J. angielski w mowie i piśmie na poziomie minimum B2
  • Samodzielność podczas wykonywania swoich obowiązków 
  • Bardzo dobre zdolności organizacyjne
Co oferujemy :
  • Elastyczne warunki zatrudnienia i godziny pracy dostosowane do kandydata 
  • Nastawienie na integrację, przyjazną atmosferę bez korporacyjnych procesów
  • Wyjazdy na konferencje branżowe na całym świecie
  • Podnoszenie kwalifikacji poprzez szkolenia i certyfikacje
  • Dofinansowanie do szkoleń
  • Opiekę medyczną
  • Pakiet Sportowy
  • Ubezpieczenie grupowe
  • Możliwości rozwoju w wybranym przez siebie kierunku
  • Pracę w biurze w świetnej lokalizacji w Oliwie (dopuszczalna praca w trybie hybrydowym)
Codzienne zadania:    
  • Programowanie, debugowanie i uruchamianie urządzeń elektronicznych
  • Testowanie, diagnozowanie stanu elementów, układów i urządzeń elektronicznych oraz naprawianie uszkodzonego sprzętu
  • Lutowanie 
  • Obsługa aparatury pomiarowej i diagnostycznej
  • Tworzenie list materiałów oraz komponentów 
  • Bieżące reagowanie na problemy 
Mile widziane:
  • Doświadczenie przy projektowaniu płytek PCB
  • Umiejętność korzystania z analizatora stanów logicznych oraz oscyloskopu
  • Doświadczenie przy tworzeniu BOM’u

Office Assistant

Wymagania:
  • min. 1 rok doświadczenia na podobnym stanowisku
  • nastawienie na efektywność w działaniu
  • zaangażowanie i dokładność
  • bardzo dobra organizacja pracy,
  • bardzo dobra znajomość pakietu Libre Office oraz Google docs
  • znajomość języka angielskiego na poziomie minimum B2
  • umiejętność pracy samodzielnej, jak i zespołowej,
  • pozytywne nastawienie, inicjatywa w działaniu,
  • komunikatywność,
  • wysoka kultura osobista.
  • chęć do nauki nowoczesnych narzędzi
Co oferujemy :
  • Elastyczne warunki zatrudnienia i godziny pracy dostosowane do kandydata 
  • Nastawienie na integrację, przyjazną atmosferę bez korporacyjnych procesów
  • Wyjazdy na konferencje branżowe na całym świecie
  • Podnoszenie kwalifikacji poprzez szkolenia i certyfikacje
  • Dofinansowanie do szkoleń
  • Opiekę medyczną
  • Pakiet Sportowy
  • Ubezpieczenie grupowe
  • Możliwości rozwoju w wybranym przez siebie kierunku
  • Pracę w biurze w świetnej lokalizacji w Oliwie (dopuszczalna praca w trybie hybrydowym)
Codzienne zadania:    
  • Kompleksowa obsługa administracyjna biura (witanie gości, obsługa spotkań, telefonów, maili),
  • Archiwizacja faktur, dokumentów księgowych oraz kadrowych
  • Prowadzenie baz danych (Umowy, Dostawcy: rejestr, skanowanie umów),
  • Obsługa systemów benefitów
  • Organizacja spotkań oraz obsługa kalendarza spotkań
  • Zamawianie artykułów spożywczych, materiałów biurowych, w tym przygotowywanie zamówień, pozyskiwanie ofert
  • Koordynacja korespondencji przychodzącej i wychodzącej, organizacja poprawnego obiegu korespondencji oraz innej dokumentacji, a także jej skanowanie i archiwizacja,
  • Kontaktowanie się z Klientami i kontrahentami (prawidłowość płatności, kosztów, awarie sprzętu w biurze itp.)
  • Wsparcie przy organizacji wyjazdów na konferencje międzynarodowe
  • Wsparcie działu logistyki
  • Wsparcie działu HR
  • Wsparcie procesu rekrutacji (wstawianie ogłoszeń na portale ogłoszeniowe, organizacja testów dla kandydatów, korespondencja z kandydatami)
  • Wykonywanie różnych zadań zleconych przez kadrę zarządzającą (zestawienia, przygotowywanie dokumentacji itp.),
Mile widziane:
  • Doświadczenie w pracy w branży IT
  • Doświadczenie w pracy na systemie operacyjnym UBUNTU
  • Doświadczenie w pracy z Jira

Otwieramy nową filię w Osiu!

Obecnie otwieramy również nową filię w Osiu!
Tworzymy nowy zespół, dlatego szukamy osoby, która pokieruje oddziałem oraz osób technicznych, które są zainteresowane pracą z systemami komputerowymi.
Poszukujemy osób z pasją i motywacją do pracy.
Jeśli komputery to Twoja pasja i chcesz się dalej rozwijać w tym kierunku, ale nie spełniasz wszystkich wymagań? Nie szkodzi, w razie potrzeby chętnie Cię doszkolimy.


Jeśli chcesz stać się jego częścią, daj nam się poznać i aplikuj.

Wyślij swoje CV na adres career@3mdeb.com lub skorzystaj z poniższego formularza kontaktowego.

Do oddziału w Osiu poszukujemy:

Kierownik Oddziału IT

Wymagania:
  • Samodzielność podczas wykonywania swoich obowiązków
  • Skupienie na celu i nastawienie na realizację zadań
  • Chęć rozwoju
  • Otwartość na nowe rozwiązania
  • Bardzo dobre zdolności organizacyjne
  • Umiejętność wyznaczania celów oraz priorytetyzacji zadań dla siebie i zespołu
  • Podstawowa umiejętność czytania i analizy dokumentacji technicznej anglojęzycznej systemów komputerowych
  • Umiejętność uruchamiania i testowania systemów komputerowych zgodnie z dokumentacją technologiczną i techniczną
  • Znajomość języka angielskiego w stopniu umożliwiającym czytanie i pisanie dokumentacji
Co oferujemy :
  • Stabilne zatrudnienie
  • Elastyczne warunki zatrudnienia
  • Szkolenie wprowadzające na stanowisko
  • Opieka medyczna
  • Ubezpieczenie grupowe
  • Dofinansowanie do pakietów sportowych
  • Elastyczny czas pracy
  • Przyjazną atmosferę bez korporacyjnych procesów
  • Dofinansowanie do szkoleń
  • Atrakcyjne wynagrodzenie zależne od umiejętności
  • Możliwości rozwoju w wybranym przez siebie kierunku
Codzienne zadania:    
  • Prowadzenie biura 
  • Budowanie, organizacja i nadzór nad pracą oddziału w Osiu 
  • Koordynacja pracy z oddziałem w Gdańsku oraz osobami pracującymi zdalnie
  • Szkolenie zespołu
  • Bieżące reagowanie na problemy
  • Utrzymanie dokumentacji
  • Prowadzenie raportów na temat podejmowanych działań, przygotowywanie planów oraz prognoz
Mile widziane:
  • Znajomość technologii:
    • BIOS
    • Otwarte oprogramowanie
    • Sieci komputerowe
    • System operacyjne (Linux, BSD, Windows)
  • Zainteresowanie bezpieczeństwem systemów komputerowych
  • Znajomość aparatury pomiarowej i diagnostycznej

Technik Informatyk

Wymagania:
  • Skupienie na celu i nastawienie na realizację zadań
  • Otwartość na nowe rozwiązania
  • Motywacja do pracy i pozyskiwania nowej wiedzy technicznej
  • Umiejętność samodzielnej diagnozy oraz naprawy systemów komputerowych
  • Umiejętność uruchamiania i testowania systemów komputerowych zgodnie z dokumentacją technologiczną i technicznąInstalacja systemów operacyjnych (Windows, Linux, BSD)
  • Konfiguracja BIOS
  • Umiejętność czytania i analizy dokumentacji technicznej
  • Znajomość języka angielskiego w stopniu umożliwiającym czytanie i pisanie dokumentacji.
Co oferujemy :
  • Stabilne zatrudnienie
  • Elastyczne warunki zatrudnienia
  • Szkolenie wprowadzające na stanowisko
  • Opieka medyczna
  • Ubezpieczenie grupowe
  • Dofinansowanie do pakietów sportowych
  • Elastyczny czas pracy
  • Przyjazną atmosferę bez korporacyjnych procesów
  • Dofinansowanie do szkoleń
  • Atrakcyjne wynagrodzenie zależne od umiejętności
  • Możliwości rozwoju w wybranym przez siebie kierunku
Codzienne zadania:    
  • Uruchamianie, testowanie, diagnozowanie oraz naprawa systemów komputerowych 
  • Obsługa aparatury oraz oprogramowania pomiarowego i diagnostycznego
  • Tworzenie i prezentowanie raportów z pracy
  • Bieżące reagowanie na problemy
Mile widziane:
  • Doświadczenie w lutowaniu ręcznym podzespołów/elementów elektronicznych
  • Podstawowe umiejętności konfiguracji i utrzymania sieci komputerowych serwerowych systemów operacyjnych Linux;
  • Zainteresowanie bezpieczeństwem systemów komputerowych

Aplikuj Teraz!




    Wizje Zespołów


    Wizja Zespołu OSFV

    Efektywne motto na długo zapada w pamięć. Złotym standardem są motta firm takich ja Disney („Uszczęśliwiamy ludzi”) lub Instagram („Uchwyć chwilę i podziel się nią”). Niestety, dla wielu przedsiębiorstw przesłanie zostaje zepchnięte do roli pustych haseł na plakatach w biurach, które często są zapominane zanim jeszcze wyschnie na nich farba. Wizja OSFV powinna nie tylko wpływać na zaangażowanie zespołu i wskazywać ogólny kierunek w którym dążymy, lecz również rzucać światło na jego specyfikę dla potencjalnych przyszłych członków. Niniejszy dokument opisuje cel utworzenia zespołu walidacji otwartego oprogramowania sprzętowego (Open Source Firmware Validation), wizję która temu towarzyszyła, strategię przyświecającą jego działaniom i możliwe ścieżki karier oraz rozwoju jego członków.

    Rozumiemy, co oprogramowanie powinno robić i wiemy,
    jak sprawdzić, że faktycznie robi to co powinno.

    Wprowadzenie

    Testy oprogramowania, które zawsze kończą się wynikiem pozytywnym, są z gruntu bezwartościowe. Tak samo jak te, które nigdy się nie udają. Walidacja, tak jak każda inna usługa, powinna się koncentrować na przynoszeniu wartości. Wartością, którą przynosi, jest weryfikacja w jakich okolicznościach (wersja oprogramowania, charakterystyka sprzętu itd.) dane założenia projektu zostaną spełnione. Jako że zautomatyzowana walidacja systemów wbudowanych i firmware’u patrząc z perspektywy globalnej jest jeszcze w powijakach mamy wyjątkową okazję aby wpłynąć na jej przyszły kształt. 3mdeb zamierza być liderem w dziedzinie walidacji systemów wbudowanych. Planujemy stworzyć specjalny dział szkoleniowy, promujący naszą wizję walidacji i podnoszenie jej poziomu. Ponadto naszym celem jest stworzenie framework’a Open Source Firmware Validation, który będzie pełną aplikacją obejmującą swoim zakresem technologie od chmury (wirtualizacja, AWS, itp.), aż po systemy wbudowane (Yocto / Linux, Go, Python). To rozwiązanie powinno być uniwersalne, skalowalne oraz zdolne do porównania szerokiego zakresu projektów IoT out of the box. Równoważny framework zostanie stworzony dla firmware’u (BIOS, UEFI). Oba będą spójne i zgodne z najnowszymi się standardami (np. Linux Foundation Automated Testing Summit) oraz porównywalne z innymi frameworkami.

    Programista sporządzający notatki
    Programista piszący kod na komputerze osobistym

    Kogo potrzebujemy

    Potrzebujemy ludzi, którzy rozumieją, dlaczego tak ważne jest, by nie lekceważyć żadnego, nawet najmniejszego defektu pojawiającego się w testach w trakcie rozwoju lub wsparcia oprogramowania. Coś, co wydaje się być drobnym i nieistotnym szczegółem dla pojedynczego urządzenia, może spowodować poważny problem gdy będą ich tysiące.

    Co oferujemy

    • Poznanie najnowszych technologii i rozwiązań najwyższej klasy.
    • Dostęp do różnych projektów z możliwością nauki szerokiego spektrum nowoczesnych technik i poszerzania własnych horyzontów.
    • Okazję do promowania oraz uczestnictwa w społeczności open-source poprzez wprowadzanie nowych funkcjonalności w otwartym kodzie źródłowym.
    • Okazję do wzięcia udziału w wielu konferencjach i spotkania się z ludźmi z całego świata.
    • Możliwość nauki od najlepszych profesjonalistów w swoich specjalnościach, takich firmware, wbudowane systemy Linux, hipernadzorcy, wirtualizacja, oraz bezpieczeństwa sprzętu i oprogramowania.
    • Wspaniałą atmosferę w zespole.

    Wymagania:

    • samodzielność
    • skrupulatność
    • doświadczenie ze sprzętem
    • elastyczność i zdolność do szybkiego uczenia
    • RobotFramework (Python), LAVA, Weles – byłby dodatkowym atutem
    • znajomość środowisk wirtualnych, ujednoliconych baz danych raportów takich jak kcidb, iPXE, Docker, integracji z różnymi API lub bibliotekami – byłaby idealna
    • technologie internetowe – w zależności od rozwoju infrastruktury (REST API) oraz projektów IoT lub Edge Computing, w których uczestniczyć będzie zespół OSFV, testy ukierunkowane na technologie internetowe mogą być rozwijane i zwiększać swój udział procentowy w pełnej infrastrukturze testów 3mdeb.

    Codzienne wyzwania

    • opracowanie zautomatyzowanych testów dla najnowszych funkcji
    • walidacja nieprawidłowo działającego sprzętu
    • konfiguracja i wsparcie długoterminowe sprzętu stosowanego w walidacji (RTE, MuxPi)
    • utrzymanie testów regresji cyklicznej
    • uzupełnianie i ustawianie zestawów testowych
    • automatyzacja wielu aspektów codziennej pracy (bash scripts, Dockerfiles,
      etc.)
    • proces dokumentowania usterek (szczegółowy opis dla szybszego rozwoju)
    • przygotowanie przejrzystej dokumentacji końcowej dla klientów

    Mile widziane:

    • samodzielne naprawianie mniejszych usterek (akceptowalne, pod warunkiem kiedy dana osoba wie co robi – takie podejście pozwala zaoszczędzić dodatkowy czas)
    • tematy związane z bezpieczeństwem
    Notatnik z pustą listą dla dzisiejszego planu pracy
    Osoba w bibliotece poszukująca konkretnej książki

    Osiągnięcie samodzielności

    Dla młodszych (lub raczej niedoświadczonych) kandydatów powinno to zająć od 3 do
    6 miesięcy, aby osiągnąć podstawową gotowość do pracy jako inżynier walidacji w 3mdeb. Natomiast dla inżynierów na poziomie „regular” szacujemy, że 1 miesiąc jest wystarczającym czasem, aby być w stanie pracować samodzielnie.


    Wizja Zespołu Firmware

    Jeżeli CPU możemy nazwać sercem systemu wbudowanego,
    to analogicznie, firmware będzie jego kręgosłupem.
    I tak jak każde uszkodzenie kręgosłupa paraliżuje organizm,
    jego poważna usterka paraliżuje cały system.
    Naszym zadaniem jest uczynienie go przy pomocy zabezpieczeń
    tak trudnym do złamania, jak to tylko możliwe.


    Wprowadzenie

    Jesteśmy niezależnym producentem BIOS-ów (IBV) dostarczającym open-source’owe rozwiązania firmware’owe dla swoich klientów. Rynek BIOS-u jest już dojrzały i pełen zaawansowanych graczy, którzy obecnie dostarczają oprogramowanie sprzętowe do większości komputerów. Ich rozwiązania są głównie zamknięte. 3mdeb pracuje na własną markę na rynku, dlatego przyczyniamy się do realizacji takich projektów jak coreboot, fwupd i wielu innych. Należymy również do grupy UEFI Adopters i w przeciwieństwie do największych producentów, promujemy publiczne udostępnianie i upstream’owanie kodu źródłowego do implementacji referencyjnej edk2, która umożliwia wsparcie sprzętu naszych klientów w społeczności. Promujemy to podejście, wolimy takie podejście, ale przede wszystkim zawsze szanujemy wolę naszych klientów. Postanowiliśmy udowodnić, że otwarte rozwiązania mogą być również wartościowe, a co nawet ważniejsze – bezpieczne. Tworzenie bezpiecznych rozwiązań w zakresie oprogramowania sprzętowego o najlepszej jakości to jedno z głównych zadań Zespołu Firmware’owego. Podnoszenie poziomu zabezpieczeń sprzętowych i realizacja naszego wsparcia w tym zakresie (mimo że nie są jeszcze dostępne w pełni operacyjne, otwarte rozwiązania) jest naszą codzienną pracą.

    Kogo potrzebujemy

    Potrzebujemy ludzi, którzy są zaznajomieni z architekturą systemów komputerowych. Którzy rozumieją C i asembler. Interesują się elektroniką. Muszą znać ograniczenia sprzętu oraz jego zachowania w różnych sytuacjach.

    Co oferujemy

    • Poznanie najnowszych technologii i rozwiązań najwyższej klasy.
    • Dostęp do różnych projektów z możliwością nauki szerokiego spektrum nowoczesnych technik i poszerzania własnych horyzontów.
    • Okazję do promowania oraz uczestnictwa w społeczności open-source poprzez wprowadzanie nowych funkcjonalności w otwartym kodzie źródłowym.
    • Okazję do wzięcia udziału w wielu konferencjach i spotkania się z ludźmi z całego świata.

    Jaki powinien być dobry inżynier oprogramowania sprzętowego:

    • entuzjastycznie nastawiony do open-source’u – każdy inżynier w 3mdeb powinien promować open-source jako część tworzenia własnej marki i wizji firmy
    • skrupulatny – nawet pojedyncza zmiana bitu może spowodować znaczny błąd, dlatego nie powinien ignorować najmniejszych zmian w rejestrach
    • samowystarczalny – inżynierowie oprogramowania sprzętowego w 3mdeb muszą być w stanie znaleźć rozwiązanie samodzielnie, starszy inżynier może jedynie doradzać w celu osiągnięcia rozwiązania problemu
    • doświadczony w pracy ze sprzętem – u nas flashowanie firmware’u odbywa się codziennie, wymagamy wiedzy z zakresu inżynierii elektronicznej aby uniknąć uszkodzenia sprzętu podczas pracy
    • elastyczny i zdolny do szybkiej nauki – firmware przygotowuje środowisko do uruchomienia systemu operacyjnego, dlatego niezbędna jest wiedza na temat interakcji systemu operacyjnego z oprogramowaniem, jak wyodrębnić takie informacje i zweryfikować własną pracę; bez systemu operacyjnego i jego bootloadera, oprogramowanie sprzętowe jest bezużyteczne, więc często praca inżyniera oprogramowania sprzętowego przenosi się na bootloadery, systemy operacyjne i hipernadzorców (ang. hypervisor).
    • biegły w C i assemblerach – czasami problemy wymagają głębszego zanurzenia się w kod niskiego poziomu w celu zlokalizowania błędu
    • cierpliwy i dociekliwy – dużo pracy z firmware’em to debugowanie przy czym programowanie zajmuje około 20% czasu; inżynier oprogramowania sprzętowego powinien posiadać te cechy, ponieważ ze względu na złożoność firmware’u problem może występować hipotetycznie w wielu komponentach
    • chętny do nauki – elementy składające się na komputer zazwyczaj mają własną specyfikację; prawie każde urządzenie peryferyjne, interfejs, struktura systemu operacyjnego/firmware’u mają swoją dokumentację (często setki stron); inżynier nie może obawiać się ogromu wiedzy, która musi zostać przyswojona, aby mógł zostać ekspertem od oprogramowania sprzętowego
    • zainteresowany technologiami/projektami takimi jak coreboot, UEFI, ACPI, Secure Boot, LinuxBoot, BMC, FPGA, EC, heads, tianocore, jądro Linux, GRUB, Xen, itp.

    Codzienne wyzwania

    • rozwój firmware’u i debugowanie
    • rozwiązywanie problemów sprzętowych
    • przenoszenie („portowanie”) komputerów do otwartego oprogramowania sprzętowego
    • wkład w projekty open-source
    • inżynieria odwrotna (reverse engeneering)
    • analiza zabezpieczeń
    • autoweryfikacja
    • tworzenie dokumentacji

    Osiągnięcie samodzielności

    Tematy związane z oprogramowaniem sprzętowym są zazwyczaj obszerne, a czas niezbędny do osiągnięcia pełnej gotowości może wynosić nawet kilka lat. Najważniejszym dla inżyniera oprogramowania sprzętowego jest samodoskonalenie. Czas poświęcony na czytanie dodatkowych specyfikacji i standardów, zapoznanie się z nowymi technologiami i sprzętem na pewno się opłaci.

    Dla młodszych (lub raczej niedoświadczonych) kandydatów powinno to zająć od 3 do 6 miesięcy, aby osiągnąć podstawową gotowość do pracy jako inżynier oprogramowania sprzętowego w 3mdeb. Natomiast dla inżynierów na poziomie „regular” szacujemy ,że 1 miesiąc jest wystarczającym czasem, aby być w stanie pracować samodzielnie.


    Wizja Zespołu Embedded 

    Tworzymy wbudowane systemy operacyjne od zera tak,
    żeby były bezpieczne, stabilne i ekstremalnie wydajne.

    Wprowadzenie

    Tworzymy wbudowane systemy operacyjne dla naszych partnerów, a następnie zapewniamy im wsparcie. Skupiamy się na systemach wbudowanych, które są ograniczone ilością zasobów, bardzo kompaktowe i z konieczności niezwykle efektywne. Bardzo rzadko dysponują środowiskiem graficznym i są stworzone z myślą o małych maszynach z niewielkim marginesem autonomii. To dotyczy urządzeń używanych w IoT, robotyce, zastosowaniach medycznych, wojskowych i na każdym polu, gdzie występują systemy o znaczeniu krytycznym. Często używamy Yocto aby tworzyć dla naszych klientów rozwiązania szyte na miarę ich potrzeb.

    Kogo potrzebujemy

    Potrzebujemy ludzi, którzy są zaznajomieni z architekturą systemów komputerowych. Takich, którzy posługują się biegle językiem C, oraz posiadają doskonała znajomość systemów Linux. Inne języki programowania (C++, Python, Golang) będą dodatkowym atutem.

    Co oferujemy

    • Poznanie najnowszych technologii i rozwiązań najwyższej klasy.
    • Dostęp do różnych projektów z możliwością nauki szerokiego spektrum nowoczesnych technik i poszerzania własnych horyzontów.
    • Okazję do promowania oraz uczestnictwa w społeczności open-source poprzez wprowadzanie nowych funkcjonalności w otwartym kodzie źródłowym.
    • Okazję do wzięcia udziału w wielu konferencjach i spotkania się z ludźmi z całego świata.

    Jaki powinien być dobry inżynier systemów wbudowanych:

    • entuzjastycznie nastawiony do open-source'u - każdy inżynier w 3mdeb powinien promować open-source jako część tworzenia własnej marki i wizji firmy; specjalizujemy się na kontrybucji do projektów takich jak Yocto Project, OpenEmbedded, Linux U-Boot, SWUpdate, ale publikujemy również w wielu innych.
    • skrupulatny - nawet pojedyncza zmiana bitu może spowodować znaczny błąd, dlatego nie powinien ignorować najmniejszych zmian w rejestrach
    • samowystarczalny - inżynierowie oprogramowania wbudowanego w 3mdeb muszą być w stanie znaleźć rozwiązanie samodzielnie, starszy inżynier może jedynie doradzać w celu osiągnięcia rozwiązania problemu
    • doświadczony w pracy z Linuxem - nie tylko używamy go do pracy, ale dosłownie tworzymy i kompilujemy własne dystrybucje
    • elastyczny i zdolny do szybkiej nauki - systemy embedded działają na niskim poziomie,, dlatego niezbędna jest wiedza na temat interakcji systemu operacyjnego z oprogramowaniem sprzętowym, jak wyodrębnić potrzebne informacje i zweryfikować własną pracę; często praca inżyniera systemów embedded dotyka również takich zagadnień jak bootloadery, oprogramowanie sprzętowe i hipernadzorcy (ang. hypervisor).
    • biegły w językach C, Golang, Python - czasami problemy wymagają głębszego zanurzenia się w kod niskiego poziomu w celu zlokalizowania błędu, a czasem ich rozwiązanie wymaga wiedzy na temat wysokopoziomowych aplikacji.
    • cierpliwy i dociekliwy - dużo pracy systemami wbudowanymi to debugowanie przy czym programowanie zajmuje około 40% czasu; inżynier systemów wbudowanych powinien posiadać te cechy, ponieważ ze względu na ich złożoność problem może występować hipotetycznie w wielu komponentach
    • chętny do nauki - elementy składające się na komputer zazwyczaj mają własną specyfikację; prawie każde urządzenie peryferyjne, interfejs, struktura systemu operacyjnego/firmware'u mają swoją dokumentację (często setki stron); inżynier nie może obawiać się ogromu wiedzy, która musi zostać przyswojona, aby mógł zostać ekspertem od oprogramowania sprzętowego
    • zainteresowany technologiami/projektami takimi jak Yocto project, Linux kernel, U-Boot, GRUB (i inne bootloadery), Android (AOSP), OpenBMC, Xen itp.
    • posiadający praktyczne doświadczenie w pracy z różnorodnymi komputerami jednopłytkowymi, zwłaszcza opartymi o x86 (Intel/AMD) i ARM (NXP, Broadcom, Allwinner, Amlogic, Qualcomm, Rockchip, TI, ST, …) SoC

    Codzienne wyzwania

    • rozwój systemów embedded i ich debugowanie
    • rozwiązywanie problemów sprzętowych
    • przenoszenie ("portowanie") komputerów do otwartego oprogramowania sprzętowego
    • wkład w projekty open-source
    • inżynieria odwrotna (reverse engeneering)
    • analiza zabezpieczeń
    • autoweryfikacja
    • tworzenie dokumentacji

    Osiągniecie samodzielności

    Tematy związane z embedded są zazwyczaj obszerne, a czas niezbędny do osiągnięcia pełnej gotowości może wynosić nawet kilka lat. Najważniejszym dla inżyniera systemów wbudowanych jest samodoskonalenie. Czas poświęcony na czytanie dodatkowych specyfikacji i standardów, zapoznanie się z nowymi technologiami i sprzętem na pewno się opłaci.
    Dla młodszych (lub raczej niedoświadczonych) kandydatów powinno to zająć od 3 do 6 miesięcy, aby osiągnąć podstawową gotowość do pracy jako inżynier systemów wbudowanych w 3mdeb. Natomiast dla inżynierów na poziomie "regular" szacujemy ,że 1 miesiąc jest wystarczającym czasem, aby być w stanie pracować samodzielnie.

    Kontakt z nami

    Jeśli masz jakieś pytania skontaktuj się z nami.