Senior Mobile Engineer - remote

Jibble Tech Sdn Bhd
Posted 3 years ago
Stack Overflow

About The Position

We’re looking for 2 highly experienced mobile engineers, an Android and iOS engineer, to contribute to the next major version of the Jibble app. As part of an ambitious team you’ll work with a cutting edge tech stack. Continuous learning and applying new and emerging technologies and methodologies make this an exciting opportunity for you to expand and deepen your skills on the job.

You will be working in a team of 13 engineers from 8 different countries, operating in bi-weekly sprints with daily stand-ups. We apply Kanban methodology in the development process and impact is continuously measured.

Besides Android / iOS development, you will be involved in the design process - offering feedback and input in meetings with product managers and designers when planning new features and products. 

The position offers a competitive salary, paid holidays and a fully remote work environment. When possible, we organise annual meetups in varying locations to work and socialise with the entire team.

Job requirements:

  • At least 2+ years of mobile development using Kotlin (Android) OR 3+ years using Swift (iOS)
  • Good understanding of DI concepts
  • Practical experience of MVVM design pattern implementation
  • Deep understanding of Unit Tests
  • Experience in using Mocks
  • Experience working in remote teams is an advantage
  • Agile (Kanban) software development experience
  • At least one published app written with Kotlin / Swift
  • Located within UTC - UTC+8 time zones

Your responsibilities will include:

  • Building the Jibble mobile applications using Kotlin (Android) / Swift (iOS)
  • Creating pixel perfect design applying Material Design Guidelines (Android) or using IB (iOS)
  • Working on new features of the mobile application and improving existing features
  • Ensuring code quality and standards while meeting deadlines and delivering targets set by the product team
  • Working closely with product managers and data analysts to improve the overall product
  • Working with the design team to improve the overall mobile user experience
  • Communicating with backend team to discuss and design APIs for new features

Android tech stack and tools:

  • Kotlin as the main Android development language
  • Android Jetpack: ViewModel, LiveData, Navigation Component, WorkManager, Room
  • Reactive programming with RxKotlin, RxAndroid
  • Retrofit, Coroutines for networking and background processing
  • Koin for dependency injection
  • MockK for Unit testing
  • Firebase
  • Tensorflow Lite for mobile machine learning
  • Material Design Components
  • Kotlin Native for business logic core

iOS tech stack and tools:

  • Swift 5 as the main iOS development language
  • Reactive programming with RxSwift
  • UI based on storyboards with AutoLayout and size classes
  • Alamofier for backend communication with the REST API
  • Kotlin native for business logic core
  • SwiftLint to ensure styles and conventions

Both Android and iOS engineers will use:

  • Git as a version control system
  • Atlassian Jira for ticket &sprint management
  • Atlassian Confluence for written specifications &documentation
  • Slack for any kind of team communication
  • Bitrise for CI and CD