Software Engineer (GIS)
Job Description
Development and maintenance of geospatial web application.
Job Description
- Maintain and enhance the application which includes upgrading of the libraries, application and servers components, performance profiling and tuning of the server-side codebase, GIS map services and SQL statements.
- Generate unit tests and end-to-end test scripts to ensure nothing breaks upon publishing new features and maintain current automated scripts in Jenkins.
- Generate splunk reports and performance analysis on the usages of the map services.
- Troubleshoot, identify, solve issues and develop test cases to prevent similar issues.
- Monitor the results of automated correctness and performance test to ensure a stable and working application.
- Design and develop the application according to the specifications provided.
- Perform design, programming, integration, system testing, assist users in User Acceptance Test (UAT).
- Perform iterative prototyping to introduce and enhance new features to the core system.
Skillset a) At least 3 years of good working knowledge in the following areas: · Web Application Client-side Technologies (JavaScript ES5/6, ReactJS, Redux, jQuery, HTML5/CSS, AJAX/JSON, NPM) · Web Application Server-side Technologies (Asp.NET Core, Aps.NEt, MVC, C#) · Web GIS Technologies (ArcGIS JavaScript API v4.5, ArcGIS Server REST API, GeoServer, PostGIS) . Database technologies (e.g. Postgresql, MS SQL, Oracle); and . Code version control system (Git). b) Good communication skills and the ability to: · Understand and communicate in English, in speech and writing. · Work with other members in a dynamic and fast-moving team. · Work independently with minimum supervision. · Work on own initiative and adhere to deadlines.
Added advantage with the following: · Development using Microsoft Azure Cloud and/or AWS Cloud. · Open-source technologies such as NodeJS, Leaflet, GeoServer, PostgresSQL, PostGIS. · Knowledge of geospatial and mapping concepts such as spatial analysis and map projections with ESRI technologies. · Experience with geoprocessing using Python scripts and ETL tools such as FME. · Experience in agile development and DevOps processes.