react, OSM, openLayer, typescript senior 4 geo visualisation #3
Betalt ved levering
We look for react, openLayer, typescript senior expert with openstreetmap (OSM) and geotools in depth knowledge on how to implement a visualization of GPS points as polygones to visualize on a map. Beside of that polygone we want to visualize given GPS points on same map
Prefered technologies: typescript, react, OSM, openLayer
You will get a csv with polygone and additional GPS points
you will also get the java classes for the polygone and GPS points as reference implementation
you will require to define mutiple GPS polygones against you can test your given data. Preferably this polygones are also provided as a Excel list
Your job will be to implement the logic UI for displaying. Also to explain us some basics behind the coding
Your background is:
- multiple years of experience with GIS / geo spacial data in typescript /react
- multiple years of experience with typescript & react
Assuming following existing classes, which you have to recommend from your suggested libs and apis
- GpsPolygone (defines a arbitrary geo fence in GPS coordinates)
- GpsPosition (any position in GPS coordinate)
Implement a of a OSM map with zoom functionality (default of map)
- requires to have zoom option to be able to zoom to all levels (continent view, down to the size of viewing housegarden sizes)
Implement a visualization of the polygone and points on openstreetmap map.
- your implementation class provides methods
- void visualizePolygone(GpsPolygone)
- void visualizePolygoneAndPoints(GpsPolygone, List<GpsPosition>, Color polygone, boolean fillPolygone, Color, points)
we require this functions too
- implement an option to display a list of polygones on top of the map
- implement on option to jump to a specific GPSpoint with a zoom level
- implement on option to jump to a specific polygone GPScenter with a zoom level
- you get the above data via a REST api, but you will require to mock it on the beginning until the backend is done
Assume you have a map shown, on top of this map you add a layer with a grid. The grid size is configurable, and the grid can be rotated. The user shall now be able to select grid elements to mark a specific landmark (like parking lots)
- implement us a option to select areas on a map.
- the selection shall be of the size of about 1meter x 1meter
- the selection shall be able to increase the selection sizes up to 100m x 100m in different steps (1, 2, 5, 10, 25, 50, 100)
- the selection can be grouped to one object e.g. "parking lot 001"
- you provide us the shape of this parking lot to the backend via a rest api json call
more milestones to be awarded based on your expertise
- the gps positions and polygones are predefined under src/test/resources as xlsx, so it can be easily modified by non tech guys for more corner cases
- require a npm/[login to view URL] with fixed (stable) versions
- a runner/packager like gulp/grunt
- a dependency management if required beside [login to view URL] for frontend components like bower
If you are a good fit, you are open to get more tasks about implementing solutions fully on your own (e.g. with your team)
will not be disclosed, place your best bid to get considered
What is next?
We will share you a NDA and afterwards a paid test task.
- you estimate in a WBS (optimistic, expected, pessimistic, where optimistic < expected < pessimistic) after getting the task
- we discuss about clearances and effort
- we mutually agree to effort
- we assign you the task after mutually agreed
- you implement & delivery
- we pay
(basically the rules of freelancer)
Closed book vs open book?
We work only on open book.
Closed book means you are unwilling to define a WBS for the work and you add only a price tag to the task.
We are sorry we will not hire you in such a case!
- in our on premise git (access will be granted to you)
- full sources
- npm ([login to view URL])
- evtl. bower (plz clarify if required)
- evtl. grunt/gulp/... (plz clarify if required)
- typescript only
- providing .editorconfig for common coding style
- clean code
- best practices in the given topics
- libs, need prior confirm and we prefer to use mostly latest stable versions
- your code is working on our end and on our CI/CD
- provide built environment with test execution
- used libs and apis are on latest stable version
- docker compose setup to run locally on your machine and (we will use it on CI/CD, if you are able to handle we place you an addition milestone for it)
Projekt ID: #37215918