
Android Developer

Requirements:
- Engineers with 1-6 years of experience in shipping consumer-facing Android apps with the large user base, ideally currently available on the Google Play Store
- Top-notch programming skills in Java, Kotlin and Android along with MVVM, Dagger2, Room, LiveData, Coroutine & JetPack-Components
- Command of memory management, view hierarchy, battery optimisation and in-depth experience with multi threaded and networked applications
- Worked with Restful APIs, third-party SDK Integrations and common technologies like HTTPS, JSON, OAuth, and SQL
- Thorough working knowledge of Android Studio with the Gradle build system
- Understanding the quirks of the fragmented ecosystem of Android OS versions and devices
- Focus on Material Design principles and pixel-perfect implementation of the design into code
- Solid experience with Git Care for quality with an obsession for performance and willingness to spend time testing the team's work as well as yours

Similar jobs
Responsibilities:
- Building multi-platform applications for Android and iOS using the Flutter development framework of Google.
- Collaborating with other developers to create, deploy, and maintain Flutter-based applications for different platforms.
- Performing app profiling and improving performance.
- Writing and reviewing multi-application codes
- Testing products to remove bugs and any malfunctioning aspects
- Ensuring consistency between the delivered product features and the requirements/criteria of the business.
- Developing new features, maintaining code, and fixing/debugging issues.
- Managing a team of Flutter Developers
Requirements:
- Good understanding of Flutter and Dart.
- Good Knowledge of Java, Kotlin or Swift.
- Ability to write readable code, create extensive documentation for existing code, and refactor the previously written code into readable state
- Good understanding of code versioning tools such as Git etc.
- Willingness to learn about new technologies and trends in mobile.
- Experience with third-party libraries and APIs
- Familiarity with cloud message APIs and push notifications.
- Working knowledge of Reactive programming is a plus.
- Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies.
- Bachelor’s degree in Computer Science or related field, or equivalent professional experience.
- Experience working with agile teams and making rapid decisions in a dynamic and disruptive environment.
- Confident, detail-oriented, and highly motivated to contribute to the growth of the organization as part of a high-performing team.
- Ability to work under pressure and adhere to tight deadlines.
- 1.5-3 years of relevant software development experience.
- Strong communication skills.


Job Description:
- Strong working experience in IOS application development is a must. First-hand experience of native mobile apps using Swift must.
- Experience with Swift, RxSwift, Swift UI, and Unit tests.
- Strong system design and architecture skills - specifically for IOS. Curiosity to tinker around, explore new paradigms and strongest for continuous improvement. Strong problem-solving skills.
- Understanding of network connections, Rest API'sand scheduling. Strong knowledge of security standards (e.g. HTTPS) and privacy standards.
- Idea/experience of the unit and instrumentation testing in IOS. Optimizing app performance and memory consumption.
- Leveraging community libraries to efficiently complete development tasks.
- Debugging apps using simulators and related tooling.
- Persisting data for offline-first apps using databases such as Realm.
- Localizing apps to support multiple languages and regions, vernacular libraries and fonts.
- Familiar with Version control systems such as GIT.

Job Description
- Build pixel-perfect, buttery smooth UIs
- Leverage native APIs for deep integrations
- Diagnose and fix bugs and performance bottlenecks for performance that feels native.
- Maintain code and write automated tests to ensure the product is of the highest quality
Requirements
- 2+ years of relevant industry experience in React Native
- A deep understanding of JavaScript
- Familiarity with video recording, playback, and uploading libraries
- Experience with Native Android app deployment
- Familiarity with modern front-end build pipelines and tools
- Familiarity with RESTful APIs
- Familiarity with code versioning tools (such as Git)


Udrive is the largest car sharing platform in the Middle East. We pioneered the concept in the region and have continued to provide the best experience amongst our peers. We are in rapid expansion and are looking for a bright, successful and determined individual who has the experience to take the companies vision forwards into the next 5 years.
Our next 5 years journey not only includes regional and global aspirations; we are building the next generation of mobility services to change the way people use vehicles
We are looking for a React Native Engineer for our Mobile App. The Mobile App team is responsible for the mobile app used by our B2C users to register as well as complete their journey with Udrive cars initiation to end.
Your responsibilities:
You will be part of our new mobile team which is part of our customer journey domain and you will work together with a cross-functional team
You strive to offer the best possible experience for our customers on mobile devices
You contribute to the implementation of business requirements as well as to architectural decisions
You ensure that your code is well tested, architected, meets our coding standards, and has proper logging, monitoring, and alerting
Your goal is to provide always-accessible information in the most convenient way, to have better engagement and an overall outstanding user experience
Your profile:
You have experience building high-performance mobile React Native applications on both iOS and Android platforms
Ability to translate Figma based designs to mobile interactions with pixel perfections
You show excellent knowledge of JavaScript and its nuances, including TypeScript.
You have experience with building real-time analytics solutions and streaming platforms
You are familiar with native build tools, like XCode, Gradle and store submission processes
It is great if you have an understanding of REST APIs, the document request model, and offline storage
The most important one: Willingness to learn. We are constantly learning new things and we enjoy it a lot. We don't expect to find people experienced in all of them. If you are excited about our tech-stack and you think you are a fast learner, do not hesitate to apply!



Architect, build and maintain excellent React Native applications with clean
code.
Implement pixel perfect UI's that match designs.
Implement clean, modern, smooth animations and transitions that provide an
excellent user experience.
Integrate third-party API's.
Write unit and integration tests.
Release and maintain applications to the Apple and Google Play stores.
Work with native modules when required.
Work as part of a small team, which will include other React Native
developers, a project manager, QA professional, and a designer.
Complete two-week sprints, and participate in sprint retrospectives and daily
standups.
Assist with building estimates.
Interface with clients via Slack, Zoom, and email.
Work with modern tools including Jira, Slack, GitHub, Google Docs, etc.
Requirements
· 3-5 years of professional experience working with React Native.
· Experience working with Swift, Objective C, and Java a plus but not
required.
· Meaningful experience working on large, complex systems.
· Ability to take extreme ownership over your work. Every day is a challenge
to ensure you are performing to the expectations you and your team have
agreed upon, both in regard to estimates and to the general process.
· Ability to identify with the goals of Semidot clients and dedicate yourself to
delivering on the commitments you and your team make to them.
· An understanding of React Native best practices and a commitment to
following them.
· Ability to work through new and difficult React Native issues and contribute
to libraries as needed.
· A positive mindset and can-do attitude.
· Forensic attention to detail.
· English skills is a plus(ability to effectively communicate via written and
spoken english).
· A passion for software development. It’s not just your career, it’s also your
hobby. You’re constantly striving to learn new things and improve. You follow
industry news, regularly tinker with new technologies, and read books and
blogs to keep your skills current.
· You work well within a team environment and enjoy working in the office with
your colleagues.

Responsibilities/Requirements
- Strong in Java and OPPs (Object Oriented Programming) Concept
- Knowledge of Android SDK and NDK
- Knowledge of JSON and XML
- Android Mobile Development Life Cycle
- Knowledge of SQLite
- Good if Communicating with the server using REST APIs
- Should be work in agile methodology
- Master into research and development task for some major function
- Good Problem solving skills
- Self motivated and always willing to learn latest technology
Key Skills
- Android, Java, Kotlin, OOPS, C, C++


• Min 9+ Years in Android Application Development, know how’s of iOS development is an advantage.
• Experience with cross platform technologies - React Native, Flutter is a big plus
• Managing systems in production and understands the release process, monitoring, and debugging
• 1-2 years of experience managing and growing engineering teams
• Proven results-oriented person with a focus on delivering quality products
• Experience in designing, implementing, and maintaining high performance, high availability, large-scale
applications
• Ability to work in a fast-paced, agile development environment.


What is the Job like?
- Architect super configurable mobile SDKs - the one’s which are written in native but are server-controlled
- Build a suite of Mobile Backend services which will control the SDK distribution and mobile configurations
- Fantasy the idea of composing a mobile application from different components rather than build every application from scratch
- Expertise in security - cryptography, encrypted secure storage, mobile security to power our super-secure payments originating from mobile devices
- Work on a framework to let mobile developers build their mobile screens on multiple stacks - native, server-driven, web, react-native, flutter, ionic etc.
Who should apply?
- Bachelor’s/Master’s degree in engineering (computer science, information systems)
- 8+ years of experience building enterprise systems including at least 2 years of direct people management experience
- Worked on large scale mobile applications with a good understanding of mobile stack
- Good understanding of server stack as well so as to have a good understanding of the entire story
- Good understanding of SDK distribution using maven, pods, xcframeworks etc
- Analyse, design and architect, develop and maintain software solutions across multiple projects
- Direct and provide ongoing leadership for a team of individual contributors, set objectives, review performances, define growth plan and nurture.
- Drive best practices, and is a pro with agile methodologies/practices - SCRUM, Test Driven Development (TDD)
- Manage headcount, deliverables, schedules across ongoing projects, ensure that resources are appropriately allocated and timelines are met in accordance with the project roadmaps

Mandatory: Hands on experience working with Java or Kotlin. Very strong logical skills. Good hold on operating system concepts and data structure. Experience with web services , SQL Lite , camera kit , image caching concepts, keychain , past experience working with one of the design patterns like MVC / MVVM / MVP , network check implementation.
Good to have: Rx-Swift experience , video / image filter experience , media player usage , complex UX effects , couch-db , RealM.Knowledge of GIT management , Continuous Integration and Continuous Development practices.
Soft Skills: Strong communication skills , high spirited , eager to learn , able to perform in a high pressure environment

