Talks
I am available for speaking engagements! Just contact me if you feel I can contribute to your event or conference.
Draft: Software Quality made this talk happen: push-to-deploy as the means to deal with uncertainty
Accepted at NewCrafts Paris 2024.
I was first paid to write software in 1997, now 27 years ago, and if there is one skill that had the biggest impact on my career then it’s the ability to deliver working software that doesn’t break. This allows me to take vacation, invest back into my communities and initiatives that I want to support, self-development, and to have time for self-, and family care.
In this talk I want to reinforce your love for software quality by sharing how I helps me in my day to day work where I balance my efforts between too many projects but still manage to be both and innovative software engineer, and deliver solutions that do not break when it matters most through setting up all projects and teams that I work with around one main principle: push-to-deploy.
In order to achieve this, confidence is needed, which can only manifest if we know that our changes will not break the system. And in an environment that becomes more and more uncertain and volatile every day, there is only one solution that has stood the test of time: writing tests first. And its beauty, especially with outside-in-test-driven-development, is that it helps to keep the focus on delivering value to the end-user. Over the last years I have added Behavior-driven development to my quality toolbox because it decouples the implementation of the tests from the implementation of the application. Testing through the public API of a system ensures that there are no unexpected changes for the user.
As I will share, I have a strict focus on user stories when building our products, because it is the only way that ensures that all stakeholders can participate and contribute to a product. Because in the end a successful software is always built in collaboration with people who contribute source-code and those who contribute in other ways.
Enabling the collaboration of all stakeholders is a very important part of my job, and I have been able to achieve this through using a walking skeleton approach: delivering working minimal products from the first day. This way developers like me can make sure to be involved in the discussion with product people and customers early on in a projects' life-cycle. And in my experience only the real product (and not even a click dummy) will truly create shared understanding with all stakeholders. Because time is always short and we know that every prototype ends up in production we have to make sure that even our prototypes are of high quality; which is where using quality in software development to achieve continuous delivery (CD) with confidence - really shine.
The three main takeaways are:
- Prioritize writing good quality software that rarely breaks. This allows for better work-life balance and frees up time for self-development and community initiatives.
- Utilize Test-Driven Development (TDD) with a focus on outside-in testing. This builds confidence in code changes and keeps the focus on delivering value to the user.
- Focus on user stories when building products. This ensures collaboration with all stakeholders and fosters a successful software development process.
This talk would be an encouragement for developers to trust their skills and tools, but also invest in mastering them. On the other hand we as developers often strive for the perfect, beautiful solution; for this approach to succeed we need to embrace imperfect solutions because they provide valuable insight much earlier than most often believe.
Exploring better ways to write tests
Video: Updated version, First version · Blog post · Slides
Very often we focus on improving the way we write tests within our test frameworks. I on the other hand invest time into building new test frameworks. Over the last years I have worked on end-to-end testing cloud native applications, which lead to the development of a BDD feature runner. This year I took the idea even further with a focus on coming closer to the goal of living documentation: the test files are now written in Markdown. In addition I started to work on fixing another big issue that we encounter often: our inability to provide good architecture documentation ... what we need is not big, huge architecture diagrams for entire systems (like we get when we use C4, Arc42), but diagrams that are context-sensitive. BDD is actually a great source for these kinds of diagrams and this is what I want to share in this talk.
Key take-aways
-
that testing, developing and documentation go hand in hand
-
that we as people working on these system need to look at our tools and find ways to improve them
-
ideas on how to build living, understandable, up-date architecture diagrams
-
new ideas about the features of GitHub Actions, traceability and automated diagram generation
-
Nordic Testing Day 2023 in Tallinn, 📅 7-9. Juni 2023 🇪🇪 Tallinn
-
Trondheim Developer Conference 2023, 📅 23. October 2023 🇳🇴 Trondheim
Firmware test automation using real embedded devices
In this talk I am presenting my approach on testing embedded firmware using real hardware.
Testing firmware in emulators drastically limits what actually gets tested and it can quickly become very tedious to mock, fake and set up environments for embedded firmware that needs to connect to cloud services.
I am taking a different route: let the firmware run on real hardware, and test its behavior.
I show how I implemented these tests using Zephyr, AWS, and GitHub Actions. However, this solution can be applied in any environment which cannot be run inside a test runner.
- Nordic Testing Day 2022 in Tallinn, 📅 3. Juni 2022 🇪🇪 Tallinn
I am a coder, help me learn to collaborate!
Video · Blog post · Twitter Thread
This talk is a wake up call and should inspire other developers like me, to start looking into improving their communication and collaboration skills. I want to show the fallacy of aiming to be a fantastic coder and provide concrete examples and resources on how to start.
- BoosterConf 2022, 📅 24. March 2022 🇳🇴 Bergen
Serverless Architecture for IoT on AWS
Let's have a look how a temperature reading travels an IoT solution on AWS and Azure from the device to the web application.
This is a talk that explains the benefits of serverless in general in why it is especially suitable for IoT applications. It also shows a concrete, open-source example.
It will provide an introduction to serverless in general, and how it is implemented at the different cloud vendors (looking at AWS and Azure, where I have implemented the same application using the respective cloud's idiomatic way), and why it is especially relevant for IoT deployments.
Slides: Interactive · Video
- Høyskolen Kristiania, TEK303, Machine-to-Machine Communication, Guest lecture 📅 9. November 2021 🇳 🇴 Oslo
- NTNU, IDG2001, Cloud Technologies, Guest lecture 📅 23. February 2022 🌐 Online
- NTNU, PROG2005, Cloud Technologies, Guest lecture 📅 30. March 2022 🌐 Online
- AWS UserGroup Talk 📅 30. March 2022 🇳🇴 Trondheim
Cloud connectivity and protocols for the Internet of Things
This is a webinar I did for Nordic Semiconductor Tech Webinars together with my colleague Carl Richard Fosse, but it applies to everyone who wants to get an introduction to protocols to consider when developing a cellular IoT product.
It provides an overview over the important factors that need to be considered when it comes to picking the right solution for sending your products' data to the cloud.
Blog post · Slides: PDF, Interactive · Video
- Nordic Tech Webinar 📅 21. October 2020 🌐 Online
It does not run on my machine: Integration testing a cloud-native application
In this talk I will take you through the challenge of testing a cloud-native application. I will cover the challenges when developing solutions on top of serverless components which you cannot run on your own machine and how I designed a BDD driven approach to run the integration tests.
- Session: SoCraTes Conference 2018 📅 31. August 2018 🇩🇪 Soltau
- Preview: Codefreeze 2019 📅 9. January 2019 🇫🇮 Kiilopää
- Euro Testing Conference 2019 📅 14-15. February 2019 🇪🇸 Valencia
Nordic Testing Days 2019 📅 29-31. May 2019 🇪🇪 Tallin- Øredev 2019 📅 November 2019 🇸🇪 Malmö
- AWS UserGroup Trondheim 📅 November 2022019 🇳🇴 Trondheim
- AWS Community Days Nordics 📅 January 2020 🇸🇪 Stockholm
Heisenbug 2020 📅 April 2020 🇷🇺 St. Petersburg
About: Call for Papers
Lightning talk about how conference call for papers work.
- Global Diversity CFP Day 📅 2. March 2019 🇩🇪 Frankfurt
Prototyping products for the Internet of Things using JavaScript
In 2018 we will see a big change in the IoT landscape: based on LTE-m devices can connect to the internet over long distances and will be running off batteries for years. Learn about the principles and protocols involved and how to leverage JavaScript down to the hardware to build your own solution.
- AWS UserGroup 📅 15. May 2018 🇳🇴 Trondheim · Slides
- J On the Beach 📅 23-25. May 2018 🇪🇸 Málaga · Slides, Video of Q&A
- NDC { Oslo } 📅 11-15. June 2018 🇳🇴 Oslo · Slides
- code.talks 📅 19. October 2018 🇩🇪 Hamburg · Slides, Video
What is the best backend language
Panel at code.talks Hamburg.
- code.talks 📅 October 19th 2018 🇩🇪 Hamburg
Motivating developers with purposeful work
I work at a company where we decide on our own, when how and on what we work; I have full control over my life. We believe that working in a so-called network organization, without central leadership, is the only sensible and sustainable way to run a business. But what does that mean for managers if you no longer can assign work to your team? New skills are required and in this talk I want to give a glimpse into the future of tech-leadership and what is need from you to build a joyful workplace for team.
- Topconf Linz 2017 📅 2. March 2017 🇦🇹 Linz
TDD vs. Velocity: Testing for start-ups and other organizations with fast innovation cycles
These days, when every new project is a start-up, we need to run software that is both robust (because there are customers already using it) and open for change (because we are constantly adding new features). This provides a challenge for applying TDD.
- Tradebyte /dev/night 📅 May 16th 2017 🇩🇪 Ansbach -Developer Camp 2017 📅 17. May 2017 🇩🇪 Nürnberg
5 years CTOing: sharing the good and the bad
Sharing my experiences working for 5 years as the CTO for DeinBus.de, dotHIV, Fintura, and Resourceful Humans.
- Developer Camp 2017 📅 17. May 2017 🇩🇪 Nürnberg
Tools + Tipps für Freelancer und Selbständige
- Donnerstalk im Heimathafen 📅 February 2nd 2017 🇩🇪 Wiesbaden
There is no half-remote team
Having remotes on the team enables you to hire for talent and not for availability. From my recent positions I learned that it is critical to encode remote work in every team members work habits-even if they are working on location. This talk highlights the issues that arise when teams or not co-located and how to deal with them.
Slides
· Video
German version:
Slides
· Video
- TopConf Linz 📅 2. February 2016 🇦🇹 Linz
- Webmontag Frankfurt 📅 11. January 2016 🇩🇪 Frankfurt
- WJ Frankfurt 📅 10. May 2017 📅 Frankfurt
Automating library releases and dependency management in JavaScript
This talk will walk through all the packages and services necessary to automate dependency management in your JavaScript project. Added bonus: you will lear how to automate the release of your libraries, too!
- Developer Camp 2017 📅 17. May 2017 🇩🇪 Nürnberg
- FrankfurtJS, #10 📅 12. October 2016 🇩🇪 Frankfurt
- JS CraftCamp 📅 October 8th 2016 🇩🇪 München
- SoCraTes 2016 📅 25. August 2016 🇩🇪 Soltau
- Entwicklertag Frankfurt 📅 10. March 2016 🇩🇪 Frankfurt
Keynote: Wie man ein Top-Down Unternehmen in eine Netzwerk-Organisation wandelt
This talk dives into the Resourceful Human way of transforming a hierarchical organization of followers into a network of entrepreneurs.
- HR Inside Summit 2016 📅 13. October 2016 🇦🇹 Vienna
Introducing: Prototype Fund
This talk introduces the Prototype Fund, the incubator for open source and civic hacking projects by betterplace lab, Open Knowledge Foundation Deutschland
- Webmontag Frankfurt, #80: „Classic” 📅 11. July 2016 🇩🇪 Frankfurt
Was Startups von Konzernen lernen können
This talk summarizes some of the aspects that big corporations can learn from startups.
Webmontag Frankfurt 📅 2. May 2016 🇩🇪 Frankfurt
ART Expert Talk: Agil Arbeiten in verteilten Teams
Insights into how distributed teams can work effectively.
- DB Systel Agile Round Table 📅 28. May 2016 🇩🇪 Frankfurt
Node.js / CQRS / ES / Redis app architecture showcase
Session at unKonf Mannheim about an architecture built on top of event-source (ES/CQRS) using Node.js and Redis.
- unKonf Mannheim 📅 16. April 2016 🇩🇪 Mannheim
Using make in frontend projects
Session at unKonf Mannheim about why you don't need Gulp or Grunt.
- unKonf Mannheim 📅 16. April 2016 🇩🇪 Mannheim
Code is not poetry
A (very opinionated) talk about why software developers are merely glorified plumbers.
Slides
German version:
Slides
· Video
- Webmontag Frankfurt 📅 8. June 2015 🇩🇪 Frankfurt
- Technical Summit 2016 📅 6. December 2016 🇩🇪 Darmstadt
Software Development Process at Fintura
How we build software at Fintura.
- Coding Night Frankfurt 📅 17. July 2015 🇩🇪 Frankfurt
Tech Stack at Fintura
How we run software at Fintura.
- Coding Night Frankfurt 📅 17. June 2015 🇩🇪 Frankfurt
Trello
A talk about the best project management software on the planet.
- Webmontag Offenbach 📅 27. February 2014 🇩🇪 Offenbach
#futureofwork in the wild
A talk about great examples of non-traditional organization concepts.
- Agiler Stammtisch FFM 📅 2. April 2014 🇩🇪 Frankfurt
dotHIV
Introducing the dotHIV initiative.
- Webmontag Frankfurt 📅 10. November 2014 🇩🇪 Frankfurt
.riesengeschäft und .geldmacherei?
Wie der @dotHIV e.V. den #newgTLDs ihre Daseinsberechtigung gibt
- Webmontag Offenbach 📅 24. August 2014 🇩🇪 Frankfurt
Cloud Worker
- Donnerstalk im Heimathafen 📅 4. April 2013 🇩🇪Wiesbaden
Update January 2020: I've revisisted this talk here.
Mein Traum - Mein Startup
- Hochschule RheinMain 📅 15. May 2013 🇩🇪Wiesbaden
Warum Offenbach einen Webmontag braucht
- Webmontag Offenbach 📅 13. May 2013 🇩🇪 Offenbach
#ugrm – UserGroups RheinMain. Ein Überblick über die Szene
An overview over tech tech meetup scene in the RheinMain region.
- Webmontag Frankfurt 📅 8. April 2013 🇩🇪 Frankfurt
Coworking Szene RheinMain
Highlighting the coworking initiatives in the region.
- Webmontag Frankfurt 📅 12. November 2012 🇩🇪 Frankfurt
RESTful APIs mit Django
How to build RESTful APIs using the Python-based Django framework.
- Python UserGroup RheinMain 📅 18. July 2012 🇩🇪 Frankfurt