What are the responsibilities and job description for the GIS Developer position at BGC Engineering?
About Us
BGC Engineering Inc. (BGC) is an international applied earth sciences professional services firm. We are proud of our talented team of over 700 employees, spanning the fields of Engineering, Geoscience, Software, Geomatics, Data Science, Accounting, Administration, Health & Safety, and Human Resources. Alongside our clients and industry partners, BGC works collaboratively as ‘One Team’, dedicated to solving the world’s most critical applied earth science challenges. BGC has Canadian offices located in Vancouver, Victoria, Kamloops, Kelowna, Calgary, Edmonton, Toronto, Ottawa, Fredericton, Halifax, and offices in Golden (Colorado), Santiago (Chile), Santo Domingo (Dominican Republic), and Brisbane (Australia).
Our flat management structure creates a culture of innovation, excellence, and transparency and a casual, dynamic, and inclusive work environment. BGC prides itself on offering training and mentoring opportunities to further our employees’ professional growth as well as social and wellness activities that contribute to the connection and wellbeing of our team.
We believe in One Team, Excellence, Curiosity, Common Sense, and Clarity.
The Role
BGC is seeking a GIS Developer to join our growing GIS team in Vancouver! The successful candidate will join a team of 15 GIS professionals with a range of skills and interests. They will have a strong geospatial programming background and experience with a variety of GIS technology and software. BGC’s GIS team utilizes both open-source (QGIS, Geopandas, Rasterio, Shapely, gdal, R) and proprietary (ESRI suite, Global Mapper) tools, determining on a case-by-case basis the most appropriate software/programming language/database technology for the job.
The team promotes a culture of continuous learning and strives to stay up to date on the many fields related to the work we do. We work on fascinating real-world problems that push us to be innovative and creative in how we gather insights from data; thinking not only of the task at hand but also of continuously laying the groundwork to increase our impact and effectiveness over time. If you are passionate about spatial data and love to write code, we would like to hear from you!
Responsibilities
- Contribute to exciting areas of growth for the GIS team, including open-source geospatial automation, web mapping applications, and more.
- Produce a variety of deliverables (maps, web maps, web services, automation results or routines, and more) for clients in a range of sectors (pipelines, mining, communities, transportation, clean energy).
- Develop and maintain geospatial libraries written in Python that enable BGC to perform sophisticated spatial operations on proprietary datasets.
- Construct Python/SQL workflows/pipelines for performing updates and making modifications to existing legacy ESRI systems.
- Develop dashboards or web apps that allow non-developer end users to perform CRUD operations on spatial data to maintain/update existing spatial datasets.
- Help optimize the performance of existing infrastructure via multiprocessing and other methods to facilitate big data analysis using spatial datasets.
- Develop and maintain REST APIs and other software applications to support the BGC Cambio web platform, both in the cloud and on-premises.
- Work on the performance optimization of the spatial components of BGC’s Cambio web platform – reduce latency and modify system design to increase performance when interacting with web-based visualizations and data transfer.
- Design applications that make use of interactive web maps to serve and display BGC spatial data, making use of various JavaScript Geospatial and visualization libraries.
Required Education, Experience & Competencies
- Undergraduate Degree in Geography/Computer Science or a related field.
- 3 years of experience programmatically working with geospatial data.
- Experience working with data in a cloud environment.
- Experience using version control systems.
- 2 years of experience working with ESRI JavaScript SDK and the React framework.
- 2 years of experience working with geospatial Python libraries such as GeoPandas, Shapely, ArcPy, and Rasterio.
- 2 years of experience working with front-end mapping and spatial visualization libraries such as Leaflet, Deck.GL, Mapbox, Plotly, or D3. Proficiency in at least two of these libraries is required.
- 2 years of experience working with SQL and SQL databases such as Microsoft SQL Server and PostgreSQL. Proficiency in writing complex SQL queries and managing database schemas in both of these databases is required.
- Passion for Geography and programming with an interest in process improvement, automation, and cross-discipline collaboration.
- 2 years of experience working with Parquet and Arrow data formats, with a strong emphasis on binary data transfer. Proficiency in copying data directly to the GPU via the Arrow memory format is required. Experience with Parquet-JS WASM bindings is a significant plus
- 2 years of experience working with ESRI Image Services and Feature Services. Proficiency in configuring, managing, and utilizing these services for spatial data analysis and visualization is required.
- 2 years of experience in CUDA or GPU program design. Proficiency in developing and optimizing parallel algorithms for GPU architectures is required.
- 2 years of experience in applying software design patterns. Proficiency in utilizing various design patterns to solve common software development problems and improve code maintainability and scalability is required.
- 3 years of experience working with Python and Python-based GIS tools.
- 3 years of experience in developing multithreading/multiprocessing applications. Emphasis on memory management between threads and multi-thread file access.
- 3 years of experience in processing InSAR data. Common tasks include working with data vendors, building pipelines for ingesting and post-processing of vendor provided data and validating vendor data.
- 2 years of experience working with raster aggregation technology such as ESRI mosaics and VRTs
- 2 years of experience working with LiDAR data, building LiDAR ingestion pipelines and writing/optimizing change detection software.
- 2 years of MicrosoftSQLServer managment
- 2 years of experience working with GDAL and GDAL based spatial software (writing GDAL scripts, interfacing with the GDAL C/C API and the Shapely C API.
- Exceptional communication skills in English, both written and verbal.
Company Benefits
BGC offers our employees the following:
- Our ‘One Team’ culture supporting health, wellness, safety, and diversity.
- Comprehensive benefits package that includes extended health coverage, dental care, and life insurance
- Maternity/Paternity leave top-ups.
- Professional development and mentoring opportunities.
- Flat management structure.
- Flexible workplace with office and home arrangements.
- Social and wellness activities.
- Casual and professional work environment.
Additional Information
- Company Address: 500-980 Howe Street, Vancouver BC, V6Z 0C8
- Employment Type: Permanent Full-time
- Salary Range: $36.00 - $42.00 CAD per hour
- Language of Work: English
Salary : $36 - $42