We’re hiring a React Native/React engineer with deep, production-scale RN experience who can also write native Kotlin to build and maintain custom Android modules when required. You’ll maintain offline-first apps used in challenging environments (at sea) where connectivity is intermittent and local real-time video and device control must remain resilient.
What you’ll work on
1 - An app that gives mariners control of a SmartMast unit!
A LAN/offline first mobile app that connects to and controls a nearby SmartMast unit. It maintains persistent, low-latency, full-duplex communication via WebSockets and ROS 2, while also syncing with an AWS-hosted backend API. Video from the PTZ camera streams over RTSP/SRTP using TCP or UDP. Because the most powerful features run on the local network, strong knowledge of networking and device discovery (e.g., mDNS/zeroconf, addressing, NAT/firewalls, QoS) is also essential.
Tech requirements:
- React Native
- Expo
- Javascript
- TypeScript
- SQLite
- Web Sockets
- ROS2 Protocol
- Video streaming libraries
- RTSP/SRTP
- TCP/UDP
- Network discovery (mDNS)
- Adaptive offline first behavior
- Unit testing with Jest and experience with automated end-to-end test workflows
2 - An app to help mariners report illegal activity at sea
A multilingual mobile app that enables mariners to document and report illegal activity at sea by securely uploading photos and videos, even offline. A modular, accessible UI delivers a smooth experience, while maps and precise geolocation power on-device validation of each report. The app syncs with an AWS-hosted API (monorepo; Serverless Framework; TypeScript; PostgreSQL) and follows an offline-first strategy to keep devices updated in low-connectivity environments. When needed, native Kotlin modules enable integrations with local IoT devices.
This project also has a web admin page for user management and other integrations.
Tech Requirements:
- React Native
- React
- Expo
- TypeScript
- Javascript
- SQLite
- Unit testing with Jest and an automated end-to-end test experience
- Adaptive offline first behavior
- Network discovery (mDNS)
- AWS
- Serverless Framework
- HTML
- CSS
- Familiarity with Geolocation-based algorithms and data formats
Responsibilities
- Create beautiful, easy-to-use, atomic components. Make them adaptable for internationalization to allow the app to scale as the number of features and languages the app supports grows.
- End-to-end ownership: feature delivery, performance, reliability, and release operations for both apps.
- Offline-first architecture: model data for local-first UX (SQLite/Room or similar), implement sync, conflict resolution, and schema migrations.
- Streaming & media: implement and optimize live video ingest/playback, jitter buffers, reconnection, Adaptive Bitrate Streaming (ABR), and Quality of Service (QoS) telemetry.
- Kotlin native modules: design and maintain native modules with Kotlin when necessary.
- Harsh-network engineering: handle satellite/maritime and field conditions such as high latency, packet loss, power/thermal constraints, and others.
- Security by design: SRTP key management, TLS/DTLS, cert pinning, Android Keystore, and privacy-preserving telemetry.
- Tooling & quality: tests (unit/integration), CI/CD, profiling, etc.
Minimum Qualifications
- Bachelor’s degree in Computer Science, Electrical Engineering, or related field.
- Proven experience in hardware and software engineering, with a strong understanding of product lifecycle management.
- Familiarity with smart technologies and solutions, particularly in analyzing and supporting deployed systems.
- Excellent problem-solving skills and the ability to work collaboratively in a fast-paced environment with people across the globe in various time zones.
- Strong communication skills, both written and verbal, to effectively interact with contractors and stakeholders.
- 3+ years building mobile apps, 2+ years focused on React Native at scale (navigation, animations, perfect memory/threading management).
- Strong Android/Kotlin skills with production RN or fully native apps deployed to the Google Play Store.
- Hands-on with offline-first architectures and local databases (SQLite + ORM/query builders like Kysely, Room, or equivalent).
- Real-time video experience on mobile:
- Protocols: RTSP, SRTP; transports: TCP/UDP.
- Stacks: ExoPlayer, ffmpeg-kit, etc.
- Concepts: RTP timing, packetization, jitter buffering, keyframe cadence, reconnect/backoff, and Adaptive Bitrate Streaming (ABR).
- Networking: understanding of sockets, firewalls, mDNS/zeroconf, WebSockets, QoS metrics (latency, jitter, loss, stall rate).
- Proven testing practice with Jest
- Comfortable migrating apps from earlier Expo versions to the latest Expo/React Native/Android releases, config plugins, and bare when needed.
Nice to Have
- ROS2 ecosystem familiarity: ROS2 topics, services, commands, etc.
- PTZ protocols (e.g., Axis) and camera vendor SDKs.
- Map rendering, offline tile management, and geolocation-based strategies such as geofencing.
- AWS Serverless (API Gateway, Lambda, Cognito, S3, CloudWatch), monorepos.
- Automated E2E testing experience, observability (Crashlytics, Grafana), feature flagging, A/B testing.
- Comfortable writing automated end-to-end system checks for unit testing during the factory acceptance process.
Benefits
- Competitive salary
- Flexible work hours and the option for remote work.
- Opportunities for professional development and continued education.
Are you looking for more jobs nearby? Find your favorite jobs now by visiting our online jobs page.