W skrócie
- Zadania: Twórz środowisko benchmarkowe dla systemów czasu rzeczywistego i analizuj ich wydajność.
- Firma: Innowacyjna firma technologiczna z elastycznym modelem pracy.
- Benefity: Stawka godzinowa $70–90, praca zdalna i możliwość rozwoju zawodowego.
- Pozostałe informacje: Praca w dynamicznym środowisku z możliwościami rozwoju kariery.
- Dlaczego ta praca: Zdobądź doświadczenie w pracy z systemami czasu rzeczywistego i wpływaj na innowacyjne projekty.
- Kwalifikacje: Doświadczenie w systemach wbudowanych i analiza wydajności.
Przewidywane wynagrodzenie mieści się w przedziale 70 - 90 zł za godzinę.
Lokalizacja: Polska
Model pracy: Hybrydowy
Rodzaj zatrudnienia: Freelance – stawka godzinowa: 70–90 USD (płatne za zaakceptowane zadanie)
Obowiązki:
- Budowanie środowiska benchmarkowego wokół systemu czasu rzeczywistego, nad którym pracowałeś – ECU, kontroler, jednostka sterująca lotem lub silnikiem.
- Dołączenie zestawu zadań i kodu źródłowego, podręczników referencyjnych MCU lub SoC oraz kart katalogowych, konfiguracji RTOS, mapy linkera, zmierzonych śladów czasowych oraz terminów, które system musiał spełnić.
- Ustawienie narzędzi potrzebnych do pracy – kompilator krzyżowy, QEMU lub symulator zestawu instrukcji, narzędzia do śledzenia, Python, narzędzia PDF oraz narzędzie do analizy schedulowalności, jeśli go używasz.
- Napisanie pięciu lub więcej zadań, każde oparte na decyzji dotyczącej czasu lub pamięci lub awarii w tym systemie (np. granice WCET dla rutyn asystujących w parkowaniu, układ rdzeni i priorytetów dla kontrolera ADAS pod wpływem zakłóceń pamięci, rzadkie resetowanie kontrolera po wydaniu oprogramowania).
- Uformowanie każdego zadania tak, aby model musiał wygenerować answer.json z granicą WCET dla każdej rutyny, przypisaniem rdzenia i priorytetu lub układem pamięci.
- Ukrycie obciążenia decyzyjnego, gdzie inżynier musiałby się w nie zagłębić – wybuchy ISR i DMA w śladach, zakłócenia magistrali lub pamięci podręcznej między rdzeniami, ustawienie zegara w podręczniku referencyjnym.
- Napisanie ukrytego skryptu oceniającego, który sprawdza granice w stosunku do zmierzonych śladów w określonej tolerancji i przeprowadza analizę czasu odpowiedzi dla każdego terminu i limitu pamięci, oceniając od 0.0 do 1.0.
- Dostarczenie własnej odpowiedzi (ocena 1.0) oraz naiwnej odpowiedzi, którą mógłby dać kompetentny inżynier (ocena poniżej 0.3).
- Ustalenie trudności zadań tak, aby modele frontier rozwiązywały je w 1 do 4 na 10 prób, lub nie udało się rozwiązać wszystkich 10 dla zestawu ewaluacyjnego.
Wymagania:
- Praktyczne doświadczenie w pracy z systemem wbudowanym czasu rzeczywistego – ECU, kontroler, jednostka sterująca lotem lub silnikiem.
- Silne zrozumienie analizy WCET, analizy czasu odpowiedzi i schedulowalności.
- Doświadczenie z konfiguracją RTOS, priorytetami zadań i przypisaniem rdzeni wielordzeniowych.
- Umiejętność pracy z podręcznikami referencyjnymi MCU lub SoC, kartami katalogowymi i mapami linkera.
- Doświadczenie w analizie śladów czasowych, w tym obciążenia ISR i DMA oraz zakłóceń magistrali lub pamięci podręcznej między rdzeniami.
- Komfort w pracy z kompilatorami krzyżowymi, QEMU lub symulatorami zestawu instrukcji oraz narzędziami do śledzenia.
- Umiejętności programowania w Pythonie do pisania automatycznych skryptów oceniających.
Możemy przyjąć tylko kandydatów, którzy są gotowi pracować jako indywidualni wykonawcy / freelancerzy.
Real-Time Budget Planner in Łódź – pracodawca: Hashlist
Nasza firma to doskonały pracodawca, który oferuje elastyczny model pracy hybrydowej oraz atrakcyjne wynagrodzenie dla specjalistów w dziedzinie inżynierii automatyki. Wspieramy rozwój zawodowy naszych pracowników poprzez dostęp do nowoczesnych narzędzi i technologii, a także stawiamy na kulturę współpracy i innowacji, co sprawia, że praca w naszym zespole jest nie tylko satysfakcjonująca, ale i pełna wyzwań.
Naszym zdaniem te umiejętności pozwolą ci błyszczeć jako Real-Time Budget Planner in Łódź
Analiza WCET
Analiza czasu odpowiedzi
Analiza wykonalności
Konfiguracja RTOS
Przydzielanie priorytetów zadań
Doświadczenie w systemach wbudowanych czasu rzeczywistego
Analiza śladów czasowych