Senior Mobile App developer with 4+ years of product-focused Android application development experience. Write clean, readable and covered with tests code. Like to learn new programming frameworks/approaches and discuss it with the team. Contribute to the Android community: answer questions on StackOverflow, write articles on Medium and contribute self-written open source projects on Github. In previous: published 6 scientific works about VLSI, SRAM, OTP PROM memory design and about unique physical effects in ultra-precision transistor structures. Was awarded with government scholarship n.a U.E Sedakov. Was awarded as a programmer of the year 2018 in PROF-IT GROUP.
Key skills: Kotlin, Jetpack, Clean Architecture, MVP, MVVM, TDD, Unit tests, Mockito, Mockk, Espresso, WireMock, Custom views, View Model, Databinding, RxJava 2, Dagger 2.
1. Deep knowledge of Kotlin programming language (also know Java but prefer Kotlin).
2. Experience of use Square libraries (Dagger2, Retrofit 2, OkHttp, Picasso).
3. Use MVVM pattern and Clean Architecture approach.
4. Develop using TDD/BDD methodology (red -> green -> refactor) with Mockito and Mockk libraries.
5. Use Espresso and WireMock for UI tests.
6. Experience of using reactive programming paradigm using RxJava 2, LiveData, LiveDataReactiveStreams.
7. Advanced experience in Android Animations: Object\Value animators, Spring animation, Transition Api.
8. Experience of creating offline first applications with Room and Realm libraries.
9. Experience with Firebase (Auth, Data storage, Push messages, TestLab etc).
10. Knowledge of git and git flow methodology.
11. Knowledge of SOLID principles, common Design Patterns and algorithms.