Mapping Jobs At National Grid
Interview take home assignment
National Grid is a large gas and electric utility company in the US Northeast and in the UK. To maintain our core business, the National Grid field force employees need to completedaily jobsthat connect, maintain, and repair infrastructure that bring energy into the homes and businesses in the community.
Assignment:Can you create a React application that makes the visibility of these jobs easier? Please use React + Redux and Google Maps to meet the requirements below. You will also need to create a simple backend via express
Requirements:
- The application needs to pull job data from a data source. A simple API has been created inserver.js. It uses express and requires to be run separately via node server.js. Create a GET request to serve data.json to the React app.
- Users need to see the jobs placed on a map.
- Job map markers should indicate theirjob priority. High priority jobs should be red, Medium should be orange, and low should be yellow
- They need to be able to filter the jobs seen on the map with two different filters:job priority,job status. i.e. if the job priority filter is set to high, only high priority jobs will be shown on the map. Filters should also have an All or blank setting, to not filter on the parameter.
Additional ideas:
- Can you make a filter that uses the required date? It will be useful to see all jobs that need to be completed before a certain date
- Can you build a feature that lets the user change the status of a job?
Instructions:Use the providedjob-mapper-assignmentproject as a starting point*. Complete the assignment with Redux (and Thunk if you would like). When you are done, compress the project folder as a zip and send back. Put your name in the comments of the App.js file.
You will need to runnpm installto run the react app, andnode server.jsto run the api server.
*You are allowed to change parts of the given structure, but you will be asked to explain your redesign. Please take any design liberties you would like, but it should have the basic layout of what is shown below.
Try to work only work 2-4 hours on this. You should still submit your work even if it is incomplete. Have fun!