Uncategorized

Stuck in Legacy GIS? A Practical Roadmap to Modern GIS and Cloud Native Geospatial

I get this question almost every day.

“I feel stuck in legacy GIS, and I want to update my skills, but I don’t know where to start.”

It does not matter if your goal is to keep up with the field, hit the next career milestone, or ship a project that feels out of reach. The path forward is learnable, and you do not have to do it alone.

From my site survey, I hear the same themes:

  • “I want to rebrush my GIS skill and update to today’s geospatial technology.”
  • “Updating my geospatial skills from desktop GIS to cloud native geospatial.”
  • “Redefining GIS as it evolves from Desktop GIS to Web GIS to Modern GIS and now Cloud Native Geospatial.”

Below is the roadmap I wish I had when I hit this same fork in the road.

The moment everything clicked

In 2016 I was managing a project with a complex web app. I needed to change one button label. Simple, right? Not when there is a full backend, scripts to stand up the project, a GitHub repo, and a pile of dependencies.

I could not get it to run. A teammate jumped in over Slack and fixed it in minutes.

That was my fork in the road. I knew how to think spatially and build maps in QGIS. But the work was moving toward web mapping, application development, data engineering, and something called SQL. I had a choice. Talk about what spatial could do, or learn to build it.

If you are at that point today, here is how to move forward.

The Modern GIS skills stack

Start with a short, focused stack that gives you leverage across many projects.

  1. Spatial thinking and data literacy
    Keep the foundation strong. Clean data beats clever code.
  2. SQL for spatial
    Learn SELECT, JOIN, GROUP BY, and window functions. Add spatial functions like ST_Intersects, ST_Area, ST_Buffer. SQL travels well across platforms.
  3. Python for automation
    Use it for data ingest, light ETL, and testing. Focus on GeoPandas, Shapely, Rasterio, and requests. Keep scripts short and repeatable.
  4. Cloud native formats and access
    Learn GeoParquet for vector and COGs or Zarr for raster. Read data over the wire instead of downloading it.
  5. Modern spatial engines
    Get hands-on with engines that scale. Apache Sedona, DuckDB with spatial extensions, and databases that speak spatial SQL. If you use Esri at work, learn how to connect these tools into that workflow.
  6. Web visualization
    You do not need to be a front end engineer. Learn how to publish from notebooks and SQL to a simple web map or dashboard. Keep it lightweight.

A simple path you can follow

Think in short sprints. You do not need a bootcamp to get moving.

Week 1 to 2: Solidify your base

  • Refresh spatial joins, projections, and geometry validity.
  • Write five SQL queries with spatial predicates. Save them in a gist.

Week 3 to 4: Move data the modern way

  • Convert a sample dataset to GeoParquet and a raster to a COG.
  • Read both directly from cloud storage. No downloads.

Week 5 to 6: Ship a micro project

  • Pick one question, like “Which buildings are within 100 meters of rivers with above normal flow?”
  • Use SQL for analysis, Python to automate, and publish a simple web map.

Week 7 to 8: Integrate with your day job

  • Connect your modern stack to your existing Esri workflows.
  • Document a repeatable pipeline from raw data to a published layer.

This is enough to change how you work. You will feel the difference.

Pair Modern GIS with Esri workflows

In Spatial Lab we recently mapped a full integration between modern GIS tools and Esri. The idea is simple. Keep using what works, add modern pieces where they make you faster.

  • Store vector as GeoParquet and raster as COGs or Zarr.
  • Use a scalable engine to run spatial SQL and raster ops.
  • Keep services and layers in the tools your team uses. Publish clean.

This approach reduces duct tape across systems and cuts time to insight.

The two things people lack most

People usually get stuck for two reasons.

  1. A clear roadmap
    Without a path, it is easy to collect tutorials and never ship.
  2. Community support
    Questions and roadblocks are normal. Get feedback and accountability.

That is why I teach in public, share mini projects, and run the Spatial Lab community. The right nudge can save you weeks.

Your first project idea

If you need a place to start, try this:

  • Pick a public dataset you already know.
  • Convert it to GeoParquet or COG.
  • Answer one spatial question with SQL.
  • Publish a static map and a short write up.
  • Share your repo and notes.

This single loop pushes you through the full modern workflow.

Frequently asked questions

Do I need to learn a full web stack?
No. Focus on SQL, Python, and publishing a clean map. Add front end skills later if needed.

Is cloud native only for big teams?
No. Cloud native is a pattern. Use the same ideas on a laptop to build habits that scale.

If my company uses Esri, does any of this help?
Yes. Modern formats and engines reduce friction, even if you publish back into ArcGIS.

Which tool should I learn first?
SQL. It connects everything. Add Python next for orchestration.

Ready to move forward?

I will share more about my winding path this week, including wins and mistakes. In the meantime, if this is the challenge you are facing, tell me where you are stuck. I am happy to help you map the next two steps.

Reply and share your roadblock, or join us in Spatial Lab to go through this with a community.