Freiberuflicher Entwickler mit umfassenden Kenntnissen in

Mobile App / SDK und Rust

Basis Kentnisse und starkes Interesse in Embedded Linux

Android

Android Apps und SDKs

  • Android Apps mit Jetpack Compose UI
  • Android Libraries / Module Entwicklung
  • Programmiersprache Java und / oder Kotlin mit Coroutines und Flows
  • Binary Packages (z.B. Rust) als JNI-Libs
  • Rust ↔ Java / Kotlin Interface Entwicklung mit JNI (Java Native Interface - C)

iOS

iOS Apps und SDKs

  • iOS Apps mit SwiftUI
  • iOS und macOS Swift Packages (SPM) Entwicklung
  • Programmiersprache Swift mit Apple Combine / Swift Concurrency (async/await)
  • iOS und macOS Binary Packages (z.B. Rust) als XCFramework
  • Rust ↔ Swift Interface Entwicklung mit Swift FFI (C)

Flutter

Flutter Apps / Plugins und Dart Package SDKs

  • Flutter Apps für Mobile und Desktop
  • Flutter Plugins zur Integrierung von nativen Host-Platform Apis
  • Dart Packages für Flutter unabhängige Module
  • Programmiersprache Dart mit Futures / Streams / RxDart / Riverpod
  • Binary Packages (z.B. Rust) - Integration je nach Host-Platform, auf iOS / macOS mit 'public-symbols.txt' integration, sodass die Symbole welche nur von Dart genutzt werden nicht durch den Linker entfernt werden
  • Rust ↔ Dart Interface Entwicklung mit Dart-FFI (C)

Bluetooth Low Energy

Umfangreiche Erfahrung in BLE-Entwicklung

In den letzten Jahren habe ich überwiegend in BLE Projekten gearbeitet.
Das umfasste SDK's für kundenspezifische BLE Anforderungen mit OTA/OAD (Over The Air / Over The Air Download) Controller-Firmware-Update Funktionalität.

Rust

Rust Entwicklung

Durch mein letztes Projekt habe ich über mehrere Jahre umfassende Kentnisse in Rust erwerben können:

Zusätzlich habe ich durch die Arbeit Erfahrung mit Rust async (Futures / Streams) sammeln können, mit den Tokio und Smol Runtimes und inklusive eigener Future / Stream Trait Implementierungen.

In dem oben beschriebenen Kontext habe ich auch egui genutzt, eine relativ simple Rust-Only GUI Library mit der man GUI Apps für Mobile und Desktop Platformen erstellen kann.
UI und UX ist nicht ansatzweise vergleichbar mit Flutter oder nativen iOS / Android / ... UI Libraries, aber für schnelle Prototypen oder wie in meinem Fall zum Entwickeln von Host-Platform Integrationen ist egui sehr hilfreich, da man direkt Rust nutzt und nicht extra FFI Interfaces für die jeweilige GUI (Flutter UI / SwiftUI / Jetpack Compose) erstellen muss.

Damit habe ich nebenbei auch Erfahrung mit Rust-GUI's gesammelt. Getestet habe ich auch Slint und Iced, aber am Ende ist egui am einfachsten zu benützen und die einzige Rust-GUI Library welche mit wenig Aufwand sowohl auf Desktop als auch auf Mobile Platformen funktioniert.

Fernando Lopes

Fernando Lopes
DE 72218 Wildberg
(40km südlich von Stuttgart)

+49 (0)177 679 73 53
fernando@lopes.one

Xing
LinkedIn

CV als PDF Datei

CV deutsch CV englisch