- Creating and delivering android applications based on client specifications.
- Pay attention to the application s compatibility with multiple versions of Android and device types.
- Translate designs and wireframes into highquality code.
- Should be familiar with Material Design guidelines common mobile UX patterns and antipatterns.
- Ability to write clean modular maintainable code which others can work on.
- Always keen to decrease tech debt participate in code review sessions and suggest best practices
- Design build and maintain high performance reusable and reliable code.
- Have experience with common Android libraries like Retrofit OkHttp Picasso RxJava Gson Archcomponents etc.
- Have experience with different programming paradigms esp. functional and reactive programming
- Knowledge of git and continuous integration.
- Knowledge of SQL database.
- Should have a good understanding of advanced Android concepts like Custom Views Accessibility Services background processing APIs
- Have an understanding of different architectural patterns (esp. MVVM) and how they should be tested.
- Should be good at debugging unit testing including identifying memory leaks performance bottlenecks and using tools like ADB proguard etc.
- Projectrelated documentation of all coding decisions and maintain documentation of the code itself.
Requirements
- Minimum 6 years of working experience on Android SDK Kotlin Core Java.
- Bachelor Degree or higher in Computer Science Engineering or a related subject.
- Familiarity with RESTful APIs to connect Android applications to backend services.
- Strong knowledge of Android UI design principles patterns and best practices.
- Experience with offline storage threading and performance tuning.
- Familiarity with the use of additional sensors in application functionality on mobile devices.
- Knowledge of the opensource Android ecosystem and the libraries available for common tasks.
- Proficient understanding of code versioning tools such as Git.
- Knowledge of Flutter would be a bonus.
- Strong analytical skills and attention to detail.
We are looking to hire a skilled desktop support engineer to assist our clients with computer hardware and software issues. You will be required to work on-site or via remote connection and assist with hardware installations, software upgrades, systems integrations, and basic IT-related issues.