Rozmowa z Grzegorzem Gutmajerem, Delphi w Krakowie

| Wywiady

Krakowskie centrum techniczne Delphi stało się jednym z najszybciej rozwijającym się oddziałów firmy na świecie "...O ile początkowo grupa elektroników centrum technicznego zajmowała się jedynie oprogramowaniem, a dokładniej tworzeniem fragmentów wchodzących w skład dużej całości, to w miarę kolejnych zadań nasze zaangażowanie rosło..."

Rozmowa z Grzegorzem Gutmajerem, Delphi w Krakowie
  • W jaki sposób można scharakteryzować związki firmy Delphi z elektroniką?
  • Mimo, że główną domeną działalności firmy jest motoryzacja i zajmujemy się głównie tworzeniem systemów i urządzeń pracujących w samochodach, tym co stanowi wspólny element wielu z naszych produktów jest elektronika.

    Firma podzielona jest na szereg grup produktowych, a te zajmujące się szeroko rozumianą elektroniką realizują projekty związane z systemami zabezpieczeń, komunikacją, multimediami, tworzeniem systemów sterowania pojazdem itd. Oprócz projektowania, Delphi zajmuje się produkcją wymienionych urządzeń i obsługą serwisową przy współpracy z producentami samochodów.

  • Jaką funkcję w tej strukturze pełni krakowski oddział?
  • Największa z grup inżynierów zlokalizowanych w Krakowie, to pracownicy działu elektroniki. Zajmują się oni zarówno realizowaniem projektów na zlecenie producentów samochodów, jak też pomocniczą działalnością usługową na rzecz innych jednostek biznesowych firmy, które także wykorzystują układy elektroniczne w swoich konstrukcjach.

    O ile początkowo grupa elektroników centrum technicznego zajmowała się jedynie oprogramowaniem, a dokładniej tworzeniem fragmentów wchodzących w skład dużej całości, to w miarę kolejnych zadań nasze zaangażowanie rosło. Wynikło to z rozwoju polskiego ośrodka, a więc wzrostu liczby zatrudnionych osób, jak również z coraz większego doświadczenia. Obecnie nadal bierzemy udział w dużych międzynarodowych projektach, ale cały szereg mniejszych zadań realizujemy od początku do końca samodzielnie. Zależy to od tego nad czym aktualnie pracujemy, gdyż poszczególne ośrodki mają mniejszą lub większą specjalizację lub po prostu, na określonych zagadnieniach lepiej się znają.

    Podobnie, jak w przypadku wielu innych korporacji o światowym zasięgu działania, tak samo w przypadku Delphi rozwój działu tworzenia oprogramowania i elektroniki w Europie następował w drodze przejęć mniejszych firm z ich doświadczeniem i wiedzą w konkretnych produktach. Ten proces w szczególności dotyczył Europy. Poszczególne ośrodki przejmowano z całym bagażem doświadczeń, co powoduje, że mają one swoje preferencje wynikające z wcześniejszej działalności, sposób prowadzenia projektów. Inaczej jest w przypadku naszego ośrodka w Krakowie, gdyż ten rósł od podstaw w ramach Delphi.

  • Kiedy rozpoczęliście działalność projektową? Jakie zagadnienia realizowane były jako pierwsze?
  • Krakowska grupa zajmująca się elektroniką powstała w 2001 roku. Wówczas był to 6-osobowy zespół ludzi odpowiadający za realizację zleceń z zakresu oprogramowania do systemów wbudowanych. Pierwszy nasz projekt dotyczył fragmentu elektroniki sterującej alarmem, immobilizerem, światłami zewnętrznymi i wewnętrznymi, a drugi dla systemu nawigacyjno-multimedialnego dla firmy Saab. Nasz zespół wchodził wtedy w skład 100-osobowej grupy inżynierów z różnych ośrodków Delphi zaangażowanych w realizację całego projektu.

  • Dlaczego na początku skupiono się na tworzeniu oprogramowania?
  • Rozpoczęcie inwestycji w Polsce od strony tworzenia oprogramowania było dla koncernu najłatwiejszą formą inwestycji, gdyż nie wymagało ponoszenia na początku dużych kosztów związanych narzędzi i sprzętu laboratoryjnego - ten etap nadszedł później.

    Te pierwsze projekty miały również na celu przekonanie zarządu Delphi, że Polska jest miejscem gdzie można stworzyć centrum projektowe o pełnych możliwościach działania. W praktyce nasz sukces przy tworzeniu oprogramowania podczas pierwszych projektów oznaczał „zielone światło” dla rozszerzenia zespołu o grupę mechaników zajmujących się projektowaniem części mechanicznej urządzeń, elektroników i testerów, którzy dysponują wiedzą na temat jak projektować oraz o zespół zarządzania projektami.

    O ile działalność związaną z oprogramowaniem można uważać za początek działu rozwoju oprogramowania i elektroniki firmy Delphi w Polsce, to kluczowe było rozszerzenie zakresu pracy o mechanikę, elektronikę i testowanie środowiskowe, co miało miejsce na przełomie lat 2003 i 2004. Stało się to na tyle szybko, że traktuję te decyzję jako formę docenienia naszych wysiłków i kompetencji. W skali świata krakowskie centrum techniczne jest jednym z najszybciej rozwijającym się oddziałów. Aktualnie krakowski ośrodek badawczo-rozwojowy Delphi zatrudnia ponad 800 osób, z których 350 zajmuje się rozwojem oprogramowania i elektroniki. Przez cały czas prowadzimy rekrutację. Oceniam, że po zatrudnieniu kolejnych kilkudziesięciu inżynierów programistów, testerów, mechaników i elektroników pod koniec tego roku nasz zespół będzie liczył ponad 400 osób.

  • Na ile dużą samodzielność w pracy ma polski oddział Delphi?
  • W typowym przypadku światowe korporacje budują nowe oddziały zagraniczne wysyłając w nowe lokalizacje swoich ludzi, którzy w zależności od kompetencji lokalnych zasobów przez pewien czas pracują wspólnie. W naszym przypadku taką osobą był jeden Amerykanin polskiego pochodzenia, który nie tylko nauczył nas, w jaki sposób działa Delphi, ale też skutecznie zareklamował nasze kompetencje tym, którzy podejmowali decyzje o rozwoju. Obecnie w naszej grupie jest jeden cudzoziemiec.

    Jeśli chodzi o stopień swobody przy projektowaniu, to w największym stopniu zależy on od naszego klienta, który definiuje ramy projektu zarówno od strony technicznej jak i biznesowej w postaci formalnych wymagań. Dochodzą też decyzje strategiczne np. jakich mikrokontrolerów czy komponentów używamy w skali globalnej, jakie technologie i procesy stosujemy podczas projektowania. Delphi ma własne fabryki komponentów i podpisane umowy z dostawcami podzespołów, przez co korzystamy w pierwszej kolejności z tych zasobów. Mamy też swój styl pracy, ujęty w sformalizowane procesy opisujące przebieg realizacji projektu na jego różnych etapach i w różnych kompetencjach.

    Realizacja projektu to iteracyjny i wieloetapowy proces, gdzie podczas wielu rozmów z naszym zleceniodawcą uściślamy jego oczekiwania, definiujemy nasze zadania i podejmujemy decyzje jak wykonać projekt. W wielu momentach to klient określa, jak ma wyglądać urządzenie od strony technicznej, na przykład, jakie technologie lub rozwiązania mamy wykorzystać. Klienci również mają swoje przyzwyczajenia – dotyczy to zarówno zespołów i ośrodków, z którymi współpracują.

  • W jakiej tematyce lub projektach czujecie się najbardziej kompetentni?
  • Nasze największe doświadczenie dotyczy tworzenia oprogramowania, a w szczególności firmware do układów zabezpieczających przed kradzieżą, takich jak immobilizery, syreny alarmowe, układów zdalnego sterowania radiowego czy centralnego zamka. W współczesnym samochodzie takie elementy są połączone w jedną całości magistralą CAN lub LIN i wchodzą w skład systemu sterowania całym pojazdem.

    Drugą grupą produktów, w których czujemy się silni są samochodowe multimedia, od prostych radioodbiorników, przez systemy nawigacyjne po rozrywkę audiowizualną.

    Jeśli chodzi o zakres pracy nad projektem, to w zależności od tego jak złożony system jest realizowany, tworzymy go od początku do końca w Krakowie lub też pracujemy nad nim w ramach międzynarodowych zespołów projektowych. Nie ma prostego podziału na to, co robi konkretny zespół, gdyż zbyt wiele czynników wpływa na to, gdzie aktualnie firma ma wolne moce inżynierskie. Staramy się, aby nasi inżynierowie nie mieli bardzo wąskich specjalizacji, co sprzyja to większej elastyczności firmy. Oprócz projektowania układów elektronicznych i tworzenia firmware, zajmujemy się też konstrukcją mechaniczną oraz intensywnymi testami, aby zapewnić, że nasze produkty będą działać co najmniej tak długo, jak przewidywany „czas życia” pojazdu.

    Warto zauważyć, że nasze projekty są realizowane do końca, czyli że firma zajmuje się także produkcją, mając szereg wyspecjalizowanych fabryk rozsianych po całym świecie. Jest to dla nas istotne z biznesowego punktu widzenia i pomocne w procesie projektowania. Bez sprzężenia zwrotnego pochodzącego z działów produkcji trudniej byłoby utrzymać najwyższą jakość i niezawodność. Wielka skala działania jest też dla naszych klientów szansą, aby inżynierskie koszty opracowania rozłożyły się na zamawiane długie serie.

  • W jaki sposób zdobywa się zlecenia na projekty?
  • W większości przypadków wybór, komu zlecić projekt i produkcję, rozpoczyna się tym, że klient wysyła do kilku firm specyfikację techniczną, czyli mniej lub bardziej precyzyjny opis co chce otrzymać - na przykład radioodbiornik z nawigacją. Na tej podstawie, w ciągu dość krótkiego czasu (np. dwóch tygodni) musimy przedstawić naszą ofertę techniczną, określić warunki finansowe i czasowe związane z usługą projektowania i produkcją tego urządzenia w określonej skali. Kiedyś taka specyfikacja była odręcznie wypisaną kartką papieru, dzisiaj założenia projektowe do komputera sterującego pojazdem przekraczają tysiąc stron wydruku. Większość produktów ma kilka wariantów wykonania w zależności od wersji wyposażenia samochodu lub rynku, na którym będzie sprzedawany, co dodatkowo komplikuje wycenę.

    W ciągu tego okresu musimy przygotować ofertę zarówno pod kątem kosztów, możliwości technicznych, jak również terminu wykonania. Czasu zawsze jest niewiele, gdyż oprócz kwestii technicznych trzeba poznać oczekiwania klienta i uściślić, jakie ma wymagania. Wielokrotnie proces ten przebiega w kilku iteracjach, mających na celu doprecyzowanie wymagań, obniżenie przewidywanych kosztów, itp.

    Ten proces jest niezwykle ważny – dlatego pracują nad nim osoby o największym doświadczeniu, znajomości klienta. To po prostu „być albo nie być” dla nas – na podstawie tej pracy klient decyduje, czy przez najbliższych kilka lat jego dostawcą będzie Delphi, czy też inna konkurująca firma.

  • Ile czasu zajmuje realizacja typowych projektów? Ile osób jest zaangażowanych w taką pracę?
  • Przykładowy czas realizacji odbiornika z nawigacją wynosi od dwóch do trzech lat. W taki projekt, w typowym przypadku, musimy zaangażować kilkunastu inżynierów do stworzenia oprogramowania, od dwóch do czterech projektantów układu elektronicznego - w zależności od tego czy możemy skorzystać z wcześniejszych konstrukcji i zaoszczędzić trochę czasu. Do tego trzeba dołożyć nawet trzech projektantów mechaniki, kilku inżynierów walidacyjnych, koordynatora projektu i tym samym zespół projektowy liczy razem kilkadziesiąt osób. Potrzebny jest oczywiście również szef projektu, który czuwa realizacją i koordynacją działań podzespołów, często rozsianych po całym świecie.

    Takich zleceń realizujemy równolegle około stu, z czego część prowadzimy od początku do końca, a w innych uczestniczymy częściowo – w różnych zakresach. Mimo to w większości przypadków nasi pracownicy są przypisywani do konkretnych zadań na stałe i unikamy częstych zmian, gdyż nie sprzyja to komfortowi i efektywności pracy inżynierskiej.

    Powyższy przykład pokazuje dobitnie, że pisanie i testowanie oprogramowania jest największą i najbardziej czasochłonną częścią naszej pracy, mniej więcej połowa naszego wysiłku jest ukierunkowana w tę stronę. Wynika to z tego, że za oprogramowanie płaci się jeden raz, zaś za komponenty wchodzące w skład urządzenia za każdym razem. W związku z tym istnieje tendencja, aby jak najwięcej funkcji realizować programowo. Z drugiej, strony współczesny sprzęt elektroniczny staje się coraz bardziej złożony, co przekłada się bezpośrednio na rozmiar wbudowanego kodu. Przykładowy kod programu w syrence alarmowej to między 16 a 32KB, zaś główne urządzenie sterujące (body controller) w samochodzie ma nawet 1,5MB kodu, co odpowiada ponad 1 mln linii kodu źródłowego.

  • W jaki sposób zapewniacie bezbłędną pracę oprogramowania?
  • Oprogramowanie jest niestety produktem podatnym na błędy. Rosnące kryteria bezpieczeństwa nie pozwalają wypuszczać kodu z ukrytymi błędami, co od nas wymaga czasochłonnego testowania i sprawdzania. Dlatego też proces tworzenia oprogramowania jest w firmie bardzo usystematyzowany i sformalizowany. Mamy specjalistów zajmujących się architekturą oprogramowania, którzy określają jak zostanie ono podzielone na moduły i procedury, co będziemy realizować blokami sprzętowymi, a co programowo, jakie biblioteki i drivery kupimy, a które napiszemy samodzielnie.

  • Osoby te definiują interfejsy API do wymiany informacji między modułami, ustalają jak będzie wykorzystywany system przerwań, jakich podzespołów mikrokontrolera wykorzystać do zrealizowania odpowiedniej funkcjonalności. Samo kodowanie tak opisanego programu zajmuje orientacyjnie 20-30% czasu - pozostały czas poświęcony jest na projekt oprogramowania i jego weryfikację.

  • W jaki sposób testowane jest oprogramowanie?
  • Testowanie oprogramowania polega na sprawdzeniu, czy spełnia one z góry zdefiniowane funkcjonalności, i jak zachowuje się w sytuacjach nietypowych (np. niewłaściwe dane wejściowe, złe argumenty funkcji itp). Proces ten może być realizowany za pomocą specjalizowanych systemów testowych (testy automatyczne), jak również przez naszych wyszkolonych pracowników (testy manualne). Podczas testowania dzielimy oprogramowanie na małe kawałki i analizujemy je za pomocą odpowiednio dobranych danych wejściowych. Następnie po sprawdzeniu działania fragmentów kodu programujemy urządzenie i oddajemy je do kolejnych badań zespołowi, który symuluje warunki pracy odpowiadające temu, co dzieje się w samochodzie i sprawdza działanie całości programu.

  • W dalszej kolejności przeprowadza się badania w różnych warunkach środowiskowych czyli tzw. walidacja. Potem następuje faza badania na prototypach samochodów i dopiero wówczas urządzenie trafia do produkcji. Proces walidacji ma charakter iteracyjny, a liczba cykli związanych z poprawkami jest zmienna i zależy od wykonywanego projektu. Można oszacować, iż wynosi od kilku do kilkunastu razy. Dzięki takiej wielokrotnej kontroli unikamy „wpadek” i nie mieliśmy dotąd żadnej poważnej awarii związanej z oprogramowaniem.

    Warto zauważyć, że nasi klienci, a więc firmy z branży motoryzacyjnej, definiują swoje standardy jakości produktów i chętnie łączą się w grupy konsorcjów, kreujące wspólne standardy techniczne i jakościowe. Grupy te klasyfikują i oceniają też producentów takich jak Delphi pod kątem dojrzałości technicznej, a my w efekcie tych procesów zmieniamy swoje procedury i sposób działania, aby sprostać ich rosnącym wymaganiom. Dostosowanie się wymaga przejścia przez audyty i polega na eliminacji słabych punktów w procesie projektowym. Mamy też wewnętrzny dział jakości, który funkcjonuje równolegle do realizowanych projektów, kontrolując naszą pracę za pomocą audytów.

    Podobnie jak w przypadku innych branż i firm, nasi klienci o wiele chętniej wracają do nas w sytuacji, gdy wcześniejsze projekty spełniły ich oczekiwania. Jak dotąd to postrzeganie jest pozytywne, a współpracujący z nami producenci samochodów wskazują krakowski ośrodek Delphi jako miejsce, gdzie chcieliby realizować swoje następne projekty.

  • W jaki sposób pogłębiacie wiedzę inżynierską i poznajecie nowe technologie?
  • Mamy rozwinięty w firmie system szkoleń i wewnętrznej edukacji. Jest to uniwersytet on‑line, gdzie każdy pracownik można zapoznać się z odpowiednim materiałem edukacyjnym, kursami a następnie sprawdzić swoją wiedzę wypełniając test. Współpracujemy z dostawcami podzespołów elektronicznych, będąc dla nich strategicznym i dużym klientem. Dlatego otrzymujemy od nich profesjonalne wsparcie techniczne i informacje na temat nowości. Firmy te organizują dla nas seminaria i dni techniczne.

    Planowanie realizacji projektu polega również na tym, że sprawdzamy i swoją wiedzę i przewidujemy, jakie szkolenia i umiejętności będą nam potrzebne, aby móc kompetentnie zrealizować zadanie projektowe.

    Delphi ma w swoich strukturach pracowników na stanowisku technical fellow. Są to doświadczeni inżynierowie dobrze orientujący się w światowych trendach, nowościach technologicznych na rynku, którzy pomagają firmie w utrzymaniu wysokiego poziomu kompetencji technicznych. Nie uczestniczą oni bezpośrednio w realizacji projektów, ale przyglądają się temu co robimy i służą radami, tworzą rozwiązania patentowe, szukają nowych, przyszłościowych technologii.

    Są też osoby, które dbają, aby nasza praca była na odpowiednim poziomie nowoczesności. Zadaniem innych jest, by narzędzia i oprogramowanie wykorzystywane przez poszczególne ośrodki były ze sobą kompatybilne. Taki nadzór dotyczy setek szczegółów, łącznie z tym jak nazywać zmienne i jak komentować kod programu. Mamy też spisaną dokumentację i know-how związany z realizacją wcześniejszych projektów. Wielokrotnie borykaliśmy się z różnymi problemami, tak samo inni koledzy w różnych ośrodkach, dlatego wymieniamy się tą wiedzą po to, aby nie popełniać błędów.

  • W jaki sposób udaje się wam przy tak wielkim zaangażowaniu w pracę i licznych obowiązkach zajmować rozwojem produktów i technologii?
  • Oprócz pracy na zlecenie producentów samochodów, Delphi ma w swoich zasobach działy, które tworzą projekty urządzeń przyszłości i następnie demonstrują je producentom samochodów. Kreowanie nowych produktów, pomysły i innowacje powstają także w takich jednostkach, jak krakowskie centrum Delphi. Wydzielone grupy osób wymyślają nowe technologie oraz rozwijają istniejące produkty przez dodanie im nowych funkcji użytkowych. Przykładem może być rozwój oprogramowania na wirtualnych platformach sprzętowych. Takie zespoły są we wszystkich oddziałach koncernu i ich istnienie jest uzasadnione tym, iż klient potrzebuje wsparcia w zakresie funkcji przydatnych w jego ofercie za kilka lat. Zespół takich „innowatorów” jest w stanie pomóc sprecyzować takie potrzeby, aby zamówienie, które składa się dzisiaj odpowiadało oczekiwaniom rynku np. za trzy-cztery lata.

    Dodatkowo, jeśli spodziewamy się, że może do nas wpłynąć zamówienie na opracowanie jakiegoś produktu bazującego na nowych technologiach, które obecnie są w fazie tworzenia lub dopiero pojawiają się na rynku, to znaczy, że my musimy wcześniej je poznać, aby w fazie przyjmowania zamówienia mieć kompetencje i wiedzę na temat realizacji takiego projektu. Po otrzymaniu zlecenia jest już za późno na rozpoznawanie tematu.

    Mamy też w firmie działający program sugestii, w którym pracownicy mogą zgłaszać propozycje modernizacji i usprawnień technicznych.

    Pracownicy krakowskiego ośrodka Delphi wymyślili ponad 150 innowacyjnych rozwiązań, z których część jest już opatentowana. Mamy również dział zajmujący się reverse engineering, który dostarcza nam informacji na temat rozwiązań stosowanych przez konkurencję, po to abyśmy nie pominęli jakiś istotnych technologii lub rozwiązań, które powinniśmy znać.

Dziękuję za rozmowę.
Rozmawiał Robert Magdziak