Previous Job
PostGIS Consultant
Ref No.: 18-02598
Location: Washington, District of Columbia
Position Type:Contract
Start Date: 03/13/2018
My direct client is hiring a 100% REMOTE PostGIS Consultant for a 3+ month project!  Ideal candidate must be a PostGIS Expert with PHP experience.
Job Title: PostGIs Consultant 
Location: 100% Remote (Based in DC) 
Duration: ASAP to beginning of July (3+ month) 
Rate: DOE 
Interview Process: Phone interview asap then potential offer!
Must be US Citizen 
Firecast is a web-tool designed to help land managers prevent the destructive effects of fires on natural ecosystems and human well-being. Firecast empowers decision-makers with timely information by packaging and delivering fire danger forecasting and near real-time (NRT) detection of fires and forest disturbances to subscribers through a suite of customized products. The suite of NRT products include email alerts, a mobile app, a web map, and an analytics dashboard to generate custom graphs and reports. Users can tailor the products to very localized areas of interest and their language of choice.
Firecast is a PHP/Python application framework that uses an ArcGIS server on the back end to deliver cartographic assets. There are several hierarchies of polygons, plus rasters, in the ArcGIS catalogue, and these are used in conjunction with point data which is imported automatically from LANCE-FIRMS servers and standalone data files. Firecast allows users to create subscriptions that query subsets of this data on region, time, and layer attributes such as name or raster data type. These subscriptions are generated by the system and use the ArcMap REST endpoint to query data results sets, as well as images via the ArcGIS Printing Service.
My client is doing an evaluation to migrate from ESRI to PostGIS to see if we could increase the speed on the rest services and web mapping. The idea is to have an opensource stack with PostGIS hosted at AWS using RDS, the full technology stack is TBD.
The actual system has a couple of SQL tables:
  1. Kitchen Sink, a table with all polygons and boundaries (I.e. administrative boundaries, protected areas, indigenous areas, Key Biodiversity areas)
  2. A SQL database with all fire points (both VIIRS and MODIS). The SQL stores fire locations pulled from NASA FIRMS. Data are text files with latitude, longitude, date, time, instrument, and a measure confidence.
  3. A SQL database that store forest disturbance points (QUICC) for Peru and Madagascar. The data base includes point locations, date, and confidence.
  4. Future table will ingest Landsat 30m active fire, Sentinel active fire, and harmonized geostationary active fire data (I.e. GOES) (currently in development by the University of Maryland).
General requirements
  1. Ingest points into PostGIS, such as:
    1. MODIS
    2. VIIRS
    3. QUICC
    4. Landsat (future)
    5. Sentinel (future)
    6. Geostationary (future)
  2. Ingest raster into PostGIS, such as:
    1. Fire Danger (risk) (webmap service from WRI
    2. Deforestation
    3. Forest Cover
    4. Vegetation Cover
    5. Peat lands (Indonesia)
    6. Days since last rainfall (webmap service from WRI)
  3. Store polygons in PostGIS (aka Kitchen Sink) for future point-in-polygon analysis
  4. Produce a webmap that can display points and raster based on day/month/year, (technology stack TBD) like this example - 
  5. Produce webmap services of all data layers
  6.  Interactive webmap tools
    1. Fire points can be thresholded by confidence
    2. interface for free digitizing and export of points and polygons
    3. Turn on-off size of pixel (I.e. for any point be able to show radius of fire location. MODIS 1km, VIIRS 375)
    4. Custom shapefile queries: users can upload own polygons for subset
    5. Identify polygon name on the webmap with a click
    6. Allow data download through web map interface
    7. Distance measurement tool
  7. Have REST services that take Kitchen Sink ID array (row ID) and date as criteria, and return:
    1. Points in that array (point-in-polygon)
    2. Raster pixel in that array (point-in-raster)
    3. Generated image with point overlay (PNG/JPG)
    4. KML file of point data
REST Services Requirements
The system needs few rest services to talk to the subscription module.
ID Parameters Result Process
  • Array of points
  • Array of polygons IDs
  • Date
List of polygons from Kitchen Sink Query the Kitchen Sink for polygons that match the points (point in polygons) and date and array of polygons ID
  • Array of points
  • Date
  • Background raster
Image (PNG or JPG) Query the Kitchen Sink for polygons that match the points (point in polygons) and date. Produce a image with the raster background.
  • Polygon ID (optional)
List all polygons from Kitchen Sink  
  • Array of points
  • Array of polygons IDs
  • Date
KML file Query the Kitchen Sink for polygons that match the points (point in polygons) and date and array of polygons ID

If qualified and interested please send a current copy of your resume to Kaylyn at