I have been working in Android development for more than two years. During these times, I worked on many good Android projects. Also, I love contributing to open-source projects. I’m consistently active in learning new skills and knowledge, and I’m hyper-active in Github.
I always prefer to use the latest stable technology when creating robust Android apps. My highest priority when writing code is to use best practices and write clean code, so we could easily integrate, test and scale. I extremely hate wasting time so I always organize tasks and smash them on time.
I can develop Android applications with Java and Kotlin programming languages. I prefer (love) Kotlin programming language to code Android projects as it offers many advantages over the former. Also, there are many libraries and frameworks that are only available for the Kotlin programming language. I have experience with MVVM, Clean Architecture architectural patterns. Moreover, I’m very comfortable using AndroidX, Jetpack, Kotlin libraries. And, I have a good understanding of how APIs work as I have humble experience in creating REST APIs using Spring Boot, KTOR. I can integrate with APIs, and I can communicate with them using Retrofit, KTOR Client, Volley, OkHttp libraries. I’m able to use Dependency Injection design pattern via Dagger and Hilt frameworks. I can use the Git version control system and Github. I can work with various Google APIs including Admob, Cloud, Maps. I feel at home when using Firebase services. I strictly follow Google Material Design guidelines when working with User Interfaces. In terms of testing, I can write unit tests via the JUnit framework, also I have little experience with integration tests and end-to-end tests.
As I mentioned that I love acquiring new skills and learning new knowledge, I also learn and adapt to new technologies very fast. Android field is really fast-paced as knowledge gets outdated and libraries get deprecated quickly, so I always keep my knowledge up-to-date and I love refactoring code to the new changes. When I face a problem or a library (technology) that I never used before, I tend to learn it well as soon as possible.
I would like to work in a quality team. The team should be friendly, so people are willing to help each other. The team should set their priorities higher and organize everything so we know what is our responsibility and goal. I would like to work with creative and hardworking people who want to grow, so I can learn a lot from them as well as have fun in the process.
📌 My main responsibilities as an Android developer in Gravity:
• Development of Android applications that use the latest technology. These applications are also robust to configuration changes and process death. Their design of UI is strictly followed to Google Material Design Guidelines.
• Adding new features to the Android applications and updating them.
• Solving problems that could occur while maintaining applications in long run.
• Refactoring the code when new technology is required to be implemented or the existing ones are got deprecated.
• Debugging the application and fixing the bugs.
• Writing unit tests to validate new features.
• Providing helpful and informative documentation for projects.