Android Engineer
SKILLS
FULL DESCRIPTION
Android Engineer
If you love food and technology as much as we do, you’ll love life at [Employer hidden — view at passion-project.co.uk]. We’re on a mission to revolutionise the hospitality experience for operators and their customers.
About the role
Your mission as a [Employer hidden] Embedded Engineer is to own and evolve the native “shell” that powers our restaurant ecosystem (POS, Kiosk, KMS). While our core applications are built using React Native Web, they operate within a complex hardware environment; including thermal printers, EMV payment terminals, and barcode scanners.
You’ll lead the transformation of our existing WebView wrapper into a high-performance, multi-threaded native bridge architecture, ensuring hardware operations run seamlessly in the background without ever compromising the user experience.
The day-to-day
Working in a startup means that things often change and we adapt to the growing and changing needs of the business. We expect the below to be the bulk of the role, but this may change over time depending on your own development needs, aspirations and the makeup of the team.
- Architect the Native Bridge: Design and maintain a robust JavascriptInterface (Bridge) between the React Native Web app and the Android native layer.
- Peripheral SDK Integration: Lead the implementation of 3rd party SDKs for hardware (Zebra, Epson, Star Micronics, Adyen, Stripe/BBPOS).
- Concurrency Management: Implement advanced multi-threading (Kotlin Coroutines or Java ExecutorService) to ensure hardware "blocking" calls (like printing or card reading) occur on background threads, keeping the UI at a fluid 60fps.
- System Hardening (Kiosk Mode): Develop and manage "Lock Task Mode" and Device Policy Controller (DPC) features for our Kiosk and POS hardware to prevent OS-level tampering
- IoT & Network Optimisation: Manage local network discovery (mDNS/NSD) for finding kitchen printers and optimise cellular (LTE/5G) stability for mobile POS units.
- Hardware Health Monitoring: Build a background telemetry system to report hardware status (e.g., "Printer Out of Paper", "Terminal Disconnected") to our cloud dashboard.
About you
- Experience: 5+ years in Android Development (Java/Kotlin).
- Meaningful iOS/Swift experience — can context-switch to our iOS counterpart
- WebView Expert: Deep understanding of WebView internals, including asset caching, custom WebViewClient implementations, and secure JS-Native communication.
- Hardware Specialist: Proven track record of working with Serial (USB/RS232), Bluetooth (BLE), and IP-based peripherals.
- Protocol Proficiency: Experience with ESC/POS (thermal printing) and JSON-RPC or MQTT for device messaging.
- Architectural Knowledge: Strong grasp of the Android | IOS Lifecycle to ensure background hardware tasks aren't killed by the OS.
- Payment terminal integration experience (any major provider)
- Debugging mindset — a lot of this role is figuring out why something broke on a specific device at a specific store
Preferred Qualifications
- Experience in the FinTech/POS industry.
- Thermal receipt printers (ESC/POS), kiosk hardware (ELO), device fleet management / MDM, embedded systems background
- Knowledge of React Native Web to better collaborate with the frontend team.