Feiere mit uns das 20. Jubiläum des Developer Day – stets unter dem Motto «From Engineers to Engineers».
Der Anlass ist ausgebucht! Trage dich hier ein, um auf die Warteliste zu kommen.
Raum: Pavillon
Abstract
Join us for a keynote exploring the world of Open Source through the lens of the Open-Source Railway Designer (OSRD) project at SNCF Réseau. We'll start with an overview of OSRD, its primary objectives and aspirations, and its successful integration within SNCF Réseau, highlighting the cybersecurity challenges faced.
In the second part of our talk, we'll shift focus to the essentials of collaboration in open source projects. We'll provide practical tips for becoming a valued contributor and a satisfied maintainer, despite the typical hurdles of text-based and asynchronous communication.
Speaker:
Brieuc Loussouarn is the System Architect at OSRD where he leads discussions on software design and integration at SNCF Réseau.
Brieuc has been backend developer for 6 years in different companies including SNCF Réseau before being System Architect at OSRD. His expertise spans software development, strategic planning, and product innovation. Outside work, Brieuc is passionate about cycling, photography and cooking.
Lukas Grossar works as a Solution Architect at Adfinis. He fell down the open source rabbit hole while he was studying and has followed this passion ever since. When he's not talking about open source licenses and collaboration he's either building some application architecture on Kubernetes or trying out new tools and solutions.
Sprache: Englisch
Raum: Pavillon
Raum: Pavillon
Als Programmierer sind wir uns gewöhnt, täglich Probleme zu lösen und unsere Applikationen mit neuen Funktionen zu erweitern. Wir diskutieren und hinterfragen neue Fachanforderungen aber nur selten nehmen wir uns Zeit, unsere gewohnten Programmierstile zu hinterfragen.
Anhand einer einfachen Java-Applikationen werde ich in diesem Vortrag für verschiedene alltägliche Probleme unkonventionelle Lösungsansätze aufzeigen.
Diese alternativen Ansätze zielen darauf ab, die Verständlichkeit und Wartbarkeit des Codes zu verbessern.
Aber es geht nicht nur um Code-Beispiele; wir werfen auch einen Blick darauf, wie wir IntelliJ im Alltag noch effizienter nutzen können.
Sprache: Deutsch
Raum: Kulturschür UPtown OG
In meiner beruflichen Tätigkeit beschäftige ich mich immer wieder mit qualitativen und quantitativen Bewertungen von Software-Architekturen neuer oder bestehender Softwaresysteme.
Neben toolbasierenden Analysen gibt es verschiedene szenarienbasierte Methoden und Ansätze für Architektur Reviews wie ATAM (Architecture Tradeoff Analysis Method). Diese sind jedoch relativ aufwendig.
In meinem Vortrag stelle ich nach einer Einführung zum Nutzen von Architektur Reviews eine leichtgewichtige Bewertung anhand von Qualitätsanforderungen und Technologien mit Visualisierung der Ergebnisse vor.
Ein standardisiertes und integriertes Template deckt dabei den ganzen Prozess vom Scope über Qualitätsanforderungen, Assessment and Scoring bis zu Reporting und Konsolidierung ab.
Sprache: Deutsch
Raum: Pavillon
OpenShift Namespaces themselves are boring. But by giving you, the developer, the option to manage them yourself, they can provide the foundation for some pretty cool things. NamespaceClaims are our new tool for you to achieve exactly this: managing your own Namespaces. You like clicking? Well, use the SSP as before. You are a big fan of the GitOps-Everything-Gandalf-Plan? We got you covered. In this talk we will show you what NamespaceClaims are, how you can use them with (or without) your ArgoCD, why you should want to use them and some crazy stuff that might become possible in the future.
Sprache: Englisch
Raum: SIBE
2 D.1: Git pre-commit Hooks
Referenten: Ruberti-Wieczorek Adam & Klug Dominik
20 Minuten: 10:30-10:50
git add * && git commit -m 'Freitag 16:00' && git push, und das Secret macht Weekend im Repo.
Informiere dich über das Potenzial von Pre-Commit-Hooks und wie du sie nutzen kannst, um einen einheitlichen Code-Stil zu wahren und zu verhindern, dass sensible Informationen deine lokale Entwicklungsumgebung verlassen.
Sprache: Deutsch
Raum: Wytsicht
1 D.2: Typed Errors
Referent: Stefen Zeller
20 Minuten: 11:55-12:15
Was tun, wenn bei schlechtem Wetter das Umsystem etwas anderes als HTTP 200 antwortet? Gibt der aufrufende Adapter null zurück, oder schmeisst man eine Exception? Aber ein Programmierfehler im eigenen System auch zu einer Exception führt?
Und was, wenn keine Antwort auch eine Antwort ist? Ist dann HTTP 204 also auch null?
Und was, wenn in einem Fall ein 404 vom Umsystem ein fachlicher Fehler ist, aber in einem anderen Fall eine leere Antwort bedeutet?
Wir schauen uns das Konzept der Typed Errors an, mit dem man Fehler und Nicht-Fehler explizit macht und so Datenfluss im Code besser verstehen kann.
Sprache: Deutsch
Raum: Wytsicht
In unserer modernen Arbeitswelt verbringen wir einen grossen Teil unserer Zeit sitzend vor dem Bildschirm. Umso wichtiger ist es, den Körper regelmässig in Bewegung zu bringen. Durch körperliche Aktivität wird das Risiko für Verspannungen, Rückenschmerzen, Herz-Kreislauf-Erkrankungen und viele weitere Beschwerden stark reduziert. Auch auf die mentale Verfassung und die Kreativität hat Bewegung viele positive Effekte. Als ehemalige Physiotherapeutin und Triathletin möchte ich euch zeigen, wie ihr diese Effekte am besten erreichen könnt.
Sprache: Deutsch
Raum: Kulturschür UPtown EG
Workshop
In short katas, we use Pair Programming to exercise test-driven development.
Requirements:
Basic knowledge of Java, TypeScript or Python
Notebook
Preparatory task: Coding Dojo repository cloned in favourite language and prepared in development environment so that unit tests can be executed and breakpoints set. It is important that at least every second workshop participant has one of the three repos installed.
Sprache: Englisch
Raum: Ussicht
Begriffe, Techniken und Fallstricke beim Kodieren und Verarbeiten von geschriebenem Text – nicht nur für Java Entwickler.
Sprache: Deutsch
Raum: Kulturschür UPtown
Warum werden Agile Methoden und Vorgehensweisen im Enterpriseumfeld oft so schlecht angenommen und umgesetzt? Warum gelten Methoden wie SAFe als agil? Warum ist «Agil» für viele zum Schimpfwort geworden?
In meiner Erfahrung ist es eigentlich nur mit agilen Methoden möglich, komplexere Softwareprojekte zum Erfolg zu führen. Gleichzeitig werden diese in meiner Beobachtung vielen Unternehmen entweder grundsätzlich abgelehnt oder in stark abgeänderter Form umgesetzt, um den Bedürfnissen nach Skalierung, Hierarchie und Kontrolle entgegenzukommen (so wie in SAFe), wodurch viel vom Nutzen dieser Methoden verloren geht.
In diesem Vortrag möchte ich darauf eingehen, warum dem so ist, ob es unvermeidlich ist und was meines Erachtens die Konsequenz daraus sind.
Sprache: Englisch
Raum: Pavillon
The key to tackling vulnerabilities lies in their early and continuous detection. We will present how to enhance your product's security by utilizing Tekton Quality Gates (GGshield, OWASP Dependency Check and SonarQube), JFrog XRay and GitGuardian. Join us to learn how you can start managing your vulnerabilities, how to configure the tools, and what steps to take when they reveal findings.
Sprache: Deutsch
Raum: Kulturschür UPtown EG
1 D1: A short history of software failures
Referent: Daniel Oderbolz
20 Minuten: 11:30-11:50
In this talk I want to give a short overview of famous and less famous software failures with respect to safety and security and show what led to them and what migitgations are relevant today and going forward. We will look at the safety implications of bad UX (this actually cost lives), ask the question if software re-use is always a good thing (spoiler alert: it is not) and look at some security blunders by large and small companies as well as open source software.
The goal is to raise awareness for software quality issues that sometimes have an impact that is much larger than.
Sprache: Englisch
Raum: Wytsicht
2 D.2: Was macht eigentlich das Cyber Defence Center der SBB
Referent: Andreas Meister
20 Minuten: 10:55-11:15
Das CDC der SBB ist die Heimat von 7 Teams, welche die unterschiedlichsten Themen behandeln und verschiedenste Services anbieten. In dieser Session lernst du, was denn eigentlich Threat Hunting, RailISAC, MISP, Vulenerabiltiy Management, Threat Modeling, Threat Intelligence und vieles mehr ist. Natürlich hörst du auch, was dir diese Dinge in deinem täglichen Entwickler-Alltag überhaupt bringen und welche Services dich beim Entwickeln von sichererer Software unterstützen.
Sprache: Deutsch
Raum: Wytsicht
Die Session Tech Spirit soll dem eigentlichen Zielpublikum das Thema näherbringen und gemeinsam sollen verschiedene Aspekte diskutiert werden. Nach einem kurzen Intro zum Thema sollen in der Session folgende Fragen gemeinsam besprochen werden.
Was macht ihr bereits heute für den Tech Spirit, was läuft gut?
Wo benötigt ihr Unterstützung, was könnte helfen, den Tech Spirit zu stärken?
Sprache: Deutsch
Raum: SIBE
Raum: Pavillon
Quarkus was released on March 2019 in a galaxy not too far away (actually Neuchâtel, Switzerland) by a team of engineers that dreamed of supercharging Java for Cloud/Kubernetes native deployments, while bringing Joy back to Developers.
Quarkus provides an ideal runtime for coding intelligent applications in Java. It builds on top of LangChain4j, offering seamless integration with CDI, build time optimizations, performance and production enhancements, effortless creation of native images using GraalVM and an unmatched developer experience (and Joy!). The Quarkus DevMode makes iterative development and prompt engineering a breeze, Quarkus DevServices can spin up containers for you behind the scenes, and the Quarkus DevUI offers insights into your intelligent applications.
Come to this talk to find out how Quarkus embraces the AI/LLM universe through LangChain4j, and get ideas for crafting your own intelligent applications, starting from simple examples accessing local or remote LLMs, to implementing AI Services and advanced RAG scenarios!
Sprache: Englisch
Raum: Kulturschür UPtown
The concept of 'domain events' is powerful to explore and understand a business domain, for example using the technique of event storming. At the same time, we can use domain events as a strong foundation for implementing an event-driven architecture that allows for loosely coupled modules or microservices. Interestingly, this approach allows for non-blocking execution with minimal overhead as compared to a traditional blocking architecture.
In this talk, Stefan shows how a central component of the TMS integration test engine was refactored to non-blocking execution based on DDD concepts like domain events, aggregates, and value objects, and how the complexity of the component could be drastically reduced.
Sprache: Englisch
Raum: Pavillon
Traditional secrets management—relying on static client secrets or certificates—poses significant challenges for developers and security teams. These challenges include security risks, maintenance overhead, and developer friction.
Imagine being hunched over your keyboard, embedding secrets directly into code. It’s a risky business (and annoys the GitGuardian). Secrets stored in code repositories or configuration files are like ticking time bombs. One slip, one accidental leak, and unauthorized access or data breaches become a reality.
And then there’s the maintenance overhead. Secrets have expiration dates, and they demand regular rotation. Manually updating secrets across various services and applications is a chore. It’s like juggling flaming torches while riding a unicycle—tedious and error-prone.
But fear not! Enter federated credentials—the modern, sleek alternative. These credentials sidestep the secret circus and offer a refreshing approach:
Enhanced Security: Federated credentials don’t play hide-and-seek in code. Instead, they rely on secure protocols (think OIDC) to obtain tokens dynamically. No more secrets lying around waiting to be discovered.
Automatic Renewal: Say goodbye to secret expiration anxiety. Federated credentials handle token renewal automatically. No manual intervention required. It’s like having a personal assistant for your authentication needs.
Simplified Authentication Flow: You can now focus on writing code without wrestling with secrets. Federated credentials streamline the authentication process. It’s like a smooth highway compared to a bumpy dirt road.
Behold dear developers, we bring you this elegant new concept. Allow federated credentials to become your trusty sidekick in the battle against secrets.
Sprache: Englisch
Raum: Wytsicht
3 D.1: Docs as Code im Entwickler Handbuch der Halon Delivery Pipeline
Referent: Christof Leuenberger
20 Minuten: 13:30-13:50
In diesem Talk möchte ich zeigen, wie wir den Docs as Code Ansatz nutzen um das Entwickler Handbuch für die Delivery Pipeline auf Halon (für RCS) umzusetzen. Dabei gehe ich auf die Vor- und Nachteile von diesem Ansatz ein, vergleiche die verschiedenen Tools, stelle TechDocs vor und wie es mit dem Backstage Developer Portal integriert ist und zeige, wie man selber mit wenigen Zeilen Code seine eigene schöne Dokumentation aus dem Code publizieren kann.
Sprache: Deutsch
Raum: SIBE
3 D.2: Hot-Standby-Manager - oder wie man zwischen mehreren Anwendungsinstanzen auswählen bzw. umschalten kann
Referent: Patrick Spiegel
20 Minuten: 13:30-13:50
In der DSO TRS werden die Bestandes-IT Systeme wie RCS-Dispo und NeTS mit dem Programm TMS schrittweise durch cloud-native Applications ersetzt. Die betrieblich kritischen Systeme müssen neu nach Basic Integrity (SIL-0) implementiert werden und sich einer Zulassung durch das BAV unterziehen. Damit wir in solchen Fällen die geforderten RAMS(S)-Anforderungen (Reliability, Availability, Maintainability, Security und Safety) erfüllen können, werden die Anwendungen unter anderem redundant betrieben.
Damit wir im Katastrophenfall automatisiert und möglichst ohne Downtime von der einen auf die andere Anwendungsinstanz umschalten können, benötigen wir einen «Umgebungsumschalter», den sogenannten Hot-Standby-Manager (HSM).
Aber wie ist dieser HSM aufgebaut und wie funktioniert er? Das verraten wir dir in dieser Session.
Sprache: Deutsch
Raum: SIBE
Weisst du, wie viele Kilometer deine Finger jeden Tag unnötig durch das Standard QWERTZ/QWERTY-Layout zurücklegen müssen? Gibt es Alternativen? Was ist mit den Sonderzeichen? In diesem Talk erzähle ich von meiner ungeplanten erfolgreichen Reise zu dem Neo-Layout Noted und erläutere welche ergonomischen Vorteile ein Switch zu einem neuen Layout haben kann.
Sprache: Deutsch
Raum: Kulturschür UPtown EG
Workshop
Weshalb beschäftigen sich Psycholog:innen mit Softwareentwicklung? Inwiefern sind Softwareentwickler:innen von den Themen Human Factors und UX betroffen und wie können wir zusammenarbeiten?
Human Factors und UX haben das Ziel, eine menschengerechte Arbeitsumgebung zu gestalten und beeinflussen dadurch die Softwareentwicklung. Mit einem interaktiven Workshop-Format sollen die nachstehenden Ziele erreicht werden:
Die Teilnehmenden verstehen, was HF und UX ist und weshalb die Themen in der Softwareentwicklung relevant sind
Die Teilnehmenden lernen den Human-Centered Design Prozess spielerisch kennen
Die Teilnehmenden kriegen konkrete Methoden aus dem HCD-Prozess an die Hand und wissen, wie sie mit HF/UX Herausforderungen in ihrem Arbeitsalltag umgehen können.
Sprache: Deutsch
Raum: Ussicht
Command Query Responsibility Segregation (CQRS) ist ein bewährtes Entwurfsmuster, das die klare Trennung von Datenveränderungen (Commands) und Datenabfragen (Queries) ermöglicht. Diese Trennung erlaubt die eigenständige Skalierung und Optimierung dieser Verantwortlichkeiten. Ebenfalls wird der Anwendungscode verständlicher strukturiert was die Wartbarkeit verbessert.
In diesem Vortrag wird das Verständnis der praktischen Umsetzung der CQRS-Prinzipien vertieft und mit modernen Java Sprachmitteln wie Records, Switch-Expressions und Pattern Matching umgesetzt.
Anhand einer Beispielanwendung wird demonstriert, wie die theoretischen Grundlagen von CQRS in der Praxis angewendet werden können und welche Auswirkungen dies auf das Design von Anwendungen hat und gleichzeitg die Effizienz des Datenzugriffs steigert.
Sprache: Deutsch
Raum: Kulturschür UPtown
SAFe’s principle #1 is “Take an economic view”. In this talk, we explore the economics aspects of software engineering and value creation by drawing comparisons between traditional manufacturing and software engineering. We highlight parallels between the two domains: although software in intangible, it is still “shipped” and involves both “capital” and “operational” expenses, as well as managing technical “debts” and immaterial “assets” like code. We show how an economic lense can help teams deliver more value, and show concrete business cases for SBB software projects.
Sprache: Englisch
Raum: Wytsicht
Have you ever wondered if exactly-once processing is possible with Kafka? Are you concerned about data loss or duplication in your Kafka applications? Fear not! Kafka's Exactly-Once Semantics (EOS) guarantees that messages are written and processed only once, even during failures. Our talk explores how EOS works across producers and consumers, Kafka Streams, and Kafka Connect. We will see how Kafka's transactional API and idempotent producers work together to prevent message loss and duplication. You will learn how Kafka Streams leverage these features to provide robust exactly-once processing guarantees. Join us to demystify EOS and unlock its potential for your Kafka applications!
Sprache: Englisch
Raum: SIBE
In this talk, Daniel connects the dots between many relevant and sometimes funny security incidents.
We will look at the evolution of malware from viruses to ransom ware, the relationship between cybercrime, politics and war and try to think ahead about things to come and how we can remain prepared.
Over the years, we can see a clear trend indicating that the incidents got more prevalent and had an increasing impact.
In general, things got much more serious in the last few years.
This has to do with the increasing dependence of our lives on computer networks, but also with the fact that attackers have become more professional and determined.
However, not always bad actors were involved...
Sprache: Englisch
Raum: Pavillon
4 E.1: Lasst uns doch mal gemeinsam lesen.
Referenten: Olivier Wolf
20 Minuten: 14:30 - 14:50
Vieles, das wir machen und täglich erleben sind nichts neues in unserer Branche. Statt, dass man selbst die Erfahrungen schmerzhaft machen muss, will ich mal aufzeigen woher gewisse Ideen stammen und zur Reflektion ein paar historische Aussagen zur Anregung mitgeben. Quelle sind für mich Bücher und Paper.
Darunter sind Fragen wie (in Klammer das Buch):
Wer weiss aus welchem Buch unser heutiges SBB Konstrukt mit DSO und STS-Teams stammt? (Team-Topologies).
Ist alles neu oder verhalten wir uns gleich wie vor 50 Jahren? (Mythical Man Month erschienen 1975).
Kann man Produktivität und Qualität messen? (Accelerate).
Was macht die Arbeit des Architekten so schwierig? (Architecting the Hard Parts).
Was steckt eigentlich hinter dem Wort "Software Engineer"? (NATO Konferenz 1968, Modern Software Engineering).
Was ist das Ziel des Software Engineers? (Paper von Tom DeMarco 2009 IEEE Software).
und viele mehr.
Sprache: Deutsch
Raum: Kulturschür UPtown EG
4 E.2: Schlimmer als der Röstigraben: die IT/OT - Kluft. Muss es so sein?
Referenten: Buser Dieter & Dutoit Daniel
20 Minuten: 14:55 - 15:15
Die Konvergenz von OT und IT ist ein Fakt. Die bis jetzt dichte Grenze zwischen den zwei Welten wird durchlässiger und unschärfer. Ja, IT und OT weisen starke Differenzen auf. Die Integration der beiden ist voller Herausforderungen, sowohl technisch als auch organisatorisch oder kulturell. Gleichzeitig ist sie aber der Enabler für Prozessoptimierungen und sogar neue geschäftliche Anwendungsfälle. Wie schaffen wir es, trotz all den Herausforderungen, den potentiellen Nutzen für die SBB aus der IT/OT Konvergenz zu ziehen?
Unser Vortrag gliedert sich in folgende Hauptaspekte: IT / OT Integration, warum überhaupt? Was sind die genauen Unterschiede? Berichte aus konkreten Anwendungsfällen und Lösungswege.
Sprache: Deutsch
Raum: Kulturschür UPtown EG
Raum: Pavillon
Abstract:
Die Demoscene: Digitale Kultur mit Geschichte und Community mit Tiefgang, Retrocomputing mit Zukunft und Coding Skills mit Anspruch. Computer kreativ zu nutzen gehört zu unserem Job - mit mehr Glitzer und Musik tun das die Code-Künstler aus der Demoszene auch. Wir zeigen, wo die Demoscene herkommt, was die Faszination ausmacht und was wir für unseren Day-Job daraus mitnehmen können. Mit Live-Demo-Show!
Zur Person:
Wenn er nicht gerade für die SBB GIS-Plattform unterwegs ist, engagiert sich Andry Joos für die Demoscene. Als Präsident von “Echtzeit - Digitale Kultur”, dem Schweizer Verein für die Förderung der Demoscene, hat er den Eintrag der Demoscene auf die Liste der lebendigen Traditionen der Schweiz als erste digitale Kultur initiiert. Lieblingscomputer: Commodore 64 von 1982.
Roger Wetzel darf sich bei IT-DA mit den Chancen der Digitalisierung für die SBB befassen. In den späten 80ern kam er weg vom C64 und kaufte sich vom Geld, das er mit Zeitungsaustragen verdiente, einen Amiga. Er durfte damals die Entstehung der Demoscene hautnah miterleben und aktiv mitprägen. Vor vier Jahren hat ihn nun seine Vergangenheit eingeholt und er programmiert wieder Amiga Demos.
Sprache: Deutsch
Raum: Pavillon
Raum: Pavillon
Raum: Pavillon
Das Programm ist ebenfalls auf Confluence ersichtlich.
Vom Bahnhof Bern aus nehmen Sie am besten die S-Bahn Nr. 3/31 Richtung Belp bis zur Station «Wabern» oder das Tram Nr. 9 Richtung Wabern bis Haltestelle «Gurtenbahn». Die Talstation der Gurtenbahn liegt nur wenige Schritte von den Haltestellen entfernt.
Alternativ führen auch folgende Buslinien zur Talstation des Gurtens:
Buslinie 29 (Ortsbus Köniz)
Buslinie 22 (Brünnen-Kleinwabern)