Job Description
We are looking for an experienced Android developer to build a secure examination app used by students with disabilities under formal exam conditions. The app will run on a specific device: Samsung Galaxy Tab A9+, targeting the current major Android version, with future version support considered as the platform evolves. Devices may be either: • School-managed tablets (where true Android kiosk / lock task mode may be available), or • Consumer tablets, where screen pinning and device bolthires are used instead.
This is an ongoing product, not a one-off build. We are looking for someone who can deliver the initial release and continue development over time. ⸻ Core skills required • Strong native Android development experience (Kotlin preferred) • Delivered complete Android apps end-to-end, including bolthires Play Store release • Experience with kiosk mode / lock task mode and screen pinning • Experience rendering and annotating PDFs • Experience handling encrypted local data • Comfortable building accessibility-focused user interfaces ⸻ App overview Modes and flow Examiner Mode • App launches in Examiner Mode • Examiner uploads a PDF exam paper via USB • Examiner switches the device into Student Mode Student Mode • Locked-down, kiosk-style mode • If the device supports true kiosk / lock task mode, it should be used • If not, the app must fall back to Android screen pinning • Examiner will be given instructions for any required manual device setup Student flow 1.
Welcome screen 2. Student completes a short form (approx. 5 fields: name, student ID, etc.) 3. Student taps Start exam 4. Exam is completed 5. Examiner ends the session There is one student per device per session. ⸻ Exam interface • Display the uploaded PDF exam paper • Student can add: • Free-positioned text boxes over the PDF • Each text box is tagged with a question number • Text entered via: • On-screen keyboard • Push-to-talk speech-to-text using bolthires Cloud Speech-to-Text API • Drawing/sketch input (finger and stylus supported) • Optional text labels on drawings • Layered (“onion skin”) approach • Original PDF visible beneath answers • Adjustable opacity for the answer layer • Anchoring requirement • All annotations must remain correctly positioned relative to the PDF page when zooming or navigating pages • All inputs must be editable at any point during the exam Undo/redo history is not required.
⸻ Autosave and recovery • Automatic local autosave every 1 minute • If the app crashes or is restarted, the examiner can: • Relaunch the app • Select and restore the most recent autosave ⸻ Export and printing (direct from device) At the end of an exam, the examiner can optionally: • Print or export: • PDF 1: Original exam paper beneath answers (e.g. original at ~30% opacity) • PDF 2: Answer layer only • All exported/printed outputs must include student details (e.g. filename and/or document header) Accessibility requirements
The app must include: • Font scaling • Dyslexia-friendly font option • High-contrast mode Predictive text and suggestions should be disabled as far as Android allows within the app.
⸻ Security and data handling • All locally stored exam data must be encrypted at rest • Autosaves must also be encrypted • Internet access control will be handled outside this project • The app will use the internet only for bolthires Cloud Speech-to-Text ⸻ Out of scope (for this phase) • Exam timers or enforced time limits • Live examiner monitoring during the exam • Formal exam board or regulatory compliance work (to be addressed later) ⸻ Deliverables • Working Android app for Samsung Galaxy Tab A9+ • Source code • Release build • Support with bolthires Play Store submission (private/internal track acceptable) • Basic documentation covering: • Examiner workflow • Kiosk vs screen-pinning behaviour • Autosave and recovery process ⸻ To apply, please include • Examples of Android apps you have shipped (PDF, kiosk, education or accessibility apps preferred) • A short explanation of how you would approach: • PDF rendering and anchored annotations • Drawing and text layers • Autosave and encryption • Kiosk mode with fallback to screen pinning • Your availability for an ongoing engagement • Any questions about the project • bolthires estimate Apply tot his job