Andrew Vitale

Malta, NY · vitale232@gmail.com

I am experienced in Transportation and Environmental Analysis with a special focus on Geographic Information Systems (GIS). Capable with numerous programming languages and web frameworks, seeking the right professional opportunity to combine these passions.


Projects



Timeline Tamer is a web application that integrates with the Twitter API. Once a user registers for Timeline Tamer, they can sign in and link their account with Twitter. The system will then download all of your most recent Tweets (Twitter limits this to 3200 Tweet objects) and ingest them into a PostgreSQL database. The database enables full text search on a user's content, so they can easily sift through all of their Tweets. The content is presented in a rich, interactive table, that allows for easy deleting of an unlimited number of Tweets from both the Twitter and Timeline Tamer platforms.


Timeline Tamer also has an advanced feature that we call "Hot Topics". Hot Topics is a back end algorithm that leverages database technology to quantify the rudeness of a Tweet. If a Tweet uses any curse words, it is assigned a score and rendered in the Hot Topics section of the site, which can be accessed by clicking on the curse-face emoji. This feature currently only supports the English language, particularly the North American dialect.


Twitter's API is rate limited. Timeline Tamer has advanced back end logic that accounts for the Twitter API rate limit. If Timeline Tamer's services have exceeded the rate limit, user requests are added to a queue and retried every 15 minutes until the request succeeds.


Technologies
  • Angular (CLI)
  • Angular Material
  • Django
  • Django Rest Framework
  • PostgreSQL
  • Docker
  • Amazon Web Services





The Inspection Planner Application is still under construction. It is a GIS web application intended to assist a hypothetical structures inspection engineer in planning their work. The application provides a common interface in the form of a "slippy map", which is the format used by popular technologies like Google Maps. As the user pans around on a basemap of New York State, the New York State Department of Transportation's publicly availbable bridge GIS dataset is served as a GeoJSON feature class for the current viewing extent. This provides performant map exploration of a large point feature class (almost 20k features).


Inspection Planner also integrates with a PostGIS/PgRouting routable roadway network that is sourced from the OpenStreetMap and osm2pgrouting projects. There is a stored database procedure that accepts a street address and maximum drive time as inputs, and outputs a polygon representing the geographic extent which can be reached by automobile in the input time. It also selects all of the bridges within the polygon, and presents them to the user sorted by their inspection date. As this processing is taking place on an AWS RDS t2.micro PostgreSQL instance which is yet to be performance-optimized, this procedure can take a bit of time to complete. The operation is conducted asynchronously, such that the application's front end remains responsive while the processing completes. Recent queries and their results are cached in the database so that subsequent, identical queries can be conducted in a manner that provides a reasonable user experience. The application also supports a simple place/address search, and will snap the map to the input location.


TECHNICAL NOTE: Loading the OpenStreetMap data into a PostGIS database is easily accomplished using osm2pgrouting. However, the tool can be memory intensive on large geographic extents. To load most of New York State into the database, the tool was consuming all of the memory (8GB) and swap (2GB) on my laptop. You can workaround this limitation by containerizing your workflow with Docker and running the image on a cloud service. To get started with AWS ECS Fargate, take a loot at osm2pgrouting-ecs.


Technologies
  • Angular (CLI)
  • Angular Material
  • Leaflet.js (ngx-leaflet)
  • Django
  • GeoDjango
  • Django Rest Framework
  • Django Rest Framework GIS
  • SciPy
  • Numpy
  • Shapely
  • PostgreSQL
  • PostGIS
  • PgRouting
  • Docker
  • Amazon Web Services
  • OpenStreetMap





OpenStreetMap (OSM) is a modern web mapping dataset that is similar in characteristics to more popular mapping products, such as Google Maps and Bing Maps. There are some major differences between OSM and the commodotized mapping datasets. Namely, OSM is open in that anyone can download or edit the data. There is a large community of active map editors, so the OpenStreetMap data changes every day.


OSM provides augmented diff files, which represent incremental changes to the planet.osm dataset on which OSM is built. OpenStreetMap Diff Viewer is an automated software that downloads the latest OSM Diff files every day. The files are ingested into a geospatial database, where they are used to select the linework from a DOT dataset in the immediate vicinity of the OSM edit. Every diff gets its own map. A user can then quickly browse through the day's OSM updates and compare those updates to the DOT dataset. This will help identify roadways that are missing from the DOT dataset and recently completed construction projects that have resulted in a roadway realignment.


This project is not hosted on the web. Rather, the automated Django management command outputs a .zip archive for distribution. To use the archive, you simply unzip the directory and open the index.html file in your favoirte browser. To give it a try, go to the project's GitHub repository and download the most recent .zip archive from the dist directory.


Technologies
  • Bootstrap
  • Leaflet.js
  • Django
  • GeoDjango
  • PostgreSQL
  • PostGIS
  • OpenStreetMap
  • Docker

Skills

Programming Languages & Tools
Workflow

Education

University of Nevada, Reno

Masters of Science, Geography

Physical Geography - Thesis focused on Topoclimate and Sensor Networks

Summa Cum Laude

Outstanding Graduate Student Award Recipient, May 2015

Member of Geography Honors Society

Graduated May 2015

University at Albany (SUNY)

Bachelors of Science, Environmental Science

Summa Cum Laude

Member of Presidential Honor Society

Graduated May 2010

Experience

Transportation Analyst

New York State Department of Transportation

Working to bring better geospatial technologies to the DOT. Actively plan, maintain, and deploy an Esri ArcGIS Roads and Highways Linear Referencing System. Contribute as apart of a team of DOT employees and external contractors to deploy web applications. Conduct programmatic analysis of internal and external data, internal workflows and processes, and communicate technical concepts to stake holders. Continue to update and distribute the roadway inventory as described in the GIS Analyst position below.

October 2017 - Present

GIS Analyst

Software People (Contracted to NYSDOT)

Analyze, maintain, edit, and distribute roadway inventory information of New York State's 113k+ centerline miles of roadway. Use GIS technologies to track and validate changes to the inventory. Assist in completion of the annual Local Highway Inventory and HPMS Reporting.

December 2016 – October 2017

Data Analyst/Scientist

Desert Research Institute (DRI)

Contribute to the development and maintenance of an evapotranspiration model implementation. The codebase implements the METRIC model of ET, and is written in Python. Input datasets included gridded, remotely-sensed data products from earth sensing systems such as Landsat and MODIS. The system was implemented using Python and open source GIS solutions, and operated on distributed systems.

May 2014 – September 2014
January 2015 – March 2016

Teaching Assistant

University of Nevada, Reno

Helped ensure quality learning outcomes for undergraduate and graduate students in the Department of Geography. Assist professors in day-to-day operations, and often independently lead students through lab-based analysis exercises. Courses taught include Remote Sensing and Geographic Information Systems (GIS).

September 2013 – December 2014

Research Assistant

University of Nevada, Reno

Work collaboratively and independently to lead an original research project that became my thesis project. Duties included field work planning, testing different sensor types, analyses to determine sampling methods and distribution, field work in a remote portion of the Great Basin National Park, and supervising volunteers that graciously contributed their time to the project. Many of these duties required self-learning of technical topics and tools (e.g. Python, R, multivariate regression analysis, temperature sensor UV shielding).

September 2013 – December 2014

Environmental Scientist

AECOM

Functioned as a field scientist, focused on ground water, surface water, and air quality monitoring and restoration. Conducted general site maintenance, assisted technical staff in repairs of environmental remediation systems, assisted in data entry and reporting, and contribute to site investigations.

November 2011 – June 2012

Pacific Crest Trail Crew Member

Student Conservation Association (SCA)

Work collaboratively to plan and complete manual labor in remote regions of Southern California using hand tools and mule trains. Tasks included maintenance of tread, reinforcing trail bed, building structures, steps, and walkways with native materials such as crumbly granite (yep, that's the technical term).

February 2011 – April 2011

Habitat Restoration Intern, Grand Canyon National Park

Student Conservation Association (SCA)

Focused on supervising and collaborating with volunteer groups that work with the Grand Canyon National Park vegetation team. Conduct manual labor to mitigate the effects of new construction in the South Rim Village and Desert View portions of the park. Collect field data in the backcountry and developed areas of the park to assist land managers' efforts at long term monitoring. Eradicate invasive species and nurture native vegetation. Backpacked as much as possible!

June 2010 – December 2010

Interests

I enjoy spending as much of my free time outdoors as possible. My most passionate pursuit of outdoor recreation focuses on the joy that is mountain biking. I also enjoy hiking, kayaking, and watching my dog frolic through the forest. Come winter, you can often find me on the ski slopes, snow shoeing, or by the fire.

When I'm indoors, I enjoy watching the Steelers win football games, playing video games, listening to the world's best band (Umphrey's McGee), and listening to podcasts. I also spend much of my free time learning about new technologies and building web applications.