Position: Senior Android (Kotlin) developer
Company: Intellias
Experience required: 5y
English level: upper

As a team member you will:
Contribute to high quality mobile app design and architecture;
Apply software engineering design patterns to develop well-structured, modular, performant application code;
Serve as a technical mentor in mobile app development;
Perform code reviews, write unit and UI tests, and contribute to architectural planning and refactoring;
Collaborate with API teams on API design.
Requirements:
Advanced level of English, good communication skills;
5+ years of working experience in software engineering;
Extensive experience developing Android mobile native applications in Kotlin/Java;
Solid understanding of the full Android mobile development life cycle;
Strong knowledge of Android UI design principles and best practices;
Experience developing native Android applications on Android 6.0 API level 23 and above;
Experience with at least one of these design architectures: MVVM, MVC, VIPER, Clean (Onion Architecture);
Expert in UI layouts and creating adaptive layouts for various hardware configurations;
Experience writing custom views and controls;
Experience in testing high volume applications: unit test, integration test, Espresso Test, performance test;
Experience using external commercial and open source libraries;
Experience with Git and GitFlow;
A solid grasp of fundamental algorithms, data structures, and design patterns;
Portfolio of apps that you’ve built; ideally available in the Google Play App Store;
Ability to prototype new features and redesign existing ones;
Excellent problem solving, debugging skills, critical thinking, and communication skills;
Ability to effectively articulate technical challenges and solutions;
Aptitude and desire to independently learn new technologies.
Preferred Skills:
Experience in animation and graphics;
Experience in dependency injection framework (e.g. Dagger, Hilt);
Experience with Scrum/Agile methodologies;
Experience mentoring junior members;
Experience with Jetpack Navigation;
Experience with Android performance profiling tools and optimization techniques;
Experience with Open API standard (Swagger);
Experience with the Android Bluetooth stack (Classic, BLE);
Experience with push notification;
Working knowledge of Internationalization;
Advanced Gradle experience.
Bonus Skills:
Proficient in C, C++;
Experience in continuous integration and delivery (e.g. Bitrise);
Experience releasing app to the Google Play App Store;
Experience with Google Firebase Analytics and Crashlytics;
Experience with Android NDK and JNI;
Familiar with Jetpack Compose;
Experience in developing iOS mobile native applications in Swift/SwiftUI.