Engineers App

Install & Login

Three things to get right at install: the app, the credentials, the permissions. Miss any one and pages won't land.

1. Install the app#

The Engineers app is distributed as a signed APK during the closed beta. Get the latest build from your admin or from the internal release tracker. Sideload it on Android (Settings → Apps → permission to install unknown apps for your file manager) or push via your MDM.

Play Store release

The Play Store listing is rolling out in waves. Until your project is whitelisted, sideloading the APK is the supported path.

2. The engineer needs an account#

Engineer accounts are created from the dashboard. An admin opens Engineers → Add Engineer, fills in name + email, sets the tier, and either provides a password or lets the system auto-generate + email one.

Engineers ≠ Auther / dashboard users

Engineers have their own credential store (the engineers table). They're distinct from the Auther accounts that admins use to log into the web dashboard. Same project, different sign-in.

3. First-time login#

  1. Open the app — you'll land on the login screen.
  2. Enter the email + password your admin set up.
  3. The app fetches an engineer JWT (30-day expiry) and stores it locally.
  4. On the very first launch you'll see two permission prompts. Grant both — see below.

4. Grant permissions#

The app needs three things from Android. Two are prompted at launch; the third is sometimes hidden inside Battery settings.

PermissionWhyRequired?
Post notificationsDisplay the incident page bannerRequired
Display over other apps / Full-screen intentTake over the lock screen on a pageRequired on Android 14+
Unrestricted battery usagePrevent OEM killers (Xiaomi/Oppo/Realme) from suspending the FCM listenerStrongly recommended

5. Verify FCM is registered#

On successful login the app fetches a Firebase Cloud Messaging token and POSTs it to /api/v1/mobile/engineers/:id/device. This is how the backend addresses the engineer when paging.

You can verify from the backend by checking the engineer_devices table — there should be a row with your engineer_id and a current fcm_token. If there isn't, the device-register call failed; check the app logs for the [fcm] register failed line.

6. Test it#

The fastest way to confirm everything is wired correctly is to have an admin fire a manual page from the dashboard:

  1. Dashboard → On-Call → find the engineer.
  2. Click the phone icon next to their name.
  3. Pick severity, optional message, click Send page.
  4. Your phone should light up within ~5 seconds — full-screen incident page, alarm, ACK button.

Didn't get the page?

That's almost always one of three things: notification permission denied, FCM token not registered, or battery optimization killed the listener. Walk through Troubleshooting in order — the steps are listed by likelihood.