Skills Needed

GeoSight is a complex web-based business intelligence platform that requires a diverse set of skills for effective development and maintenance. Here are some of the key skills needed:

  • Proficiency in web development technologies (HTML, CSS, JavaScript)
  • Experience with front-end frameworks (e.g., React, Angular, Vue.js) - we use ReactJS in this project.
  • Knowledge of back-end technologies (e.g., Node.js, Python, Ruby) - we use Python and NodeJS in this project.
  • Familiarity with database management systems (e.g., PostgreSQL, MongoDB) - we use PostgreSQL in this project.
  • Understanding of RESTful APIs and microservices architecture - we use the Django Rest Framework for our APIs.
  • Experience with cloud platforms (e.g., AWS, Azure, Google Cloud) - this is only needed if you want to deploy GeoSight on the cloud.
  • Knowledge of geospatial technologies (e.g., GIS, mapping libraries) - in particular we use MapLibre, Vector Tiles, OGC services, GeoJSON and PostGIS.
  • Familiarity with data visualization tools and libraries (e.g., D3.js, Tableau) - these will inspire you to create better visualizations in GeoSight.
  • Strong problem-solving skills and attention to detail - we want to maintain a high quality codebase.
  • Ability to work collaboratively in a team environment - we are a small team and we want to work together to make GeoSight better.
  • Good understanding of version control systems (e.g., Git) - we use GitHub for version control.
  • Use of GPG for signing commits and tags - this is a requirement for all contributors to GeoSight.
  • Use of SSH for secure access to the repository - this is a requirement for all contributors to GeoSight.
  • Basic knowledge of Linux command line - this is useful for development and deployment.
  • Docker skills - we use Docker for containerization and deployment.
flowchart TD
    %% Key skills with emphasis
    K1["Docker"]:::key
    K2["PostgreSQL"]:::key
    K3["Django Rest Framework"]:::key
    K4["MapLibre"]:::key

    %% Other skills
    S1["Web development (HTML, CSS, JS)"]:::cloud
    S2["ReactJS"]:::cloud
    S3["NodeJS"]:::cloud
    S4["Cloud platforms"]:::cloud
    S5["Vector Tiles"]:::cloud
    S6["OGC services"]:::cloud
    S7["GeoJSON"]:::cloud
    S8["PostGIS"]:::cloud
    S9["Data visualization"]:::cloud
    S10["Problem-solving"]:::cloud
    S11["Teamwork"]:::cloud
    S12["GitHub"]:::cloud

    %% Arrange in 5 rows (no links)
    subgraph Row1[ ]
        direction LR
        K1
        S1
        S2
        K2
        S3
    end
    subgraph Row2[ ]
        direction LR
        S4
        K3
        S5
        S6
        S7
    end
    subgraph Row3[ ]
        direction LR
        S8
        S9
        K4
        S10
        S11
    end
    subgraph Row4[ ]
        direction LR
        S12
        S13
    end

    classDef key fill:#ffe082,stroke:#f57c00,stroke-width:3px;
    classDef cloud fill:#e0f7fa,stroke:#00796b,stroke-width:2px;