Android Engineer

Information Tech Consultants
14 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate
Compensation
£ 35K

Job location

Tech stack

Java
API
Android
Business Logic
Microsoft Basic Data Partition
Mobile Application Software
Model View ViewModel
Stateflow
Kotlin
Asynchronous Programming
REST

Job description

We are seeking a skilled Android Engineer to design, develop, and maintain high-performance Android applications. The ideal candidate will have hands-on experience in Kotlin/Java, Android SDK, RESTful API integration, and modern mobile app architecture.

Requirements

Do you have experience in iOS?, Do you have a Bachelor's degree?, 1. Coroutines & Threading Basics

  • Comfortable writing and calling suspend functions.
  • Understands how to switch threads (e.g., moving network calls to Dispatchers.IO and UI updates to Dispatchers.Main).
  • Can make two simple network calls concurrently using async and wait for both to finish.
  1. Standard App Architecture (MVVM)
  • Clear understanding of the ViewModel and Repository patterns to separate UI from data.
  • Ability to observe basic data streams (like LiveData or basic StateFlow) to update the UI.
  • Knows not to put business logic or API calls directly inside an Activity or Fragment.

Benefits & conditions

  • Comfortable setting up and using Retrofit with Kotlin serialization or Gson.
  • Knows how to pass dynamic headers (like a standard Authorization Bearer token) to an API request.
  • Understands common HTTP status codes (e.g., handling a 401 Unauthorized vs. a 500 Server Error).
  1. Basic Dependency Injection
  • Understands the concept of injecting dependencies rather than creating them manually.
  • Can use a framework like Hilt to inject a Repository into a ViewModel or an API interface into a Repository, even if they don't know how to build complex custom scopes.
  1. Clean Code Organization
  • Can organize code logically by feature (e.g., login, profile, settings) rather than dumping everything into giant ui or network packages.
  • Understands the concept of keeping the codebase modular, even if they haven't built a multi-module Gradle project yet.
  1. Standard Error Handling
  • Knows how to wrap coroutine network calls in try/catch blocks.
  • Can map basic network exceptions to user-friendly UI states (Loading, Success, Error).

About the company

Information Tech Consultants Ltd (ITC) is a London-based mobile app development consultancy specializing in Android, iOS, and cross-platform solutions. With over 35,000 mobile development hours delivered across UK clients, we build scalable, high-performance mobile applications.

Apply for this position