Christian Ammann verfügbar

Christian Ammann

Software-Entwickler

verfügbar
Profilbild von Christian Ammann Software-Entwickler aus Koeln
  • 50858 Köln Freelancer in
  • Abschluss: Dr. rer. nat und Diplominformatiker
  • Stunden-/Tagessatz:
  • Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher) | französisch (Grundkenntnisse)
  • Letztes Update: 08.04.2020
SCHLAGWORTE
PROFILBILD
Profilbild von Christian Ammann Software-Entwickler aus Koeln
DATEIANLAGEN
Lebenslauf und Referenzen

Diese Anzeige ist nur für angemeldete Nutzer möglich.

SKILLS
Android, Java, J2EE, AWS, Python, UML, JBoss, Spring Framework, Scrum, REST, Software-Architektur, Software-Entwicklung, Modellierung, Verifikation, Projektmanagement, Linux, Consulting, C, C++, Internet of Things
PROJEKTHISTORIE
  • 10/2019 - bis jetzt

    • Automotive
    • < 10 Mitarbeiter
    • Internet und Informationstechnologie
  • Software-Entwickler für ARM Microcontroller
  • Der Kunde möchte eine bestehende Kamera mit moderner Hardware re-designen. Wir haben deshalb eine passende Architektur entworfen und implementiert. Die Kamera besteht aus einem Mikrocontroller und einem Image-Processor. Der Mikrocontroller verfügt über eine Ethernet-Schnittstelle, mit der er Steuersignale des Hosts empfängt, um bspw. die Auflösung anzupassen, Gamma-Werte zu steuern, usw. Nach dem Empfang einer Steuersignals wird der Image-Processor über einen I2C-Bus entsprechend konfiguriert.

    Tools und Technologien: C, Atmel, Arm, Gigvision, GVCP, LwIP Stack, ATSAME54, UDP, I2C


  • 01/2019 - 10/2019

    • Telefondienstleister
    • 250-500 Mitarbeiter
    • Telekommunikation
  • Software-Entwickler für Android-Apps und Firmware
  • Der Kunde baut Telefone und Telefonanlagen. Sie erlauben jedoch keine Bildtelefonie. Deshalb haben wir für den Kunden die Android-Firmware seiner Telefone so erweitert, dass via USB eine Webcam angeschlossen und das Videosignal gestreamed werden kann.

    Tools und Technologien: C/C++, Linux, Kernel, Android Firmware, H264, WebRTC, Freescale


  • 01/2019 - 06/2019

    • Automotive
    • < 10 Mitarbeiter
    • Internet und Informationstechnologie
  • Software-Entwickler für Python
  • Kamerahersteller müssen in der Lage sein, Bildsensoren miteinander zu vergleichen und den für sie passenden auszuwählen. Um sie zu unterstützen, haben wir eine Python-Anwendung geschrieben.. Sie kann den Sensor ansteuern um Einzelbilder bzw. Videos aufnehmen, Histogramme zu berechnen oder Sensorregister anzusprechen. Die Ergebnisse können im Anschluss miteinander verglichen werden.

    Tools und Technologien: Python, wxPython, Tcl/Tk, V4L2


  • 07/2018 - 12/2018

    • Energieversorger
    • >10.000 Mitarbeiter
    • Energie, Wasser und Umwelt
  • Software-Entwickler Python und AWS-Integration
  • Inhalt: Ein Energieversorger möchte in der Lage sein, schnell zu entscheiden, ob ein Ortsnetz zusätzliche Last aushält, wenn Kunden bspw. PV-Anlagen oder Elektroautoladestationen installieren. Wir haben deshalb eine Web-Anwendung entworfen, in der Sachbearbeiter auf einer Landkarte neue Einspeiser/Verbraucher eintragen und automatisch farbliche Markierung (rot, gelb, grün) der Stromleitungen anzeigen, ob die Belastung möglich ist. Das Frontend kommuniziert mittels Microservices mit einem Backend, das Teil einer AWS-Cloud ist.

    Tools und Technologien: Python, AWS Amazon Cloud, Pandas, REST

     


  • 07/2018 - 12/2018

    • Beleuchtungstechnik
    • 1000-5000 Mitarbeiter
    • Industrie und Maschinenbau
  • Software-Entwickler für Smartphone-Apps
  • Inhalt: Der Kunde vertreibt Lichtmanagement-Systeme, die er mit einer App steuern möchte. Wir haben deshalb eine plattformunabhängige App entwickelt, mit der ein Installateur Leuchten in Gruppen einteilen oder mit Bewegungssensoren verknüpfen kann. Die Kommunikation der App mit dem Lichtmanagement-System erfolgt via REST-Schnittstelle.

    Tools und Technologien: Android, Qt, C++, NDK, Boost, Djinni, REST


  • 01/2017 - 06/2018

    • Einzelhandel
    • >10.000 Mitarbeiter
    • Internet und Informationstechnologie
  • Software-Entwickler für Android und Java-Backends
  • Inhalt: Der Kunde möchte seine Marktprozesse weiter digitalisieren. Daher haben wir ihn bei der Implementierung von Smartphone-Apps unterstützt, die es den Mitarbeitern ermöglichen, Inventuren durchzuführen, Warenbestände zu Verändern oder Retouren zu veranlassen. Ein Application-Server trägt die Ergebnisse in eine SQL-Datenbank ein. Zur Qualitätssicherung finden beispielsweise Unit-Tests Verwendung.

     

    Tools und Technologien: Android, J2EE, REST, SQL, Jboss, Spring, Junit, Mockito, Spring


SONSTIGE ANGABEN
Projekte:

Das Ziel des Projekts ist die Umsetzung von Prozessen des Einzelhandels. Eine Smartphone-
App ermöglicht es den Mitarbeitern, Inventuren durchzuführen, Warenbestände zu Verändern oder
Retouren zu veranlassen. Ein Application-Server trägt die Ergebnisse in eine SQL-Datenbank ein.
Zur Qualitätssicherung finden beispielsweise Unit-Tests Verwendung.

Umsetzung eines Testframeworks für Licht-Controller. Die Controller steuern Leuchten in Gebäuden und verfügen über eine REST-Schnittstelle bzw. ein Embedded-Linux-Betriebssystem. Die Konfiguration der Controller erfolgt über eine Smartphone-App.
Tools und Technologien: Android, Java, REST, DALI-Bus, Linux, Espresso

Implementierung einer Smartphone-App mit Cordova, die QR-Codes scanned und Google-Maps anbindet. Um die Nutzung des Kamera-Autofokus zu verbessern, wurde ein bestehendes Cordova-Plugin erweitert.
Tools und Technologien: Android, Java, Cordova, Kamera-Autofokus

Unterstützung bei der Umsetzung eines Infotainment-Systems für ein Elektroauto. Die Applikation besteht aus mehreren Touch-Displays, Lautsprechern und ermöglicht die Anbindung eines Mobiltelefons via WLAN bzw. Bluetooth. Zu diesem Zweck wurde im Rahmen des Projekts ein Bootloader geschrieben, Linux-Treiber entwickelt und die Anbindung an die Apple-CarPlay-App implementiert.
Tools und Technologien: Automotive, C/C++, ARM-Assembler, Linux-Kernel, Apple-CarPlay, Android-Auto, TCP, Renesas

Design eines Messeprototypen, der Kundenströme durch Gesichtserkennung analysiert. Dies erforderte das Einbinden einer nativen Bibliothek in ein Android-Projekt und Versand der Informationen über eine Netzwerkschnittstelle.
Tools und Technologien: Java, C++, Android Studio, TCP, UDP, SSL

Implementierung einer Kamera-Anwendung, die graphische Overlays in Echtzeit in einen H264-Datenstrom einfügt. Zum Schutz der Technologie wurde ein Patent geschrieben und beim europäischen Patentamt eingereicht.
Tools und Technologien: Java, Android Studio, Git, OpenGL, Patentrecht

Implementierung einer RTMP-Bibliothek für Android, die das Streamen von Video- bzw. Audiodaten an Dienste, wie beispielsweise Twitch oder Ustream, ermöglicht. Zu diesem Zweck musste eine bestehende Linux-Bibliothek erweitert und für Android „crosscompiled“ werden.
Tools und Technologien: C/C++, Git, GDB, Android Native Development Kit, RTMP, Wireshark

Design eines Android-basierten, eingebetteten Kamerasystems für Fahrzeuginnenräume, das die Aufnahme und Analyse des Fahrverhaltens ermöglicht. Der Schwerpunkt lag auf dem Auslesen eines Bildsensors, Verarbeitung mit einem H264-Encoder und Speichern auf einer SD-Karte bzw. „streamen“ über eine Netzwerkschnittstelle.
Tools und Technologien: C/C++, OMAP4 Prozessor von Texas Instruments, GDB, Git, MS Visio, Android Studio, Linux Kernel, RTP Protokoll, Wireshark

Implementierung eines Systems, das mittels Ultraschall manuelle Montageabläufe überwacht und Fehler erkennt.
Tools und Technologien: Java, UML, Xtext, Endliche Automaten, Google Web Toolkit, XML

Steuerung einer Photovoltaic-Anlage mit einem Raspberry-Pi, um in Abhängigkeit des aktuellen Verbrauchs die maximale Leistung zu setzen. Zu diesem Zweck musste eine bestehende C-Programmbibliothek erweitert werden.
Tools und Technologien: Linux für Raspberry-Pi, SSH, Serielle Schnittstelle, Yasdi

Implementierung eines Laufzeitpackers, um ausführbare Dateien gegen die Analyse durch Dritte zu schützen. Zu diesem Zweck musste mit Assembler (86-Architektur) ein Programm entwickelt werden, das den PE-Loader von Windows-Systemen nachbildet.
Tools und Technologien: x86 Assembler, C/C++, Visual Studio. Win32 APIs, Windows Systemprogrammierung
KONTAKTANFRAGE VERSENDEN

Nachricht:

Absenderdaten: