Available Jobs
Software Developer
Position Overview
We are seeking a skilled Software Developer with experience in Python, Dash, API integration, and geospatial data processing. The ideal candidate will have extensive experience in developing web applications using Plotly Dash and working with Leaflet.js (or similar frameworks), GDAL, and geospatial data manipulation tools. This role requires expertise in handling raster and vector geospatial data, integrating third-party APIs, and optimizing data visualization for mapping applications.
Key Responsibilities
Dash Web Application Development
- Develop and maintain interactive geospatial applications using Plotly Dash, Flask, and Python.
- Implement custom geospatial visualizations and interactive features using Leaflet.js, OpenLayers, or CesiumJS.
- Optimize UI/UX for map-based applications, ensuring responsive and high-performance web apps.
- Develop data pipelines and backend logic to support real-time geospatial data visualization.
Geospatial Data Processing & Manipulation
- Handle and process raster (GeoTIFF, NetCDF) and vector (Shapefiles, GeoJSON, PostGIS) data.
- Use GDAL, Fiona, Rasterio, Geopandas, Shapely, and other Python geospatial libraries to manipulate and analyze geospatial datasets.
- Implement coordinate transformations, spatial filtering, and geospatial calculations as needed.
- Optimize large-scale geospatial data handling for efficient rendering and API responses.
API Integration & Data Management
- Integrate and manage external APIs (e.g., OpenWeather, Windy, Google Maps, Mapbox, NOAA, AWS S3) for real-time geospatial data acquisition.
- Develop custom RESTful APIs for interacting with geospatial databases and applications.
- Implement authentication, authorization, and security best practices for API access.
Performance Optimization & Deployment
- Optimize the performance of Dash applications using caching, asynchronous tasks, and database indexing.
- Deploy applications on cloud platforms (AWS, Azure, GCP) or on-premises servers using Docker and CI/CD pipelines.
- Implement real-time data updates and WebSocket-based communication if required.
- Troubleshoot and debug performance bottlenecks in web applications and geospatial processing.
Qualifications & Experience
- Proficiency in Python with experience in Dash, Flask, and FastAPI.
- Strong experience with geospatial data handling using GDAL, Rasterio, Fiona, Geopandas, Shapely, and PostGIS.
- Extensive knowledge of Leaflet.js, OpenLayers, or other geospatial web mapping libraries.
- Familiarity with API integration and RESTful services.
- Experience with spatial databases (PostGIS, SQLite, GeoPackage, etc.).
- Ability to work with large geospatial datasets and optimize rendering performance.
- Experience deploying applications on AWS, Azure, or GCP using Docker, Kubernetes, or CI/CD pipelines.
- Strong debugging and problem-solving skills.
Preferred Skills & Bonus Experience
- Experience with CesiumJS or Three.js for 3D geospatial visualization.
- Knowledge of Machine Learning for geospatial applications (e.g., Scikit-learn, TensorFlow, PyTorch for geospatial modeling).
- Familiarity with real-time data streaming (Kafka, WebSockets, MQTT, etc.).
- Experience with GeoServer, Mapbox, or ESRI ArcGIS API for custom map layers.
- Background in remote sensing, bathymetric data, or hydrographic surveys is a plus.
Why Join Us?
- Work on cutting-edge geospatial applications and real-time mapping solutions.
- Competitive salary and benefits in an innovative, growing team.
- Opportunity to work with high-resolution satellite, LiDAR, and bathymetric data.
- Freedom to experiment with new geospatial technologies and optimize workflows.
- Flexible work environment with remote work options (if applicable).