Stephen C. Sanders

|-- GIS & DATA ANALYSIS --|

BUFFALO, NEW YORK

About Me

Portrait picture of Stephen C. Sanders

I'm Stephen C. Sanders, and I am a research analyst currently working with demographics and market-level financial data. I am also an M.A. in Geography candidate at the University at Buffalo. Previously, I completed an A.S. in Geography and Certificate in Geospatial Information Science and Technology (both with Distinction) at Monroe Community College. I also completed a B.S. at SUNY Brockport, where I majored in Philosophy and minored in Anthropology.

I have 2 years of experience using geographic information systems, specifically ArcGIS Pro and QGIS. I have programmed in Python extensively in my work, and can use the ArcPy, Pandas, GeoPandas, and Plotly libraries. In the past, I worked as a web developer for four years, mainly using WordPress, HTML5/CSS3 (SCSS, Bootstrap), and Git. I also acted as a website administrator for multiple client websites.

The main activity in which I partake outside of GIS is genealogical research. I have been researching my family tree for around five years. I enjoy research involving New York State, veterans of the American Civil War, Gottschee, and Germany.

I am also an amateur philosopher (I have to put my philosophy degree to use somehow). I've written some stuff related to culture, society, and philosophical topics such as epistemology.

GIS Projects

MCC & City of Traverse City Centerline QA/QC Project

Spring 2023

A systematic review of the city's centerline (road) GIS layer in relation to other datasets (e.g., Right of Way, parcels, County road data, aerial imagery) to flag issues or areas that need additional clarification. The main issues that needed to be marked are those concerning spatial accuracy, topology, dangles/gaps, missing data, and attribution. Any issue or anomaly was marked up using the provided mark-up layers with an issue type and comment, or they are identified in other output layers that would necessitate looking at certain attribution values to determine which features have certain issues (e.g., dangles/gaps, address continuity issues, railroad intersection points). The final deliverables will help the city assess the QA/QC after it has been delivered and make appropriate data changes to the Centerline layer.


Included is a Python script called Intersect_By_Attribute_Merge.py. The script allows the user to intersect an input layer based on a specified field and attribution values with a polygon layer. An example usage is to figure out which City Local or Private roads intersect with the parcel data as a means of pinpointing issues pertaining to "Maintained By" attribution issues in the Centerline master layer. This is a fairly limited script that requires specifying the field (e.g., MAINTAS) and target attribution values of the field (e.g., City Local, Private) from the input layer (e.g., the Centerline layer) that are to be intersected in relation to a polygon layer (e.g., Parcels). If more than 1 attribution value is targeted, then the script will merge the resulting intersect layers into a single merge layer. You can then change the symbology of the merge layer to a graduated color scheme to visualize the features based on the targeted field values. This script may be converted into an ArcGIS Pro toolbox at some point in the future.


This was my capstone experience/internship through Monroe Community College in collaboration with the City of Traverse City, Michigan.

Tweet Keyword Mapper

April 2023 - Present

Search Twitter for Tweets containing a keyword, then write results to a CSV/XLSX file and/or map the results using ArcGIS Pro or GeoPandas. Tweet data can be imported from a CSV file/XLSX, with support for pulling data for multiple keywords in the same session. You can append your count results to shapefiles (ArcGIS Pro & GeoPandas) and feature classes within geodatabases (ArcGIS Pro). Written entirely in Python (Pandas/GeoPandas, ArcPy, Matplotlib).

Food Deserts & Oases - Mapping Food Insecurity in Buffalo, New York

Fall 2022

Explores food insecurity in the City of Buffalo based on each census tract's poverty level and walking distance proximity to a grocery or corner store. Includes a chloropleth map that showcases the relationship between the above variables. Used a color scheme generated by Paletton.com. Data obtained, analyzed, and displayed using QGIS, Google Sheets, Google Earth Pro, and Google Maps.

Determining Vegetation Changes on the Land Surrounding the Western Aral Sea

Fall 2022

Investigates any vegetation changes between 1989 and 2019 around the Western Aral Sea that have occurred due to the shrinkage of the Aral Sea, and how past and present restoration projects may have influenced these changes since they began. Also displays the extent of the shrinkage that the Aral Sea has undergone. Uses Landsat data from GLOVIS. Data analyzed in ArcGIS Pro.

The Digital Divide - Identifying Suitable Sites for New Public WiFi Locations in Rochester, NY

Spring 2022

Determines potential sites for new public WiFi locations in the City of Rochester based on which census tracts are most in need. Considers percentage of households without internet access, proximity to a preexisting free WiFi location, and population density of school-aged people. Data analyzed in ArcGIS Pro.

Can Publicly Accessible Areas Alleviate Increasing Homicide Rates?

Intersession 2022

Investigates if there is a correlation between homicide rate, median household income level, and the number of parks, playgrounds, and other publicly accessible areas within census tracts of the City of Rochester. Data analyzed using ArcGIS Pro and Google Sheets.

Other Projects

graph-data

Jan 2023 - Present

Command line program written in Python that collects precipitation data from user, then graphs the data using the Plotly library. More features are in the works.

pig-py

Jul 2022 - Present

Pig command line game written in Python. User plays against the computer in a game to 100. Keeps track of the number of turns.

numguess

Jun 2022 - Present

Simple command line number guessing game written in Python. Keeps track of and calculates a few statistics relevant to each session.

screenshot of Willow Ridge Kennels website

Willow Ridge Kennels Site

Feb 2020 - Feb 2022

Willow Ridge Kennels of New York is a bernedoodle breeding and training business located in Rochester, New York. I designed and developed a WordPress website for them using the Baesick WordPress theme, which uses HTML/SCSS and Bootstrap. The site is hosted by BlueHost, and uses Google Analytics.

screenshot of Baesick WordPress theme

Baesick WordPress Theme

Feb 2020 - Feb 2022

The Baesick WordPress theme is a responsive, customizable starter theme that is forked from wycks' WP Skeleton Theme. Originally only developed with support for the Skeleton CSS framework, I added support Bootstrap and completely overhauled the design to make it look more modern and stylish.

screenshot of Buffalo Firefighters website

Buffalo Firefighters Site

Jun 2017 - Sep 2017

The website for the Buffalo Firefighters (Local 282) was developed by me in mid-to-late-2017 in collaboration with e3communications, and is still used by them as their main source of communication with matters that concern the general public. The website was built using WordPress and is hosted by GoDaddy.

To see websites that I developed (or worked on in general) for previous employers, you can look at the links under the relevant experiences on my LinkedIn profile.