android-job is the missing compatibility library between the old AlarmManager API and the newer JobScheduler API available since Android 5.0. It also replaces the GcmNetworkManager component made by Google, which serves a similar purpose but has a hard dependency on Google Play, so it doesn’t work on Amazon devices for example.