Key Responsibilities:
Design and build advanced applications for the Android platform
- Collaborate with cross-functional teams to define, design, and ship new features
- Work with outside data sources and APIs
- Unit-test code for robustness, including edge cases, usability, and general reliability
- Work on bug fixing and improving application performance
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
- Translate designs and wireframes into high quality code
- Understand business requirements and translate them into technical requirements
- Design, build, and maintain high performance, reusable, and reliable Java code
- Ensure the best possible performance, quality, and responsiveness of the application
- Identify and correct bottlenecks and fix bugs
- Help maintain code quality, organization, and automatization
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency.
- Unit test code for robustness, including edge cases, usability, and general reliability using JUnit, Mocikto or Espresso.
- Lead and Mentor Android developers
Required Skills and Experience :
- 6+ year of proven software development experience and Android applications development
in Android Kotlin and react native based Hybrid app development
- BS/MS degree in Computer Science, Engineering or a related subject
- Experienced in Android Kotlin and react native based Hybrid app development
- Experience with Android SDK, different versions of Android, and how to deal with different screen sizes
- Experience working with remote data via REST and JSON
- Experienced in Client server programming (RESTful APIs) to connect Android applications to backend services
- Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
- Solid understanding of the full mobile development life cycle.
- Strong knowledge of Android UI design principles, patterns, and best practices
- Experience in Android Studio IDE and tools like Android Device Monitor, Logcat
- Experience with offline storage, threading, and performance tuning
- Knowledge of the open-source Android ecosystem and the libraries available for common tasks
- Proficient in using code versioning tools, such as Git, SVN
- Strong CS fundamentals and a good working knowledge of algorithms and data structures.
- Strong on OOPS and Java concepts
- Proficient in integration of third party libraries OkHttp, Retrofit, ButterKnife, Image caching libraries
- Working knowledge of RxJava, RxAndroid
- Expert in debugging, troubleshooting, memory optimization, performance and scalability of mobile app.
- Apk size and battery optimization
- Strong design/development experience working on at least 4 Mobile application apps from Scartch
- Has worked on MVP, MVVM design patterns for android applications
- Has experience on working with web views in Android and customizing them for different features
- Follows coding guidelines, Reviews code for peers and juniors.
- Understands and implement security guidelines
- Experience in localization