
Software engineer in Vienna.
By day I'm a senior research software engineer at IIASA, where I'm a core developer of Geo-Wiki and build the GIS and AI tooling behind its Earth-observation and citizen-science research.
On my own time I keep building the same idea in different languages: applications made of small, isolated modules that start life as one deployable and stay pleasant to change. It began with the ABP Framework and today it's SimpleModule for Python. I've been an ABP Expert since 2018 and take on freelance projects on the side.
I've written up what I learn since 2020, and I build small apps for my own life when nothing else fits.
Work
Senior Research Software Engineer, International Institute for Applied Systems Analysis
NODES research group · Laxenburg, Austria · since 2017
Geospatial
- Geo-Wikisince 2021
Core developer of the platform behind Geo-Wiki and its sister citizen-science sites, including MowingQuest, BioGarden, Global Canopy Atlas, CAMALIOT, RECODO and Evoland: one multi-tenant system for crowdsourced map validation, stratified sampling, accuracy reporting and geotagged photo collections. .NET 10, ABP, PostGIS, TanStack Start.
- LACO-Wiki
Land cover and land use validation tools, from uploading maps and designing validation samples to interpreting imagery, collecting field observations and reporting map accuracy.
- GEO-TREESsince 2026
The platform for GEO-TREES' forest biomass reference data, used to validate satellite biomass maps. React 19 and MapLibre on the front, ABP on .NET 10 behind it.
- FRAMEwork
Citizen-science and knowledge-sharing tools for farmer clusters, including Recodo, supporting biodiversity monitoring and biodiversity-sensitive farming across Europe.
- LandSense
A citizen observatory combining satellite observations with data collected by people to monitor land use and land cover, building on Geo-Wiki, LACO-Wiki and mobile apps.
- Data & mapping toolingsince 2021
Pipelines that turn shapefiles, GeoPackages, GeoTIFFs, NetCDF and more into web-ready PMTiles and COGs with GDAL; GeoServer and Geo-Wiki CLIs; the GRANULAR pan-European landscape webmap; and a cloud-native data portal design on STAC, TiTiler and GeoParquet to replace legacy GeoNode.
AI & machine learning
- Mowing detectionsince 2025
Validating the Copernicus grassland mowing product against Alpine webcam archives. A multi-stage pipeline of CLIP and self-hosted vision-language models filters webcams and frames down to usable grassland views, and a Vision Transformer ensemble serves the trained classifier over HTTP.
- Self-hosted inference
The institute's own GPU inference stack: vLLM serving generation and embedding models, pgvector retrieval, and tensor-parallelism and memory tuning to fit them on shared hardware. I also train colleagues on LLMs and agents.
- Vision models for field photossince 2026
Self-hosted vision-language models that classify and anonymise crowdsourced and survey field photos, with configurable pipelines per collection and background workers for long runs.
- Retrieval-augmented assistantssince 2026
Qdrant vector search, LLM reranking checked by an evaluation harness, citation and confidence gates, prompt-injection filtering, and per-tenant rate limits and token budgets.
Before IIASA
- TransPerfect2012–2016
Full-stack .NET developer in Chennai on TransCEND, a virtual data room with security and audit controls, and TransPort, the client portal for translation requests and delivery.
Research
Papers and conference contributions I co-authored at IIASA.
- Geo-Quest2025
Mobile ground-data collection enhanced by Earth observation. Conference contribution at the Living Planet Symposium.LPS 2025
- Picture Pile2022–2023
Citizen science for rapid image classification, AI integration and SDG monitoring. Conference contributions at ISRSE39 and ECSA.ISRSE39 2023ECSA 2022
- Geo-Wiki2022
Lessons from collecting reference data with citizens. Journal article in Environmental Research Letters on a decade of Geo-Wiki crowdsourcing campaigns.Journal article
- Natura Alert2020
Monitoring biodiversity threats through a mobile app and web portal developed within LandSense. Conference contributions at Knowledge for Change and ECSA.Knowledge for Change 2020ECSA 2020
- FotoQuest2020
Citizen observations of land-use change and lessons from the FotoQuest campaigns. Conference contribution at the EGU General Assembly.EGU 2020
- AgroTutor2020
A mobile application supporting sustainable agricultural intensification. Journal article in Sustainability, with its earlier preprint.Journal articlePreprint
- LACO-Wiki Mobile2019
An open-source application for field data collection and land-cover validation. Conference contribution at the EGU General Assembly.EGU 2019
- IIASA citizen-science apps2018
Mobile tools for citizen-led environmental monitoring. Conference contribution at Citizen Observatories for Natural Hazards and Water Management.Conference record
Open source
- simple_module_pythonPython
A modular Python framework: each feature has its own tables, FastAPI endpoints and React pages, and they all ship as one app. Add-on modules such as a drag-and-drop page builder and news are published on PyPI, and the framework already runs IIASA sites.
- abp-react★ 196
The react frontend for the ABP application
- abp-microservice★ 132
An abp microservice sample
- AbpModuleToMicroservice★ 15
Demo to create abp module and convert it into microservice.
- abp-single-layer-template★ 14
My personal abp template application.