El desenvolupament i l’operació de programari em segueix motivant cada dia, des que vaig començar als anys 90. Entendre una idea de producte i convertir-la en un sistema de programari concret és una habilitat que he adquirit al llarg de diverses dècades. Com a arquitecte o desenvolupador, la meva fortalesa són els sistemes distribuïts i, com a cas especial, els sistemes IoT (Internet de les Coses).

Com a exemple, alguns projectes en els quals he desenvolupat programari:

  • Adaptació del sistema de MeinAuto.de (Renault) per a distribuïdors d’un nou producte en el leasing de vehicles.
  • Desenvolupament i optimització d’un modern sistema d’entreteniment a bord amb Go, Postgres, SQLite i Kubernetes.
  • Adaptació del sistema central de MeinAuto.de per a la migració a un entorn Kubernetes. Vaig treballar amb Docker, Kubernetes, Gitlab CI i vaig fer ajustaments a components en PHP, JavaScript i Java/Spring.
  • Integració Smart Home per a mobiliari d’alta tecnologia: En el proveïdor de serveis d’implementació, vaig ser principalment líder tècnic de projecte i arquitecte, i vaig treballar personalment en la suite de proves end-to-end en Go, la infraestructura de clau pública, l’aprovisionament de dispositius, una interfície de dispositiu basada en Python/Flask, una Skill d’Alexa implementada en .NET i un servidor C++.
  • Desenvolupament del sistema d’enquestes online darrera NEO Culture amb Go, HTML/CSS i JavaScript.
  • Desenvolupament d’un procés d’alt rendiment en C++ per processar dades d’ofertes de viatges basats en catàlegs a Amadeus TravelTainment. A causa d’aquest projecte, també vaig participar en el desenvolupament de la primera versió de l’estàndard de dades OTDS.
  • Desenvolupament d’un sistema d’informes de cartera per a derivats financers i opcions en C# utilitzant dades en temps real de Reuters.
  • El meu primer projecte de desenvolupament pagat va ser la creació d’una solució d’analítica web per a AOL Alemanya el 2000 usant Perl i Excel VBA. En aquell moment, Google Analytics encara no existia. En aquest projecte vaig aprendre molt sobre Internet.

Sóc bastant agnòstic pel que fa a la pila tecnològica utilitzada i per tant he entrat en contacte amb diverses tecnologies al llarg del temps. Aquí n’hi ha algunes, sempre ordenades en ordre descendent segons la meva confiança.

Llenguatges de programació i biblioteques

  • Go
  • Dart i Flutter
  • HTML/CSS
  • JavaScript: Node.js, JS pur per a frontends, Vue, Nuxt, jQuery, etc.
  • Python (Flask, Pandas)
  • PHP, Symfony
  • C i C++
  • Ruby on Rails
  • Java, Spring
  • .NET, C#, VBA
  • AngularJS
  • Android amb Jetpack Compose

DevOps i Enginyeria de Sistemes

  • Docker
  • Kubernetes
  • Gitlab CI
  • Linux
  • systemd

Cloud

  • Google Cloud, inclòs Firebase
  • AWS (principalment EC2, Route 53, SQS)
  • Azure (Iot Hub, AD B2C, etc.)

Bases de dades relacionals

  • Experiència sòlida en SQL escrivint i optimitzant consultes i en migració de dades
  • MySQL/MariaDB
  • Postgres
  • SQLite
  • Amazon RDS
  • MS SQL Server i Reporting Services

Persistència no relacional al núvol

  • Google Firestore
  • Google Datastore
  • Amazon S3 i similars

Embedded

  • C i C++ embedded
  • Desenvolupament de microcontroladors
  • Buildroot Linux
  • Col·laboració amb desenvolupadors de maquinari
  • Prototips de maquinari

Coneixement de processos i mètodes

  • Prototipatge ràpid
  • Desenvolupament amb IA
  • Automatització de proves
  • Arquitectures basades en components
  • UML
  • Pràctiques d’enginyeria àgil
  • Estadístiques i ciència de dades bàsica
  • Cicles de vida de desenvolupament de programari conformes amb PCI DSS