Ruben Bakker, Senior Software Engineer

Ihr Software Entwickler für alle Fälle

Benötigen Sie für Ihr Projekt einen erfahrenen Softwareentwickler, der vom Konzept über das Backend bis zum Frontend überall mit anpackt? Der sich vor CI/CD, Docker und Kubernetes nicht scheut? Der zuhört und mitdenkt, um optimale Lösungen zu finden?

Dann sind Sie hier richtig.

Kontaktieren Sie mich, ich bin gespannt auf Ihr Projekt.

Über mich

Grüezi!


Darf ich mich vorstellen: Ruben Bakker, Senior Software Engineer.


Ich liebe es, Softwareprodukte zu entwickeln, die Menschen bei der Arbeit unterstützen und produktiver machen, damit sie mehr Zeit für das Wesentliche haben. Mir liegen schnelle, tragfähige und kundennah entwickelte Produkte am Herzen, die im Alltag funktionieren.



Ich bin offen und lerne gerne dazu. Es macht mir Freude mitzudenken um die optimale Lösung zu finden. Dabei sollen die für das Projekt passenden Sprachen und Technologien eingesetzt werden.

Arbeitserfahrung

Gründer & Senior Software Engineer
uncomplex gmbh, Roggwil
2017 - heute

Neu-Entwicklung und Vertrieb von Mailplane v4.0, die beliebte macOS Applikation für Gmail.
Sowie verschiedene Freelancing Software Kunden Projekte.

Senior Software Engineer
myneva Schweiz AG, Sursee
2020 - 2024

Konzeption, Entwicklung und Integration von mobilen Lösungen, welche die Prozesse der in Spitex- und Pflegeheim-Institutionen automatisieren oder vereinfachen. Implementation von mehreren zentralen Kubernetes Diensten in Kotlin sowie C#.

Senior Software Engineer
Evernote Corp, Redwood City, USA
2017 - 2018

Ich war "remote" Teil des Evernote macOS Team in Kalifornien.
Projekte waren z.B. das neue Evernote Business Feature "Spaces" sowie die Trennung zwischen persönlichen und Business Accounts.

Director of Products
Evernote GmbH, Zürich
2012 - 2017

Ich habe das Evernote Development Studio in Zürich eröffnet und dazu Entwickler, UI/UX Designer sowie QA Ingenieure rekrutiert. Über die Zeit wuchs das Team auf zehn Personen an. Das Studio war Teil der Software Produkte Abteilung in den USA (Redwood City, Kalifornien sowie Austin, Texas) und hat wichtige Innovationen und Patente hervorgebracht. Einige davon wurden in Evernote Produkte für Mac und iOS integriert.

Gründer & Senior Software Engineer
uncomplex gmbh, Sursee
2007 - 2012

Konzeption, Entwicklung, Design, Vermarktung der Mailplane app für macOS sowie der Replies app. Beide Apps wurden mit Objective-C entwickelt. Daneben einige Freelancing Projekte.

Senior Software Engineer R & D
BISON Schweiz AG, Sempach-Station
2004 - 2009

Meine Aufgabe war es Ideen, Prototypen sowie erste Implementierungen von Produkt-Innovationen und Verbesserungen für Bison Solution (Java) zu entwickeln. Zusätzlich habe ich die verschiedenen Entwicklungs-Teams unterstützt.

Technical Lead
BISON Schweiz AG, Sempach-Station
1997 - 2004

Ich entwickelte die technische Infrastruktur von Bison Solution, eine flexible ERP Software. Dazu baute ich ein Team von 12 Java Entwicklern auf, welches die Grundlagen für die Applikations-Entwicklung bereitstellte.

Tech Stacks

Mit diesen Technologien habe ich praktische Projekt Erfahrungen

Datenbanken

SQL for Postgres, MariaDB/MySQL, SQLite and Oracle

JVM Backend Entwicklung

Kotlin, Java, Spring Boot, Apache Camel, Clojure

.NET Backend Entwicklung

C#, Asp.net, EntityFramework

Python Backend Entwicklung

python, Django, pytest

Full-stack Entwicklung

React, Remix, Prisma, HTML/CSS, Tailwind CSS, Astro, ClojureScript

Server Betrieb

Docker & Kubernetes

Betriebssysteme

Linux: Arch-Linux, Fedora and Ubuntu; macOS; Windows; Android; iOS

macOS Entwicklung

Objective-C/C++, Foundation, Cocoa

Mobile Android Entwicklung

Kotlin, Jetpack Compose, RxJava, SQLite, Retrofit

Mobile iOS Entwicklung

Objective-C and UIKit

Rust Entwicklung

Rust, Axum, Rocket, Tokio

Scripting und Automation

bash, python, ruby, Powershell

CI/CD

Github Actions, Bitbucket Pipelines, CodeMagic, Jenkins

Metriken

Prometheus & Grafana

Projekt Portfolio

Auswahl von Projekten, welche einen Einblick in meine Arbeit geben.

Integration Service
FHIR und APIs für Software Partner und Android Tablets

2020-2022 myneva Schweiz AG (ehemals SWING Informatik AG)
Senior Software Engineer

Dieser Dienst ermöglicht das Entwickeln von Konnektoren, welcher APIs für Partner Systeme oder Mobile Geräte zur Verfügung stellt. Ich habe dieses Produkt von Grund auf konzipiert und entwickelt:

  • Ein Spring Boot Dienst, der eine Plattform für Konnektoren implementiert
  • Eine React/Remix Web App, um Integrationspartnern eine Self-Service-Oberfläche zur Verfügung zu stellen
  • Erweiterung des bestehenden Windows Services mit C# für das myneva.swing System, welches GraphQL Queries und Mutationen zur Verfügung stellt
  • Prometheus Schnittstelle, welche auf Basis Micrometer Metriken für Grafana Boards und Alerts zur Verfügung stellt

Als Erstes habe ich einen Logistik-Konnektor entwickelt, der heute von verschiedenen Partner Firmen eingesetzt wird:

  • FHIR Schnittstelle für diverse Ressourcen wie z.B. Patient, Coverage, CarePlan, Practitioner mit HAPI FHIR für Java
  • Integration in die myneva SWING2Go Android App mit Kotlin, RxJava, Retrofit

SHIP Konnektor
Digitalisierung Bedarfsmeldungen für Ambulante Dienste

2023-2024 myneva Schweiz AG (ehemals SWING Informatik AG)
Senior Software Engineer

Um den grossen administrativen Aufwand für die Bearbeitung von Bedarfsmeldungen zu reduzieren, wurde dieser Prozess durch den eCH Standard 0237 standardisiert. Durch den SHIP Konnektor konnte die Kommunikation zwischen Spitex, Arzt sowie Krankenkasse vollständig digitalisiert werden.

Dazu habe ich dazu konzipiert und implementiert:

  • Neuer Integration Service Konnektor mit Spring Boot und Kotlin
  • Datenmodell in MariaDB und der Synchronisation mit GraphQL
  • Web App mit React, Remix, TypeScript und Tailwind CSS, um Rückfragen der Krankenkassen zu beantworten sowie den Status der Bedarfsmeldungen einzusehen
  • Single-Sign-On, damit die Web App direkt in der SWING Windows App eingebunden werden kann

FileSync und FormSync
Patienten Dokumente mit Android Geräten synchronisieren

2021-2023 myneva Schweiz AG (ehemals SWING Informatik AG)
Senior Software Engineer

Dieses Produkt-Feature durfte ich konzipieren und komplett entwickeln: Die Patienten Dokumente wie PDF, PDF-Formulare, sowie Fotos mit den mobilen Geräten synchronisieren, damit diese offline zur Verfügung stehen und von ambulanten oder stationären Pflegerinnen genutzt werden können. Mit Hilfe der myneva Scanner App erstellt man mehrseitige PDF Dateien und mit der myneva Forms App werden Formulare ausgefüllt.

  • Implementierung eines Konnektors für den Integration Server mittels Kotlin und Spring Boot, welcher eine REST Api für mobile Geräte zur Verfügung stellt
  • Definierung und Implementierung von GraphQL Queries und Mutation in C#
  • Implementierung der Android Synchronisation mit Kotlin, Retrofit und RxJava
  • Design und Implementierung des UIs mit Kotlin und Jetpack Compose
  • Zur Verfügung stellen von Grafana Boards and Alerts, welche auf Prometheus Metriken zurückgreifen

SWING2Go SyncServer
Neue Daten Synchronisation für Android Pflege App

2020-2021 myneva Schweiz AG (ehemals SWING Informatik AG)
Senior Software Engineer

Wir arbeiteten zu zweit an diesem Projekt, um einen neue Synchronisations-Infrastruktur zu implementieren. Dabei wurde die alte Windows-Server basierte Lösung durch eine Neu-Implementierung ersetzt. Diese Infrastruktur wird von knapp 10’000 Android Tablets täglich genutzt und steht 24/7 zur Verfügung.

  • Implementieren des Sync Servers mit C#, Entity Framework und asp.net mit REST APIs für Geräte, für Windows Server der Einrichtungen sowie für die Management Oberfläche.
  • Erstellen von Docker Images mit CI/CD
  • Erstellen von Kubernetes Definitionen mit automatischen Deployments in drei Umgebungen: dev, staging, prod
  • Erstellen eines Sync Dienstes für die Windows Server, welcher mit C# auf die SAP Anywhere Datenbank zugreift
  • Neu-Erstellung der Android Sync Library mit Kotlin und RxJava
  • Automatische Überwachung der Sync Infrastruktur:
    • Erstellen von Incidents auf der öffentlichen Status Seite
    • Automatische Benachrichtigung der IT Bereitschaft PRTG

Nach Fertigstellung konnten wir innerhalb weniger Monate sämtliche Kunden und Geräte auf die neue Sync Umgebung migrieren.