Device Synchronization Mechanism Implementation
Költségvetés: -
HOURLY / PART_TIME
⭐ 0.00 (0)
United States
react-js, react-native, webrtc
# Full-Stack Developer – Cross-Device Data Synchronization
## Project Overview
We are seeking an experienced developer to design and implement a secure cross-device synchronization solution for a React web application and a React Native mobile application.
The applications generate and store machine-learning data locally, including:
* Face embeddings
* Vector embeddings
* Media metadata
* Timestamps and version information
Current storage technologies:
* Web: IndexedDB
* Mobile: SQLite
The goal is to synchronize this data across a user's authorized devices while minimizing data transfer and maintaining security and data integrity.
## Key Requirements
### Device Discovery
* Detect authorized devices belonging to the same authenticated user on a local network.
* Support Web-to-Mobile, Mobile-to-Web, and Mobile-to-Mobile synchronization.
### Delta Synchronization
* Transfer only new or updated records.
* Avoid full database transfers whenever possible.
* Use an efficient change-tracking mechanism such as IDs, timestamps, versioning, or a recommended alternative.
### Bi-Directional Sync
* Synchronize data in both directions.
* Ensure devices exchange missing embeddings, vectors, and metadata.
* Keep all authorized devices updated with the latest available records.
### Sync Triggers
Synchronization should occur:
* At application startup
* Upon user login
* When a user selects “Sync Now”
* Optionally when a new authorized device is discovered
### Data Integrity & Security
* Prevent duplicate records.
* Validate imported data before storage.
* Handle interrupted transfers and recovery.
* Encrypt data during transfer.
* Restrict synchronization to devices belonging to the same authenticated user.
## Responsibilities
* Design the overall synchronization architecture.
* Implement synchronization functionality in React and React Native.
* Build any required synchronization services or APIs.
* Recommend the best approach for:
* Device discovery
* Delta detection
* Data transfer format
* Conflict resolution
* Scalability for large datasets
* Create documentation and test cases.
## Deliverables
* Solution architecture and design documentation
* React implementation (Web)
* React Native implementation (Mobile)
* Synchronization service/API components
* Deployment and maintenance documentation
* Test plans and validation results
## Preferred Experience
* React and React Native
* IndexedDB and SQLite
* Offline-first applications
* Data synchronization systems
* WebRTC, WebSockets, local networking, or peer-to-peer communication
* Data versioning and conflict resolution
* Secure data transfer and distributed systems
The solution should be lightweight, efficient, scalable, and optimized for incremental synchronization of large embedding and metadata datasets between authorized user devices.
Megnyitás Upworkön