Technologies Used
- OpenCV
- PyTorch
- Seabourne
- Pandas
- Google Collab:
- Jupyter Notebook: Within Gcollab
Key Features
- Designed and implemented a REST server using Express.js in Node.js, containerized for scalability and easy deployment.
- Collaborated on the creation of a local Raspberry Pi agent for communication with IoT devices under test.
- Developed a real-time communication system with Socket.io managing rooms and bidirectional communication with connected devices.
- Implemented a buffering and queue system using Bullmq to handle busy devices and adapt to limited resource constraints.
- Utilized PostgreSQL for device data persistence and Redis for fast, in-memory data caching.
- Integrated serial and other protocols to facilitate communication with hardware boards connected to the server.
- Deployed the system on Google Cloud Platform (GCP) with configurations for load balancing, security, and scalability, including a load balancer, Network Endpoint Groups (NEG), Identity-Aware Proxy (IAP), and backend services.
- Configured a separate Nginx instance as a reverse proxy for additional security and performance optimization for serverless services in GCP.
Deployment and Management
- Employed Docker and Docker Compose for container management, simplifying development, testing, and production workflows.
- Applied Terraform for infrastructure provisioning, enabling reproducible and scalable cloud environment setups.