ABOUT US<\/b>
<\/p>
Founded in 2009, we are now a melting pot team based in Lisbon, Porto & Boston that has deployed more than 200 projects for our world\-class clients.
<\/p>
Our team is made up of people with amazing knowledge on Design, Usability and Web/Mobile based Software. We're a user\-centred & quality software\-driven company. And we work with a passion for creating something new and cool.
<\/p>
Our goal is to find out ways to make your (and our users') life bliss.
<\/p>
Whether an iOS & Android mobile application for a fintech or a multi\-platform e\-commerce solution, we have the talent to meet our client's needs and beyond.
<\/p>
<\/p>
ROLE DESCRIPTION<\/b>
<\/p>
<\/p>
Join a team of 5 Android developers dedicated to developing and maintaining the Moey! Android app.
<\/p>
<\/p><\/span>
Requirements<\/h3>- Strong proficiency in Kotlin<\/b>: Ability to write clean, maintainable, and idiomatic Kotlin code, with solid understanding of coroutines, flows, and common design patterns.
<\/li>- Android SDK expertise (Compose\-first)<\/b>: Strong experience building modern Android UIs using Jetpack Compose as the primary framework, with good understanding of state management and UI best practices. Familiarity with the View system is a plus.
<\/li>- Architectural patterns (MVVM / Clean)<\/b>: Practical experience applying MVVM and familiarity with Clean Architecture principles, including separation of concerns and modularization.
<\/li>- Networking and API integration<\/b>: Experience consuming RESTful APIs using Retrofit/OkHttp, including error handling, pagination, and basic caching strategies.
<\/li>- Dependency injection<\/b>: Hands\-on experience with DI frameworks such as Hilt or Dagger, and understanding of dependency management principles.
<\/li>- Gradle and build configuration<\/b>: Comfortable managing dependencies, build variants, and optimizing build configurations using Gradle.
<\/li>- Data persistence<\/b>: Experience with Room and understanding of local data caching strategies; familiarity with DataStore or SharedPreferences.
<\/li>- Testing<\/b>: Ability to write unit tests and basic UI tests using tools like JUnit, Mockito, or Espresso.
<\/li>- Git and collaboration workflows<\/b>: Comfortable with branching strategies, pull requests, code reviews, and resolving merge conflicts.
<\/li>- Performance and debugging<\/b>: Experience using Android Studio tools for debugging, profiling, and performance optimization (e.g., memory leaks, UI performance).
<\/li>- App lifecycle and state management<\/b>: Solid understanding of Android lifecycle and handling configuration changes and state.
<\/li>- CI/CD basics<\/b>: Familiarity with CI/CD pipelines and automated builds (e.g., GitHub Actions, Bitrise, Jenkins).
<\/li>- Agile methodologies<\/b>: Experience working in Agile environments (Scrum/Kanban), collaborating with cross\-functional teams.
<\/li><\/ul>
<\/div><\/span>