How to Build a GIS Portfolio That Actually Gets You Hired
Every GIS portfolio guide on the internet says the same thing: "include diverse projects," "showcase your skills," "start early." None of them answer the obvious next question: which skills? Based on what?
We pulled skill demand data from 1,366 GIS job listings in our database and designed five portfolio projects around what employers actually ask for. Each project targets a specific skill cluster, uses free data and free tools, and maps to a real salary band.
Our database is a sample, not an exhaustive census — treat the percentages as directional. But the patterns are clear, and the gap between what most portfolios demonstrate and what employers pay for is enormous:
That's the distance between a portfolio full of class assignments in ArcGIS and one that demonstrates Python, web mapping, and database skills. The five projects below walk you from the floor toward the ceiling. You don't need all five — two or three strong ones outperform six weak ones.
The 5 Projects
Automate a Spatial Equity Analysis with Python
Python is the #1 skill in GIS job listings — 26.7% of postings in our database. At the entry level, 22.1% want it. It's also the skill most entry-level candidates skip because their coursework never required it. A portfolio project that automates a real analysis in Python immediately separates you from the stack of "proficient in ArcGIS Pro" resumes.
What to build
A Python script that identifies underserved neighborhoods in a mid-sized US city. Download Census TIGER/Line boundaries and American Community Survey demographic data. Use GeoPandas to overlay census tracts with the locations of public services — parks, libraries, transit stops — from OpenStreetMap. Calculate a service accessibility score per tract. Identify the bottom 20% and visualize them on a choropleth map (a thematic map shaded by value — think election results maps).
The write-up matters more than the code. Don't just post a notebook. Write 300–500 words: what question you answered, what the data showed, one limitation, what you'd do with more time. "I found that tracts with median income below $35K have 40% fewer parks within a 15-minute walk" is ten times more interesting than "I used GeoPandas to perform a spatial join."
- Affiliate Python for Geospatial Data Analysis by Bonny McClain — walks through Census data and OSM integration. Chapters 5–8 are essentially this project's foundation.
- Free Spatial Thoughts Python Foundation — full course, no login wall.
- Free Automate the Boring Stuff — if you need Python fundamentals first.
Build an Interactive Web Map
Most hiring managers are more impressed by a Leaflet map you built from scratch than an ArcGIS Online dashboard you configured. One says "I can build tools." The other says "I can use tools." JavaScript + Python co-occurs in 77 job listings, and React jobs average $171K median.
What to build
An interactive web map with filters, popups, and responsive design. Pick a topic you care about — EPA Superfund sites, city crime data, transit accessibility, wildfire perimeters. Load GeoJSON, add layer toggles, build a search/filter sidebar, style it so a non-GIS person could use it.
The key: Host it live. Screenshots don't cut it. If a hiring manager can click one link and interact with a working web map, you've already passed the first screen. Write a short "about" section on the map itself explaining the data source and who it's for.
- Affiliate The Complete Course of Leaflet — Leaflet + Web GIS + GeoServer, project-based.
- Free Leaflet Quick Start Guide — official docs are solid.
- Free Mapbox GL JS docs — if you prefer Mapbox.
Remote Sensing Change Detection
There's a reason remote sensing projects get the most engagement when people share portfolios on Reddit: before/after satellite imagery is inherently compelling. A hiring manager scrolling through 50 applicant portfolios will stop on a vivid change detection map. GIS + Remote Sensing co-occurs in 47 job listings, and it's one of the few technical skills demanded consistently from entry through senior level.
What to build
A land cover change detection analysis over 5–10 years. Good subjects: urban sprawl, deforestation, wildfire burn scar recovery, agricultural conversion. Download Landsat or Sentinel-2 imagery from two time periods, classify land cover, compute NDVI (a vegetation index — higher values mean more greenery), and map the change.
The write-up matters most here. Why this location? What change did you detect? What's the real-world significance? What classification accuracy did you achieve? Remote sensing work without accuracy assessment is a red flag to anyone who does this professionally.
- Affiliate Machine Learning in GIS and Remote Sensing: 5 Courses in 1 — the change detection module maps directly to this project.
- Free EEFA Textbook — 55 chapters of cloud-based remote sensing, completely free. The best free resource available.
Design a Spatial Database with PostGIS
Python + SQL is the second most common skill pair in our data (99 jobs). And here's what most candidates miss: PostGIS skills skew heavily senior — 0% of entry-level listings mention it vs. 5.8% of senior. Skills like PostGIS, Docker, and AWS appear at 3–4x the rate in senior roles vs. entry. Demonstrating them early makes you look like someone already thinking at the next level.
What to build
A PostGIS database that answers geographic questions about a real place. Import OpenStreetMap data for a city (using osm2pgsql, a tool that loads OSM data into PostgreSQL), add Census demographics, and write spatial SQL queries: How many restaurants within 500m of each transit stop? Which neighborhoods have the highest green space to population ratio? What's the average property value within 1km of a Superfund site?
The queries are the portfolio piece. Include them annotated. Show results as tables and maps. Include a schema diagram. If you can articulate why a spatial database beats shapefiles-in-a-folder, you'll immediately stand out — most entry-level candidates have never touched a database.
- Affiliate Introduction to GIS Programming by Qiusheng Wu — covers spatial queries and Python geospatial workflows.
- Free Same book, open access — the author's free online version.
- Free PostGIS documentation — thorough and well-maintained.
End-to-End Field Data Collection Pipeline
The other four projects prove you can analyze, code, and build. This one proves you've actually been outside with a GPS unit drifting 5 meters under tree canopy, dealt with a survey form that crashes mid-collection, and cleaned data with duplicate entries and null fields.
Hiring managers complain about this gap more than any other: candidates who can code but can't design a data collection form, handle coordinate system issues, or produce a deliverable someone outside GIS would understand. End-to-end capability is rare.
What to build
Pick a local project. Map every public bench in a park system. Inventory street trees. Survey trail conditions. Document campus accessibility features. Design a collection form in KoBoToolbox or Survey123 (both free). Collect on your phone. Import, clean (you'll have jitter, duplicates, missing fields — that's the point), analyze, and produce a final map a non-GIS person could use.
Document the mess. Form design decisions, field challenges, data cleaning steps, the final product. Include field photos. This is the most "story-rich" project — a hiring manager reading about how you handled real-world data messiness learns more about your readiness than any technical demo. The final map should look polished — this is where cartography skills shine.
- Free KoBoToolbox docs — form design and deployment.
- Free QGIS documentation — processing and cartography.
- Affiliate Core GIS Analysis in QGIS — project-based, data acquisition through final map.
Which Project Should You Build First?
Switching Careers?
Your starting path based on prior experience
Each path gets you to a credible portfolio in 3–4 weeks, not months.
Presenting Your Work
GitHub is non-negotiable. Git appears in 5.7% of all GIS listings and 16.6% of software engineering listings. Clean repos with READMEs and commit history demonstrate version control — a skill that separates professionals from students. New to Git? Budget an afternoon with GitHub's quickstart.
Build a personal site. GitHub Pages (free) gives you a landing page for narrative project descriptions and embedded maps. When a hiring manager Googles your name, this should come up.
PDF portfolios are dead. Can't show interactive maps, can't link to repos, signals 2019. Exception: government agencies that specifically request PDF samples.
Three things matter more than platform:
- Accessible in one click — no logins, no downloads
- Each project has a write-up, not just output
- Updated in the last 6 months
For Career Changers
Your degree is in something else. Your coursework may not include GIS. Three strong portfolio projects prove you can do the work regardless. Your starting point depends on what you already know — see the flowchart above.
The key is framing: don't hide your background, leverage it. "I brought analytical rigor from data science and added the spatial dimension." "I knew the environmental questions — I learned the geospatial tools to answer them." "I can build the tools GIS teams need, not just use them." For more: How to Break Into GIS With No Experience.
For Professors
If your capstone is "make a map and write a report," your students graduate with the same portfolio piece as everyone else. Any of these five projects could replace a generic final — students leave with work backed by job market data, built on free tools they keep after graduation. Projects 1 and 4 are strongest as classroom assignments: clear data sources, defined scope, Python and spatial SQL.
For Employers
A resume says "Python." A portfolio shows whether that Python produces clean, documented analysis or uncommented spaghetti.
What to look for: Code quality over complexity. Write-ups that explain decisions. Real data, real problems (not class assignments). Recent commits. Red flags: No README. Only screenshots. Identical projects across applicants from the same program.
Ask for portfolio links in job postings. Review before the phone screen. You'll cut bad-hire rates and shorten interviews.
Getting Started
Start with Project 1 — it targets the #1 skill, uses free data, and takes a weekend if you know Python.
Then add Project 2 or 4 depending on your direction. Two projects gives you a portfolio most entry-level candidates don't have.
Only 10.2% of GIS positions are entry-level. The competition is real. But the bar is lower than you think: "show me you solved a problem with real data and wrote about it clearly."
Five projects. All free data. All free tools.
Need more inspiration? We put together 50+ portfolio project ideas across 8 domains — each with free datasets, skill tags, and difficulty ratings.