I am a scientific Python developer and computational neuroscience researcher based in Vienna, Austria. I build tested research software for neurodata, time-series analysis, model evaluation, and reproducible scientific workflows.
I work on problems where numerical correctness, data provenance, validation, and clear reporting matter. My background includes EEG and sleep research, experimental design, statistics, and computational neuroscience.
I am available for remote scientific Python and research-software work, and for research software, research assistant, predoctoral, and PhD roles in Vienna.
- NeuroData Release Security Audit — a local audit that leaves source datasets unchanged while reporting on privacy-relevant metadata, archive structure, broken references, and scan integrity before release. Current prerelease:
v0.3.0b3. - Sleep-EEG staging evaluation — external evaluation of YASA across 20 Sleep-EDF recordings and 28,259 aligned epochs, with recording-level uncertainty and stage-specific error analysis. Current release:
v0.3.1· Zenodo DOI. - Dense-EEG stop-signal pipeline — traceable QC, event reconstruction, reviewed ICA, and provenance for 129-channel stop-signal EEG, with a separate 127-EEG-channel synthetic benchmark. Current release:
v0.3.0.
Additional work includes tested neural-dynamics simulations and a privacy-safe OpenSesame visual-world demonstration.
I contribute focused fixes, tests, validation rules, and documentation to scientific Python and neuroinformatics projects. As of 16 October 2026, 28 of my pull requests have been merged across 12 external repositories. Selected merged contributions:
- HED and BIDS: source-preserving sleep-annotation benchmarks with synthetic fixtures and real BOAS annotations, schema checks for behavioural timing columns and BrainVision file triplets, and a PyBIDS indexing fix.
- Pynapple: IntervalSet support for event-triggered averages, lagged cross-correlation for continuous signals, timestamp-only
time_diff()for disk-backed time series, and fixes for ISI histograms with constant intervals and failed tutorial downloads. - MNE ecosystem: experimental Array API support for ReceptiveField with compatible estimators, including PyTorch inputs, and corrected inverse-pattern axis ordering for multiple outputs, CUDA-backed Hilbert transforms, correct paths for nested BIDS datasets, rest-epoch validation, decoding safeguards, and OpenBLAS thread-tuning documentation.
- MNE-ICLabel: consistent float32 inference when PyTorch's global default dtype is float64.
- Brian2: per-object dependency tracking during standalone compilation on POSIX, avoiding a separate project-wide dependency-generation pass.
- EEGLAB interoperability: importing epoched files without event metadata and correcting event mapping after dropped epochs in MNE and eeglabio.
- SleepECG: validation and documentation for external actigraphy inputs, a searchback correction, and a CAP Sleep Database reader.
Open work includes parallel manual and automated sleep annotations in BIDS/HED. See my GitHub contribution history for the full list.
Python: NumPy, pandas, SciPy, scikit-learn, PyTorch, pytest, GitHub Actions, numerical validation, model evaluation, and reproducible data pipelines.
Neuroinformatics: MNE, MATLAB/EEGLAB, BIDS/HED, EEG quality control, sleep staging, event reconstruction, provenance, and metadata review.
