Victor Alejandro Alvarez Vega
banner
victoralvarez.bsky.social
Victor Alejandro Alvarez Vega
@victoralvarez.bsky.social
23
Software Engineer and Founder of Aguacero
🇨🇺
Reposted by Victor Alejandro Alvarez Vega
I’ve been rewriting NSHARP, our sounding analysis visualization program. It’s fully interactive at 140+ FPS, supports full-res/raw 1s radiosonde data natively. It compiles in MacOS, Linux, Windows, and runs in a web browser. Of course, leveraging the sounding code above!

4/?
February 14, 2025 at 10:36 PM
I'm excited to put this into experimental, and eventually operational, use over the coming weeks as we switch back over to client-side development before going fully online again. Follow along at @aguacerowx.bsky.social for future updates as we get closer to being back online!
December 3, 2024 at 8:20 PM
This offers several benefits: unused tiles are never generated, tiles can now be created dynamically, the tile format is optimized for web use, and near-unlimited instant horizontal scalability matches well with the bursty nature of client visualization needs.
December 3, 2024 at 8:20 PM
There is a tradeoff here: the first user to request a tile will experience this slight delay. However, one of the primary benefits of MVT is its ease of caching, meaning future users will simply request the pregenerated tile. This is what this looks like below.
December 3, 2024 at 8:20 PM
When a user requests a field, each tile on the map triggers a unique Lambda. This requests the bounding indices in the stored array. Contouring and encoding to MVT from this point forward is light and fast, the full process on the most complex geometries completing within 1-2 s.
December 3, 2024 at 8:20 PM
The solution was to embrace serverless. Instead of processing GRIB -> geometry -> complete tile pyramid in one go, we compute desired fields that are non-native to GRIB and keep the data in array format. Any further processing from this point forward is event-driven.
December 3, 2024 at 8:20 PM
In short, the unique domain challenge with vector tiling and model data visualization is scale. Model data contains many different fields across forecast hours, runs, and models, quickly becoming expensive to pre-process entirely.
December 3, 2024 at 8:20 PM
I took on this challenge and after endless hours of research and experimentation, I want to share the technical journey of our solution in the below Medium article.

medium.com/@victoraalva...
Designing a Serverless Backend for Data Processing with Event-Driven Vector Tiling
A little over two months ago today, data processing operations on Aguacero were stopped as we initiated our migration to Amazon Web…
medium.com
December 3, 2024 at 8:20 PM