Senior Mobile Engineer – iOS/Android, Realtime AI
Free to start · No card · 5 credits the moment you sign up
Job description
This is a remote position.
We’re hiring a Senior Engineer to build production mobile apps and services that integrate with Meta’s Glasses SDK for RayBan Meta smart glasses. You’ll design and ship hands-free, voice-first, vision-enabled experiences that span the glasses, a companion iOS/Android app, and cloud AI. This is a highly cross-functional role at the intersection of mobile, real-time audio/video, Bluetooth/WiFi transport, and multimodal AI.
What you’ll do
- Own end-to-end development of a companion mobile app that interfaces with RayBan Meta smart glasses via Meta’s Glasses SDK
- Implement reliable capture and streaming pipelines for camera preview frames, stills, and multichannel audio, with strict attention to latency, battery, and privacy indicators (camera LED, permissions)
- Build voice-first UX: wakeword handoff, push-to-talk flows, VAD/ASR/TTS, earcons, and low-latency audio playback on openear speakers
- Integrate on-phone computer vision and speech models (Core ML, MediaPipe, ONNX Runtime, NNAPI) and orchestrate cloud inference for multimodal LLMs (e.g., Llama 3family vision/voice) via streaming APIs
- Handle transport and connectivity: Bluetooth LE control channels, WiFi/WiFi Direct media streaming, reconnect logic, and state machines for device pairing and session lifecycles
- Design resilient, observable pipelines with backpressure, retries, offline fallbacks, and graceful degradation when thermals, bandwidth, or permissions change
- Collaborate with product/design on voice-first interaction patterns; run user tests; instrument metrics for latency, accuracy, and task completion
- Establish mobile CI/CD, automated testing (unit/integration/BT device in the loop), crash/error analytics, and release processes
- Champion privacy by design and compliance with platform and bystander safety policies
Requirements
Minimum qualifications
- 5+ years professional mobile engineering experience, shipping native apps at scale on iOS or Android (preferably both)
- Deep proficiency in:
- iOS: Swift, SwiftUI/UIKit, AVFoundation, CoreBluetooth, CoreMotion, background modes, concurrency (GCD/AsyncAwait), audio units
- Android: Kotlin, Jetpack Compose/Views, Bluetooth/BLE, Camera/Media, Foreground services, Coroutines/Flow
- Handson with realtime media pipelines and streaming: audio capture/playback, echo cancellation, noise suppression, lipsync/latency budgeting, WebSockets/gRPC/WebRTC, codecs (Opus/AAC/PCM)
- Solid networking and systems skills: state machines, threading, buffering, backpressure, power/thermal profiling, and debugging on constrained devices
- Experience integrating cloud AI services (LLM/ASR/TTS) and handling streaming inference results in the UI
- Strong product sense for voice-first UX and accessibility in eyes-up, hands-free contexts
- Excellent communication; comfortable working with early/preview SDKs and ambiguous requirements
Preferred qualifications
- Prior work with Meta’s Glasses SDK (RayBan Meta) or similar wearables (Apple Watch/visionOS audio, Snap Spectacles, Bose Frames) – if you don’t have this experience, it is fine, provided that you are willing to learn the Meta Glasses SDK quickly
- Ondevice ML on phone: Core ML/Metal/Accelerate (iOS), MediaPipe/TFLite/NNAPI/GPU delegates (Android), ONNX Runtime Mobile
- Multimodal AI integration: experience with Llamafamily models, Whisper/Seamless/other ASR, TTS providers, prompt and latency optimization, partial results/streaming UX
- BLE expertise: GATT design, connection strategies, MTU/throughput tuning, coexistence with WiFi transport, device provisioning, and firmware update flows
- WebRTC for low-latency A/V; adaptive bitrate, jitter buffers, AEC/VAD tuning
- Backend exposure sufficient to move fast with AI
- Python or Node.js for inference gateways (FastAPI/Express), WebSocket servers, request fanout, and token streaming
- Deploying model servers (Triton, vLLM) and vector/RAG stacks (FAISS/Pinecone), observability (OpenTelemetry), and autoscaling on AWS/GCP/Azure
- Security and privacy: keychain/keystore, secure BLE pairing, PII handling, consent UX, regional data controls
- QA for hardwareintheloop: writing automated tests that exercise glasses events (connect, capture, LED state, battery, IMU), and performance tests for end-to-end latency
Originally posted on Himalayas
Prepare your application
Use the description above to assess your fit for AIKIT Digital. This checklist is guidance from Resumize, rather than additional requirements from the employer. Imported listings can be shortened or change after collection, so confirm the complete description and current availability before sending an application.
Match requirements to evidence
Identify the responsibilities and skills the employer explicitly names. For each important requirement, choose one example from your work, education, training, or projects. Explain what you did, how you did it, and what changed as a result. Include a measurable outcome when you can support it. If you lack a requirement, describe related experience accurately instead of adding an unfamiliar skill to your resume.
Put the most relevant examples near the top of your resume. Keep job titles, dates, qualifications, and contact details consistent across your application materials. Use the employer’s terminology when it describes your experience accurately; a copied list of keywords does not explain your contribution. A short, specific bullet is easier to review than a paragraph that mixes several unrelated duties.
Check the working arrangement
Confirm the location, schedule, employment type, and any eligibility requirements on the employer’s site. A remote label does not establish worldwide eligibility or flexible hours. If compensation, benefits, equipment, travel, or contract duration are missing from this listing, write down your questions for the recruiter. Do not assume details from another opening at the same company apply to this role.
Review before submitting
Follow the employer’s requested file format and application instructions. Open your exported resume and check that its text is selectable, its sections read in order, and its links work. Proofread names, dates, and contact information. Share confidential work samples only when you have permission, and use an anonymized example when necessary.
Submit through a trusted employer or recruiting destination. If the original listing has disappeared, search the employer’s careers page for the title rather than assuming the vacancy remains open. Save the application date, job reference, and the version of your resume you sent. Those details help you prepare for a later conversation and avoid submitting conflicting information through several job boards.
Review your resume for writing and readability feedback, or browse other openings if this opportunity is unavailable.