IOT Platform Solution Designer - High level project description and requirement:
Build a reusable IOT platform for wearables and health sensor which constantly feeds and retrieves the data from this platform. It also need to manage the device (e.g. security, registration, feed sync). This platform should cater for any common and industry standard protocol like MQQT, AMPQ, Zigbee, CoAp, Wifi, Blue tooth and platform will connect both IOT Gateways or direct devices based on demand.
It should be hosted in the industry leading platform like AWS or Azure and follows the scale-out architecture.
High level flow
The data comes from devices get aggregated through the IOT aggregator at device end the IOT gateway should read the aggregator’s data via API and the same will authenticated based on the device id or gateway id.
The data ingestion framework should connect through a API or URL and load the data into IOT database (scale out architecture) and it will store the data and aggregate for any reporting or dashboard needs.
The data to be kept in the IOT database should be accessed through UI/UX layer via API and reporting Application, Analytical apps.
Dedicated web pages or application will be built to monitor the device connection and platform’s resource usage (e.g. Number of devices, concurrent access from different devices, Sensor’s health status, CPU, RAM and other hardware metrics of the platform based on user’s session).
Roles and Responsibilities:
a. Setup the IOT platform in cloud provider like AWS and configure the amazon resources required for the project
b. Develop data ingestion framework using Java, Spring Boot, Spring REST
c. Store the data in Amazon cloud (e.g Postgres/Mysql instance) and build a data retrieval API
d. Authentication of mobile devices through Oauth2 or encrypt the data communication through REST (Data in REST)
• Hands-on building IOT solution for wearables like fitband.
• Aware of Lambda architecture and NOSQL concepts and modeling
• Should have a good knowledge on data pipelining (e.g. Spark/Storm) in both structured and unstructured data environments.
• Design optimal framework and architecture for capturing and analyzing data.
• Aware of basic statistical models/machine learning algorithms to solve client specific business problems.
• Extensive hands on UNIX/LINUX environment.
• Good hands on cloud environment (AWS, AWS Console, AWS IOT Gateway, Redshift, Rule Engine, SDK, Node JS Proxy, Kinesis Streams, AWS Lambda functions, S3 bucket)
• Experience on any of the hadoop distribution – Cloudera, Hortonworks, MapR etc. along with Pig, Hive/Hawq, Sqoop, Oozie, Rabbit MQ, Kafka, Spark/Storm etc.
• Experience on any one of the NoSQL databases – Hbase, Cassandra, Neo4j, MongoDB etc.
• Strong experience working with relational databases and SQL.
• Awareness of AWS DEVOPS tools are desired.
• Should have basic knowledge of PaaS model and Cloud native application architecture and its components.
• Good hands-on with IOT Hub integration (e.g. Raspberry PI, Audrino, Edision) through Python/Java
• Nice to have skills on Docker, GO and Kubernetes or MesOS.