I work at the intersection of measurement, data, and real-world decisions. Trained in forest biometrics (M.S., Mississippi State), I build GIS, remote sensing, and statistical tools that make results useful, reproducible, and defensible.
What do we actually know, how well do we know it, and how can we turn that knowledge into something useful?
Forestry → Spatial data → Analysis → Modeling → Automation → Decision support
Based in Florida (Open to relocation) , originally from Nepal 🇳🇵
| Area | Focus |
|---|---|
| 🌲 Forest biometrics | Forest inventory, growth & yield, height–diameter modeling, small area estimation, mixed-effects and ML models on plot data, biomass and carbon |
| 🛰️ Remote sensing & LiDAR | LAS/LAZ processing, canopy and vegetation structure, land-cover classification, change detection |
| 🗺️ Operational GIS | Geodatabase and schema design, feature/REST services, spatial QA/QC, cartography |
| ⚙️ Geospatial automation | Python/ArcPy/R pipelines, custom toolboxes, spatial databases (PostGIS, SQLite, R-tree indexing) |
| 🌐 Decision support | Interactive web maps and apps (R Shiny, React, D3, three.js, MapLibre), technical briefings |
- 🌳 3D Forest Height Studio: Open-source R Shiny + three.js app that turns ETH Zurich 10 m canopy-height data into interactive 3D forest maps for any country or region, with PNG, GeoTIFF, and embeddable web-page export.
- 🌧️ Rainfall Relief & Pulse: US precipitation drawn as terrain beside real elevation, with a 30-year animation where wet years swell and droughts sink (three.js, MapLibre GL, PRISM).
- 🛰️ Carbon Data Atlas: Open atlas cataloging 16 satellite, model, inventory, and ground-based CO₂/CH₄/N₂O datasets, with a guided explorer and coverage maps (React, Vite, D3).
- 🌲 US Forest Inventory Explorer: Interactive explorer built on live USDA FIA data (portfolio).
Public write-ups with reproducible code, built on PostgreSQL/PostGIS, SQLite, and Python:
- 📏 FIA tree-height codes: crews vs. a height model: Species × ecodivision height–diameter models trained on 11.8M measured trees to evaluate ~200,000 crew-reconstructed heights on broken-top trees. Found and diagnosed a spurious stump-height artifact by simulation.
- 🔍 Part 2: FIA's own height model: Checks FIA's undocumented HTCD 4 model against a remeasurement-based benchmark.
- 🍃 Part 3: Carbon density by ecoregion: Design-based estimates across 35 ecodivisions, with a ~29-fold regional spread traced back to FIA's sample design.
Kathmandu Valley relief · Myagdi topographic map · US wood-products mills · Airports & flight routes · Web Mercator vs. Equal Earth explorer. See them all in the portfolio.
- 🗺️ Multiclass LULC classification: Landsat 8 neural-network classifier with training-data prep and automated hyperparameter tuning.
- 🏊 Swimming pool detection: YOLOv5 object detection on geospatial imagery.
- 🥔 Potato disease classifier: TensorFlow.js app running in the browser.
- 💧 DEM to stream network tool: Several ArcGIS hydrology tools chained into one reusable geoprocessing workflow.
- Automated processing of 14,000+ LiDAR tiles with Python/ArcPy for utility-corridor vegetation volume analysis.
- Built a full-stack LiDAR retrieval app (Python, R Shiny, SQLite, R-tree) that cut multi-day data staging to minutes.
- Co-led a 38,616+ mile positional-accuracy assessment of utility network data using LiDAR-derived ground truth.
- Thesis: Small area estimation methods for county-level forest biomass (Mississippi and Minnesota).
Languages: Python R SQL JavaScript
Geospatial: GDAL/OGR rasterio terra lidR geopandas PDAL PostGIS QGIS ArcGIS Pro ArcPy Google Earth Engine
Data science & web: scikit-learn mlr TensorFlow R Shiny React D3 three.js MapLibre GL
Roles and collaborations in GIS (utility and forestry), forestry data science, forest carbon and MRV, and timberland analytics, plus open-source and research projects.
📫 Portfolio · LinkedIn · CV (PDF)
Seek progress, not perfection.


