MK

Martin Kersten

verfügbar

Letztes Update: 21.03.2024

Softwareentwickler

Abschluss: Diplom Informatiker (Uni)
Stunden-/Tagessatz: anzeigen
Sprachkenntnisse: deutsch (Muttersprache) | englisch (verhandlungssicher)

Dateianlagen

CPSA-Foundation.jpeg
CPSA-Schulung-ADOC.jpeg
CPSA-Schulung-DDD.jpeg
CPSA-Schulung-Improve.jpeg
dipom - first page.jpg
diplom - second page.jpg
diplom - front page.jpg
Führungszeugnis-Schein-April-2021.jpeg
CV-deutsch.pdf
CV-english.docx
CV-english.pdf

Skills

Java, Spring, Hibernate, Selenium, JUnit, Vertx, Profiler, Debugging, Memory Debug, Reverse-Engineering
SQL, PL/SQL, Oracle, Postgres, MS SQL, Performance Optimierung
Dart, Flutter Web, Flutter Mobile (Android, iOS)
DevOps, Splunk, Jenkins, Kubernetes, Istio
MS Word, MS Excel, Atlassian Confluence, Jira
Projektleitung, Requirement Enginiering, Software Design, Software Architektur

Studium: Informatik + Nebenfach Wirtschaft (2005), Bachelor, Diplom (Masteräquivalent), Universität Magdeburg, Deutschland, Notenschnitt 1,2
20+ Jahre Erfahrung als Softwareentwickler,
Mehrjährige Vertragsarbeiter im Finanizsektor, Versicherung, Telekommunikation, Banken
Zertifikate: iSAQB Software Architecture Foundation, iSAQB Domain Driven Design, iSAQB Architecture Documentation, iSAQB Impoving existing Architcture and Systems

Projekthistorie

04/2021 - 10/2021
Senior Software Engineer / DevOps
Transportation (Bern) (Transport und Logistik, 5000-10.000 Mitarbeiter)

Software Development
- Requirements Engineering, Software Architecture, Software Development, Operations, Monitoring
- Java, TypeScript, Angular, Spring Boot, Spring Integration Flow, Spring Data, New Relic, Splunk

06/2020 - 04/2021
Softwarearchitekt und Lead Developer
Startup (Internet und Informationstechnologie, < 10 Mitarbeiter)

Entwurf und Entwicklung einer modernen Version eines verteilten Systems für ein weltweites soziales Netzwerk. Flutter Web + Flutter Mobile (Android + iOS) für Mobile und Desktop-Platformen sowie SmartTV. Verteilte Datenbank (PostgreSQL + Redis Cluster), verteiltes System (Vertx, Kafka), Amazon S3, Einbinden von KI-Lösungen (OpenCV, DNN) und Bildbearbeitung (OpenCV), Kubernetes, Elastic Search, Kibana, Jira, Confluence

09/2017 - 01/2020
Senior Softwareengineer/Softwareentwickler
Finanzdienstleister nahe Zürich (Banken und Finanzdienstleistungen, 1000-5000 Mitarbeiter)

- Entwicklung, Wartung, Reverse Engineering von Diensten (Services) auf Basis von Java, Spring, Hibernate, MS SQL, RabbitMQ
- Lead Developer für Kreditkartenbonus-Applikation
- Integration von Fremdsystemen und 3rd Party API z.B. MasterCard, Visa, AMEX
- Performanceoptimierung von Diensten und Datenbankabfragen
- Testautomatisierung auf Basis von JUnit, Selenium
- Softwarearchitektur und Dokumentation für Dienste und Teillösungen
- DevOps (Kubernetes, Docker, Splunk)
- Big Data Analyse von Kundendaten und Transaktionsaufkommen

02/2017 - 08/2017
Senior Softwareentwickler
Medical Company (Pharma und Medizintechnik, 50-250 Mitarbeiter)

Develelopment, Debugging, Maintance, DevOps

- Entwicklung einer Lösung zur automatischen Konfiguration von NGINX Reverse Proxies bei Topology-Änderung von verteilten Dockerdeployments mit Reaktionszeiten unter einer Millisekunde.
- Reimplementierung eines Mikrodienstes zur Integration von AWS Amazon S3 zur behebung von verschiedenen Defekten, Erhöhung der Testbarkeit und Wartbarkeit.
Implementierung 
- Implementierung einer State-Machine Lösung zur Ersetzung einer komplexen Apache-Camel Lösung mit stark reduzierter Komplexität und erhöhter Wartbarkeit.

Architektur: Microservices, Rich Client Platform (RCP / RCA)
Database: Oracle 12,AWS S3, Oracle 11XE
Web: HTML / HTML5, CSS, XML, JSON, Spring Thymeleaf
Platform: JBoss Fuse (Apache Karaf / CXF), Netbeans RCP
UI: Swing
Infrastruktur: Docker, NGINX, JAX-RS (REST), JAX-WS (XML), Virtual Box

11/2015 - 07/2016
Senior Softwareentwickler für Desktop und Web-Test Automatisierung
Telekommunikationsfirma Zürich (Telekommunikation, >10.000 Mitarbeiter)

- Implementierung und Integration von Testfällen zur Testung von Web und Desktopapplikationen der Platformen Chrome, Internet-Explorer, Firefox, MacOS, Windows.
- Entwicklung eines Testframeworks zur Analyse von Screenshots inklusive Bilderkennung und Soll-Ist Vergleiche mit Ähnlichkeitsanalyse
- Entwicklung der Teststrategie der Desktop Applikation
- Entwicklung eines Systems zur Integration mehrer Instanzen (MacOS, Windows) zur flexiblen Auslastung durch mehrere Testszenarien
- Integration mit Windowsnative Lösung zur Testen von Filesysteminteraktionen mit Hilfe eines eigenentwickelten Treibers für eine Ramdisk zur Laufwerkssimulation und Überwachung.
- Analyse von HTTPS Traffic mit Wireshark

Programmiersprachen: Java, C#, C, JavaScript
Betriebssysteme: Windows 7, 8, 10, Linux, OS X
Filesysteme: exFat, NTFS, Ext3, Ext4
Web: HTTP 1.1, HTTPS, REST, HTML5, Jetty, Apache HttpClient 4.x
Testing: JUnit, Mockito, Selenium, MockServer
IDE: Eclipse, C#-Decompiler, Wireshark, HttpFox, HttpRequester

08/2015 - 10/2015
Senior Software Developer
SEO Company (Berlin) (Marketing, PR und Design, 500-1000 Mitarbeiter)

  • Convert various REST web-applications using Spring+Hibernate into light weight micro services using Spring JDBC being deployable as Debian daemons.

  • Implemented SQL-Framework forcing strict NULL and strict parameter handling along with named parameter support improving readability and maintainability.

  • Implemented test framework for mocking Spring JdbcTemplate allowing to fully test SQL-statement creation and ResultSet mapping for unit testing of the data access layer by also preserving Spring functionality without the need of an in-memory database.

  • Implemented Parameterized test framework based on lambdas and streams in order to test constructor, method and resource (REST API) contracts. Using the test framework these tests require only a minimal set of test methods by combining contract primitives automatically generating hundreds and thousands of required test executions testing each specified edge case.

  • Implemented test framework to easily test REST services by only specifying HTTP 1.1 operations and asserting server responses.

  • Defect resolution, Design integrity, Software Quality

  • General Skills: MicroServices, REST, Maven 3

  • Java Skills: Java 8, Lambdas, Streams, Concurrency API

  • Database Skills: ORM, JPA / Hibernate, MySql

  • Spring Skills: Spring, Spring REST, Spring JDBC,

  • Testing Skills: NgTest, Mockito, Design by Contract

  • Web Skills: Http 1.1, Jetty, Apache HttpClient 4.x

  • Used Tools: Visual VM, HttpRequester (FireFox), Sonar, WireShark


10/2014 - 01/2015
Softwareentwickler, Tester, Performance Engineer
Versicherungsfirma, Lzuern (Versicherungen, 1000-5000 Mitarbeiter)

- Reverse Engineering von Versicherungssoftware zur Analyse von Problemen mit dem Datenbanktransaktionshandling (Decompiler Java)
- Analyse und Behebung mehrerer Defekte und Performance Probleme (SQL Rewrite auf Datenbanklevel, Explains, Memory Debug, Profiler)
- Erstellen eines Testframeworks zum Testen eines 3rd Party JavaScript UI Frameworks durch tecnich
- Extended Selenium zur Vereinfachung des Tests von Multi-iFrame-Web-Applikationen
- Analyse und Verfassen eines 20 Seiten Berichts für die Probleme und Designfehlentscheidungen der eingesetzten 3rd-Party Lösung inklusive Lösungsempfehlungen und Beschreibung der zu erwartenden Fehler- und Problemszenarien

Programmiersprachen: Java, C, SQL, JavaScript, HTML, CSS
Datenbank: Oracle, PL/SQL, MongoDB
Software: Profiler, Sampler (Eigenentwicklung)
IDE: Eclipse

02/2007 - 10/2014
Vorherige Tätigkeiten auf Anfrage


Reisebereitschaft

Verfügbar in den Ländern Schweiz
Gesamte Schweiz
Profilbild von Martin Kersten Softwareentwickler aus Altendorf Softwareentwickler
Registrieren