Nicos Einstieg in die Tool-Entwicklung bei Vector als Trainee | Vector
28.09.2023

Nicos Einstieg in die Tool-Entwicklung bei Vector als Trainee

In der Inside Story auf get-in-it erzählt unser Softwareentwickler Nico über seinen erfolgreichen Einstieg als Trainee bei Vector und über seine Erfahrungen in den zwei Bereichen der Tool-Vorausentwicklung für CANoe und der AUTOSAR-Entwicklung für Embedded Systems.

Nico Holtwerth absolvierte ein duales Studium der Angewandten Informatik an der DHBW Stuttgart. Nach erfolgreichem Abschluss seines Bachelorstudiums wechselte er an die Universität Stuttgart, um noch einen Master in Informatik draufzusetzen. Mit dem Masterabschluss in der Tasche startete Nico bei seinem jetzigen Arbeitgeber Vector Informatik im Top-Absolventen-Programm, das ihn in die Abteilung "Research & Development for Innovative Tool-Applications" führte. In dieser Position trägt er aktiv zu Projekten bei, darunter auch die Entwicklung des Tools CANoe.

Was ist eigentlich das Traineeprogramm bei der Vector und wie lange dauert es? 

Das ist sehr individuell gestaltet. Es gibt kein bestimmtes Einstiegsdatum, man steigt als normaler Mitarbeiter ein, man hat ein normales Gehalt wie jeder andere Mitarbeiter auch, aber man ist zusätzlich in dem Traineeprogramm drin. Das Programm geht meistens so um die zwei Jahre. Es kann mal weniger lang dauern, mal ein bisschen länger. Ich kenne Leute, die haben das innerhalb von 18 Monaten gemacht, andere waren zweieinhalb Jahre drin.

Man startet in einer Warm-up-Phase, die findet in der Stammabteilung stattfindet, bei der man sich auch beworben hat. Danach geht es durch verschiedene Speed-Phasen, in denen unterschiedliche Bereiche des Unternehmens durchlaufen werden. Man macht dann insgesamt drei bis vier Rotationen, wie es individuell passt. Meine Warm-up-Phase war z.B. acht Monate und jetzt bin ich gerade in meiner ersten Speed-Phase. Man kann innerhalb einer Speed-Phase auch mal in einer Abteilung im Ausland arbeiten, das ist bei mir konkret der Fall, denn ich bin gerade in Schweden.

Gibt es ein Mentoring oder Coaching?

Man wird gefördert durch verschiedene Leute. Es gibt einen Primary Coach, der oder die als Mentor/-in Ansprechpartner/-in für das ganze Programm fungiert. Mit dem Primary Coach zusammen gestaltet man seine Rotationen im Trainee Programm. Ich bin z.B. zu meinem Primary Coach gegangen und habe gesagt, dass ich gerne eine Zeitlang ins Ausland gehen würde und dann haben wir einfach nach einer Entwicklerstelle geschaut, die Sinn für mich macht. Dafür haben wir uns 2-3 Stellen angeschaut und letztendlich für eine Speed-Phase in Schweden entschieden. 

Solche Themen diskutiert man dann einfach mit dem Primary Coach. Er oder sie kann auch helfen, ein Netzwerk zu schaffen, mit Leuten in der Firma Kontakt aufzubauen, Leute kennenzulernen und über den Tellerrand hinauszuschauen. Zusätzlich gibt es Speed-Coaches, welche einfach Ansprechpartner/-innen in der Rotationsabteilung für fachliche Fragen sind.

Welche Vernetzungsformate gibt es?

Hier bei Vector gibt es mehrere Trainees und wir sind auch alle untereinander vernetzt.

1. Roundtable

Wir organisieren zum Beispiel einen Roundtable zusammen, da wird ein Thema vorbereitet, das wir dann mit der Geschäftsführung und Abteilungsleitern diskutieren. Jetzt gerade ist ein bestimmtes KI-Thema dran. Da sind wir gerade wieder mitten in der Vorbereitung. 

2. Trainee-Mittagessen

Wir haben zusätzlich noch ein Trainee-Mittagessen. Klassisch, einfach mal treffen, „socializen“, wie man es immer so schön sagt.

3. Wissenstransfer

Da geht es da einfach darum, dass wir alle in unterschiedlichen Abteilungen sind, d.h. einige kennen bestimmte Abteilungen besser als andere. Im Wissenstransfer erfahren wir, was die anderen Trainees machen, wie hat es denen dort gefallen, wie funktionieren die anderen Abteilungen, wie funktionieren die einzelnen Teams in den Abteilungen, etc. und wir tauschen dann einfach unsere Erfahrungen aus. 

4. Kollegiale Fallberatung

Das ist auch ein bisschen Softskill-Training. Dabei geht es darum, dass man ein Problem, also gar kein fachliches Problem, einfach ein generelles Problem methodisch aufarbeitet. Da gibt es einen Trainee als Problemsteller und die anderen Trainees sind Berater. Man wählt eine Methodik aus, nach der man versucht, dieses Problem zu lösen oder einfach nur Tipps zu geben. Also wenn es zum Beispiel Probleme mit dem Chef gibt, wie verhalte ich mich dann o.ä. Es kann sein, dass wir bei einer realen Problemstellung helfen oder eine fiktive Problemstellung heranziehen. Es geht vor allen Dingen darum, die Methodik einfach mal anzuwenden.

In welchen Bereichen warst du bereits tätig und in welcher Phase befindest du dich gerade?

1. Warm-up-Phase in der Tool-Vorausentwicklung im Bereich Netzwerk-Kommunikation

In der Warm-up-Phase war ich in der Tool-Vorausentwicklung. Ich bin in der Abteilung "Research & Development for Innovative Tool-Applications", das ist der interne Name für die Vorausentwicklung von CANoe unter anderem. 

Was ist CANoe? Hier mal ein Szenario, um einen Eindruck zu bekommen: Wenn man Software für ein Steuergerät entwickelt und diese dann testen möchte, kann mithilfe von CANoe ein Testaufbau erstellt werden, in dem das Steuergerät keinen Unterschied zur realen Fahrzeugumgebung erkennt. In dem System können Aktoren und Sensoren sein, die jeweils Datenwerte setzen oder lesen. Diese können mithilfe eines sogenannten VT Systems sowohl als reale Komponenten im Testaufbau angeschlossen, als auch simuliert werden. Weitere Steuergeräte können auch innerhalb von CANoe simuliert werden. CANoe kann dann relevante Daten anzeigen und diese auch stimulieren. Somit kann getestet werden, wie sich das System in bestimmten Szenarien verhält. So ein Testaufbau ist ein verteiltes System, in dem viel Netzwerkkommunikation stattfindet. Da kommen dann unterschiedlichste Netzwerkprotokolle ins Spiel. In meiner Warm-up Phase waren das z.B. Protokolle wie HTTP, MQTT, DDS und Websocket. Es ging vor allem darum, Daten zu serialisieren und zu deserialisieren.

CANoe: Tool-Vorausentwicklung im Bereich Netzwerk-Kommunikation

2. Station: AUTOSAR-Entwicklung

Die zweite Station habe ich im Bereich der AUTOSAR-Entwicklung absolviert. Das ist eine Spezifikation, wie Basissoftware für Steuergeräte entwickelt wird, d.h. eine offene und standardisierte Softwarearchitektur. Da gibt es verschiedene Komponenten in der Plattform, z.B. die AUTOSAR Adaptive Kommunikationskomponenten. Und dort bin ich jetzt auch konkret im Einsatz. Die Kommunikationskomponenten implementieren, wie Anwendungen auf Steuergeräte untereinander im Auto kommunizieren, d.h. über welche Protokolle Nachrichten geschickt werden. Im AUTOSAR Adaptive Bereich funktioniert die Kommunikation Service orientiert mithilfe von Protokollen wie z.B. SOME/IP. Es gibt aber auch weitere Komponenten unter anderem für die Diagnose und Persistency.

Die Adaptive Plattform basiert auf der API-Untergruppe PSE51 des POSIX-Standards. Dann gibt es noch die AUTOSAR Classic Plattform, da läuft die Basissoftware auf dem Mikrocontroller selbst. Das Interessante an dieser Station ist, dass die Basissoftware nachher auch wirklich im Auto landet, was hohe Sicherheitsanforderungen mit sich bringt. Interessant ist vor allem der Entwicklungsprozess, um diese Sicherheitsanforderungen zu gewährleisten. Die Software muss funktionieren. Es wäre nicht gut, wenn auf Grund eines Software Bugs eine bestimmte Kommunikation nicht funktioniert und dadurch ein Unfall verursacht wird, weil die Signale nicht ankommen. 

Und bei dieser Art von Softwareentwicklung wird dann sehr viel getestet. Das ist auch das Interessante an dieser aktuellen Rotation im Vergleich zu der Tool-Entwicklung, wo man diese hohen Anforderungen nicht unbedingt hat. Dort kann man ein bisschen freier entwickeln. Das ist ein starker Kontrast im Alltag des Entwickelns. Für mich wird es dann wahrscheinlich so Ende Oktober, Anfang November wieder zurück in die Tool-Entwicklung gehen, also wieder in den CANoe Bereich.

Q&As der Session

Welche Programmiersprachen oder Kenntnisse sind bei euch von Vorteil?

Ja, es ist auf jeden Fall ein großer Vorteil, C++ zu können, weil viel bei uns in C++ geschrieben ist. Wir haben auch sehr viel Java. Zum Beispiel das Tool PREEvision, welches in Java entwickelt wird. Aber auch hier bei uns im AUTOSAR-Umfeld ist ein bisschen Java mit dabei. Aber ansonsten ist es viel C++, C, es gibt vereinzelt Python und TypeScript, aber das ist gar nicht so die Masse. Ich würde sagen, die großen, weit verbreiteten Sprachen bei uns in der Firma sind C++ und Java.

Und mit welchen Programmiersprachen entwickelst du? 

Ich bin gerade rein im C++ Umfeld mit einem bisschen Java.

Kann man auch nach dem Traineeprogramm für einzelne Projekte ins Ausland gesendet werden, aber nicht für ein bis zwei Jahre, sondern vielleicht für ein paar Monate?

Genau, die Regel sind drei Monate. Ich habe z.B. die ersten drei Monate remote aus Deutschland gearbeitet, und bin jetzt im Sommer hier in Schweden in Göteborg vor Ort dazugestoßen.

Wie sieht das generell bei euch aus mit Homeoffice und Remote-Work-Möglichkeiten? 

Das ist auf jeden Fall möglich. In der Regel soll man ein Drittel der Zeit im Büro sein. Man ist sehr gerne bei Vector im Büro, es ist ein sehr modernes Büro, man hat nette Kolleginnen und Kollegen, aber die Kantine erst - das muss man sagen, wenn man hier in Stuttgart unterwegs ist - viele Leute im Kreis Stuttgart kennen Vector auch einfach nur wegen der Kantine, die ist wirklich super! 

Es gibt aber auch eine Möglichkeit für einen 100%-Remote-Arbeitsvertrag. Aber das wird alles individuell besprochen.

Was ist während deines Traineeprogramms das interessanteste Projekt gewesen, woran du mitgearbeitet hast? 

Also ich würde sagen, das waren beides sehr interessante Projekte, die einfach ganz unterschiedliche Anforderungen hatten. Wahrscheinlich würde ich sogar sagen, dass das erste in meiner Warm-up-Phase für mich persönlich interessanter war, weil ich da ein bisschen freier in meiner Arbeit war. Da wurde mir einfach ein Projekt gegeben, „Wir haben dieses Problem“ und wir schauen mal ob und wie wir das lösen können. Da hat man mehr Freiheiten, Lösungsansätze zu finden und beginnt erstmal diese in der Konzeptionsphase weiter zu diskutieren und dann umzusetzen. 

Meine jetzige Station, die AUTOSAR-Entwicklung, ist reine Entwicklung. Da geht es gerade vor allem um die Umsetzung von schon geplanten und konzipierten Features.

Welche IDE nutzt du?  

Auch wieder zwei unterschiedliche für die jeweiligen Phasen. Für die CANoe Entwicklung haben wir in der Regel Visual Studio. Und hier in der AUTOSAR-Entwicklung entwickeln wir entweder in VS Code oder in CLion und für die Java-Entwicklung, die dann ab und zu mal stattfindet, haben wir entweder IntelliJ oder Eclipse. Da kann man sich auch ein bisschen frei entscheiden.

Interesse am Trainee-Programm für Top-Absolventinnen und Top-Absolventen?

Weitere Infos und Bewerbungsmöglichkeiten

Video-Aufzeichnung der Session