24.08.2024 aktualisiert

**** ******** ****
60 % teilweise verfügbar

Generalist - HPC | Embedded | Wissenschaftliche Software | Numerik | Daten | Metrologie

Leipzig, Deutschland
Weltweit
Leipzig, Deutschland
Weltweit

Profilanlagen

ernst_cv-en_2024-07-11_online.pdf

Skills

C (Programmiersprache)HTMLJavaScriptX86-ArchitectureGeoinformationssystemX86-64Analyse-ToolsXcodeAngewandte PhysikArchitekturARM ArchitekturUnterrichtenBash ShellBASIC (Programming Language)ZweisprachigMedizinische BildgebungBohrlochgeophysikGeschäftsprozessmodellierungUNIXC++UbuntuCSSCliComputer-ClusterCUDADatenbankenDebian LinuxLinuxVerteilte DateisystemeDateisystemeEcmascriptEmbedded SoftwareEthernetFehlertoleranzGeodatenbankenGeologieGitHubGPGPUGrafische BenutzeroberflächeGrafische AnimationHydrologieInfinibandIscsijQueryPythonKernel-Based Virtual Machine (KVM)PostgreSQLLibreofficeMATLABMathematische ModellierungMesssystemeMessage Passing InterfaceMicrosoft Visual StudioVisual Basic .NETMongoDBNode.jsNumerische AnalyseNumPyOctaveOpenlayersOpenmpOpen SourceParallel ComputingPostgisForschung & EntwicklungMarkdownTensorFlowReverse EngineeringSatellitenSatellitenbilderWissenschaftliches RechnenSimulationenSQLiteLagerverwaltungStorage-VirtualisierungSubversionSystemmodellierungToolchainAusbildungsaktivitätenVirtualBoxCephRust (Programming Language)Import/Export LogistikScriptingTestenHigh Performance ComputingSuse LinuxData SciencePyTorchGeoinformatikLuft- und RaumfahrtindustrieNumerical ComputingGitLabGitSensorikSassGit FlowVBA Programming LanguageDaskAtlassian BitbucketZfs File SystemLidarDocker
Ich bin freier Wissenschaftler, Entwickler, System-Ingenieur, Berater und Trainer ohne Spezialisierung. In dieser Rolle habe ich über eineinhalb Jahrzehnte Erfahrung in verschiedensten Gebieten gesammelt. Ein signifikanter Anteil meiner Arbeit entstand um Geophysik, angewandte Geowissenschaften, Geoinformationssysteme, Fernerkundung, Raumfahrttechnik und angrenzenden Disziplinen. Weitere Schwerpunkte lagen u.a. bei bildgebenden Verfahren, nicht ausschließlich in medizinischen Kontexten, Radarverfahren und Vakuum-UV-Spektroskopie. Man könnte meine Tätigkeit im weitesten Sinne als Data Science mit engem Bezug zu den jeweiligen Fachgebieten, die es zu verstärken gilt, verstehen. Der gemeinsame Nenner in den meisten meiner Projekte war und ist die Entwicklung und Anpassung von spezialisierter Software für die Erfassung, Verarbeitung, Analyse und Speicherung großer Mengen numerischer Daten sowie Modellierung und Simulation auf allen Arten von Hardware angefangen bei Embedded-Geräten bis hin zu HPC-Systemen. Dies schließt explizit die Spezifikation derjenigen Systeme und Architekturen, auf denen gerechnet und Daten abgelegt werden, mit ein. Gleichermaßen spielt dabei auch die Entwicklung bzw. die Unterstützung der Entwicklung von Instrumenten, Sensoren bzw. Messanordnungen regelmäßig eine Rolle. Daneben analysiere, berate und trainiere ich, zumeist Publikum in Forschung und Entwicklung, privatwirtschaftlich wie auch staatlich, gelegentlich auch Studenten im Rahmen von Vorlesungen & Seminaren, weltweit. Ich bin vertraut mit dezentraler Arbeit in stark interdisziplinären, mehrsprachigen und multikulturellen Umgebungen über mehrere Zeitzonen hinweg. Regeln und Vorgehensweisen bei der Arbeit mit Dual-Use-Gütern für zivile Anwendungen, inländisch wie auch grenzübergreifend, in Europa und Nordamerika sowie dem Schutz von Geschäftsgeheimnissen sind mir hinlänglich geläufig. Gleichermaßen ist Open Source für mich dazu kein Widerspruch, sondern ein integraler Bestandteil meiner Arbeit und gelebte Kultur wo auch immer möglich, sei es als reiner Konsument wie auch als Beitragender.

Technische Fähigkeiten - Wissenschaftliches Rechnen (Auswahl)

Sprachen

- Python, 19 Jahre Erfahrung (für die vergangenen 10 Jahre täglich); Python 2.x und 3.x, Cython 0.x und 3.x, Pypy, Micropython, async/io, etc.; eine weite Auswahl an wissenschaftlichen und nicht-wissenschaftlichen Paketen (numpy, cupy, pandas, geopandas, cudf, xarray, dask, opencv, pillow, scikit-image / skimage, numba, numexpr, pycuda, jax, mypyc, pythran, nuitka, scipy, scikit, scikit-learn, tensorflow, keras, pytorch, torch, h5py, pytables, zarr, netcdf, protobuf, matplotlib, cartopy, seaborn, networkx, vispy, glumpy, mayavi, plotly, bokeh, datashader, qgis, pyqgis, gdal, fiona, rasterio, pyproj, proj, shapely, poliastro, joblib, multiprocessing, concurrent futures, mpi4py, ctypes, cffi, sip, swig, oct2py, matlab.engine, pytest, nose, hypothesis, coverage, setuptools, flit, poetry, sphinx, jinja, pyserial, etc.); Paketierung und Verteilung in verschiedensten Formen (PyPI, wheels, warehouse, conda, conda-forge, öffentlich & intern, etc.)
- Matlab, 18 Jahre Erfahrung (2007 bis 2014 täglich, seither gelegentlich); Versionen 7.0 bis 8.2 (2013b); Octave (eingangs als Ablösung von Matlab, später auch Ergänzung zu Python)
- C, 16 Jahre Erfahrung (üblicherweise in Kombination mit Matlab & Python); MPI, openMP, CUDA, SIMD (insbesondere SSE und AVX); GCC, Clang / LLVM, Intel Compiler Suite, MSVC; ANSI C, C99, C11, C18
- Rust, 1 Jahr Erfahrung (lernen der Sprache nicht abgeschlossen); portierbares SIMD via std::simd (nach wie vor als experimentell gekennzeichnet)
- BASIC, 24 Jahre Erfahrung (vor 2007 regelmäßiger, heute gelegentlicher Nutzer); Visual Basic 5 & 6, Visual Basic .Net (vor "core"), Gambas, QBasic, etc.; Microsoft Office VBA und Open/Libre Office Scripting
- ECMA script (JavaScript), 23 Jahre Erfahrung (gelegentlicher, zumeist gezwungener Nutzer); aktuelle Webbrowser, node.js; D3, Leaflet, OpenLayers, jQuery, etc.
- Shell: Bash, zsh
- Markup: HTML (4 & 5), CSS, SASS, Markdown, MyST, RestructuredText

Daten

- Numerische Daten: HDF, ASDF, CDF, FEATHER, ZARR, etc.
- Datenbanken: MongoDB, SQLite, PostgreSQL, PostGIS, etc.
- Eine Vielzahl an anderen, proprietären, zumeist exotischen Systemen zur Datenablage
- Datenimport und -export via Reverse-Engineering von verschiedensten nicht dokumentierten Text- und Binärformaten sowie Übertragungsprotokollen

Versionsverwaltung

- git (als Werkzeug selbst sowie auch mit Github, BitBucket, Gitlab etc)
- SVN (Subversion)

Umgebungen

- Linux, 21 Jahre Erfahrung; bevorzugt Debian/Ubuntu/Mint und SuSE; x86 & ARM
- Windows, 29 Jahre unausweichliche Erfahrung; mit CygWin, Unix-Toolchains, WSL, Visual Studio
- OSX, gelegentlicher Nutzer zumeist auf Kommandozeile; oberflächliche Erfahrung mit XCode
- eCos für Embedded-Anwendungen, gelegentlicher Nutzer

Hardware und Architekturen

- "Untere Grenze", beispielsweise: Software für Lagekontrolle von Satelliten, 200k Storage, 500k RAM wenn aktiv
- "Obere Grenze", beispielsweise: Design und Betrieb von Clustern, verbunden durch verschiedene Arten von Ethernet und Infiniband, iSCSI und/oder Fibre Channel für Storage

Virtualisierung

- VirtualBox, 16 Jahre Erfahrung, CLI und GUI, üblicherweise zum Testen
- KVM: 7 Jahre Erfahrung, üblicherweise zusammen mit virt-manager; Primäre Anwendung ist (GPU-) Ressourcenverwaltung dank PCI(e)-Durchreichung
- Docker: 9 Jahre Erfahrung, primär für Demos, gelegentlich ersetzt durch Podman

Interessen

- High Performance Computing (HPC): alles von "klassischem" MPI bis hin zu Dask, Fehlertoleranz
- CUDA: reines C/C++, numba (LLVM), pycuda oder Wrapper – je nach Anwendungsfall
- GPGPU mit Alternativen (leider selten): openCL, ROCr / ROCm, Vulkan Compute, etc.
- Ablage wissenschaftlicher Daten: Schwerpunkt auf numerischen Daten und relevanten Technologien (heute zumeist ZARR) plus relevante Dateisysteme (Kombinationen aus ZFS, GlusterFS und Ceph)

Professionelle Trainings- und akademische Lehrerfahrung

Äquivalent zu rund 280 Tagen Vollzeit, Deutsch & Englisch

Weitere Informationen

Für eine vollständige Übersicht über bisherige Erfahrung und technische Fähigkeiten sei auf den hier hinterlegten Lebenslauf verwiesen.

Erfahrung

Berufserfahrungmehr als 10 Jahre
Freelancer seit2016

Sprachen

DeutschMutterspracheEnglischverhandlungssicherFranzösischGrundkenntnisseNorwegischGrundkenntnisse

Kontaktanfrage

Einloggen & anfragen.

Das Kontaktformular ist nur für eingeloggte Nutzer verfügbar.

RegistrierenAnmelden