Software Engineer II - Android (Saudi National)
Android Engineer II on the Fulfillment team in Riyadh, building and maintaining native Android apps using Kotlin/Java with Modern Android Development practices (ViewModel, Dagger2, Retrofit2, etc.) for a food delivery platform.
- Compensation
- Not disclosed
- Location
- Riyadh, Saudi Arabia
- Work setup
- Not specified
- Seniority
- Middle
- Employment
- Not specified
- Experience
- 3+ years
- Category
- Mobile
- Posted
Skills
Must have
- 3+ years of experience in developing software
- Practical knowledge of design patterns and algorithms
- Kotlin as primary development language (Java acceptable)
- Native Android development skills
- Experience writing high-quality, testable code
- Proficiency with modern mobile architectures
- In-depth knowledge of mobile engineering lifecycle (fragments, activities)
- Experience with Agile methodologies (SCRUM or Kanban)
- Modern Android Development: ViewModel, LiveData, Paging, Navigation, SafeArgs, Retrofit2, RxJava2, Dagger2 (multi-module)
- Understanding of Modular App Architecture
- Understanding of CI/CD pipeline
- Experience with versioning tools (Git)
- Saudi National
Nice to have
- Knowledge of Firebase
- Knowledge of Google Maps API
- Fastlane scripting
- Checkout.com SDK
- Open-source contributions and technical publications
Full description
Hungerstation is part of the Delivery Hero Group, the world's pioneering local delivery platform, our mission is to deliver an amazing experience-fast, easy, and to your door. We operate in around 65 countries worldwide. Headquartered in Berlin, Germany. Delivery Hero has been listed on the Frankfurt Stock Exchange since 2017 and is part of the MDAX stock market index.
Job Description
We are looking for a highly talented Android Engineer to join the Fulfillment team in Riyadh. If you are looking for a place where you can gain hands-on experience and create a direct impact, then this may be the place for you! An ideal candidate will have a track record as a significant individual contributor as well as a strong team player.
You Will Be Working On
- Keep abreast of the latest software development methodologies in order to be able to provide best-in-class software solutions
- Analyze product requirements in order to understand engineering requirements, evaluate the technical feasibility, estimate efforts, and provide the required solutions in collaboration with the Product Team
- Assist in building development components and managing the programming of the different solution components in order to transform the requirements into actual working software accurately
- Document all coding steps in order to ensure comprehensibility and facilitate future modifications and maintenance
- Responsible for writing unit, integration, and UI / Snapshot testing.
- Investigate and resolve issues and bugs through patches and other means
- Collaborate with other colleagues in order to assist each other in code reviews and deliver code review reports accordingly
- Perform functional and module testing in order to ensure the functionality of delivered solutions
- Monitor evaluate and report on product development and recommend improvements where necessary
- Assist in user trials and acceptance testing
Qualifications
- 3+ years of experience in developing software, with practical knowledge of design patterns and algorithms, ideally with Kotlin as a primary development language, but Java would suffice too.
- You are open-minded about technologies but particularly skilled in native Android development.
- Hands-on experience writing high-quality, testable code, also proficiency with modern mobile architectures.
- In-depth knowledge of mobile engineering lifecycle for fragments, activities, and practical experience with Agile methodologies (SCRUM or Kanban would do).
- Engineering excellence - a proven track record of substantially impacting the development of complex non-trivial systems. Open-source contributions and technical publications are very much welcome!
- Execution - "getting things done" mentality. Ability to manage multiple projects at the same time, with high prioritization skills and experience with versioning tools (Git).