We have some Bluetooth Low Energy based sensors and an AWS GreenGrass enabled gateway. We have completed the gateway firmware to achieve the following:
- Send a scan command from AWS IoT console to initiate scan on the gateway and receive scan result as JSON
- Send a connect command from AWS IoT console to ask the gateway to establish connection with a nearby sensor and send data back to AWS IoT console periodically as JSON
- Send a disconnect command from AWS IoT console to ask the gateway to terminate connection with a connected sensor
Now, we are looking for a full stack developer to take data from AWS IoT console and create a web application for data presentation.
Tasks will include:
- Frontend application development including the following tabs:
o Dashboard: user can create dashboards and add gadgets to it. Gadgets should be movable, resizable, and linked to a connected sensor to display sensor reading. Gadget types include analog gage of real time sensor reading, table of historical sensor readings, chart of historical sensor readings, table of real time readings of multiple sensors, etc.
o Gateway: user can register a gateway, remove a gateway and update firmware (lambda function) on the gateway.
o Device: user can scan for sensors near the gateway, select a sensor to connect, see sensor readings and disconnect a sensor.
o Service: user can define actions based on different events. Under the scope of this project, we only consider 2 events: sensor reading falls out of tolerance defined by user and sensor disconnection, and 2 actions: send email notification and send sms notification.
- Backend development tasks:
o Create online database to manage user, gateway and device (sensor)
o Create APIs to connect frontend application with AWS services, for example, a scan command should be sent to IoT Core when user presses scan button in the frontend, so that IoT Core can forward the same command to the gateway to initiate scan action as we set up in the gateway firmware
o Automate greengrass group creation and configuration when user registers a gateway, including creating greengrass group in IoT Core, creating certificate, attaching policy, setting up lambda and subscription, finishing deployment, etc
o Handle other functions for frontend like creating reading out of tolerance notification
- User management:
o Create standard user signup, login, password reset, etc
o Use AWS Cognito for user management, authentication and authorization
o Create two levels of user roles:
Admin can manage gateways, sensors, create dashboard, set up services and is responsible for subscription. Admin can share a dashboard and set up notification for a viewer
Viewer can only view dashboard shared by admin and receive notification enabled by admin.
o Add subscription to user access. There should be 7-day free trial, monthly payment and yearly payment options for subscriptions
- Good knowledge of AWS services
- Understanding of IoT work flow
- Serverless structure with NodeJS or Python for Lambda and React for frontend (preferable), or MERN stack or Django with Python
- Project to be finished in 1 month
If you are interested, please create a proposal file to include:
- Tools to be used (AWS services, front-end language/framework, back-end language/framework, database, etc)
- Briefly explain reason for each selected tool
- Tools cost (must include)
- Total development cost and hours (must include)
- Lead time (must include)
- Some basic information about yourself
1) Link 3-5 of your best related work samples, a demo account or demo video would be helpful
2) How long have you been working in software development
3) Are you working individually or under a company
4) List your strong skills in software development
5) Rate your English level from 0 to 10
6) Will you be available for weekly online audio/video meeting
7) Do you have development experience with other platforms
21 freelancers are bidding on average $16/hour for this job
Hello I've checked your project description with care. I have rich experience touse & apply the AWS Rest API service. I've devloped the Bitrex API service Do you have AWS dev account?