Company Description
Yoyo is on a mission to empower companies to delight their customers by creating delight in every connection. We power some of the SA's leading brands with seamlessly integrated loyalty and rewards software solutions.
We're not just a team; we're a powerhouse of passionate and world-class talent, minds, and creativity. Our values are like our North Star, guiding us toward greatness every step of the way.
We're all about crafting a workplace where you can spread your wings and soar. Think cutting-edge ideas meeting top-notch tech, creating products that make a significant impact in the world of loyalty and rewards. It's not just about boosting business; it's about driving growth and fuelling expansion until we are creating delight in every connection.
Job Description
We are seeking a skilled Android Mobile Engineer to join our innovative Collab team. Yoyo Collab is our professional services business unit where our team works on secondment inside large corporates building out their product vision and strategy. In this role, you will be responsible for developing high-quality mobile applications for Android, working closely with designers and backend engineers to deliver seamless, high-performance user experiences.
You will focus primarily on Android mobile applications, but if you have experience with iOS, you will have the opportunity to switch between platforms based on capacity and project needs. The role emphasizes full app development, from design to implementation, with deployment being the responsibility of tech leads.
Duties / Responsibilities
Android Application Development: Design, develop, and maintain Android applications using Kotlin, transitioning from Java, and building new features with Jetpack Compose.
Code Quality & Reviews: Participate in code reviews to maintain high standards of code quality, follow best practices, and ensure proper documentation. Engage in dev review sessions across all teams working on the same source code.
Collaboration: Collaborate with other Android developers, iOS developers, backend developers, and designers to ensure smooth communication and consistency across all platforms and features.
Agile/Scrum Participation: Participate in Agile/Scrum ceremonies like Grooming, Sprint Planning, Sprint Review, and Retrospectives, contributing to discussions around sprint goals and feature development.
API Integration: Work closely with backend developers to integrate RESTful APIs and ensure efficient data flow between the Android app and server.
Database Management: Utilize Room for database management, contributing to the transition from SQLite as part of the project's evolution.
Testing & Debugging: Perform unit and integration testing using Mockito, PowerMock, and JUnit, and debug issues with tools like Android Studio Profiler to ensure optimal app performance.
CI/CD: Manage CI/CD pipelines via App Center, ensuring proper deployment and tracking of builds and issues.
Performance Optimization: Optimize Android applications for performance, scalability, and responsiveness, ensuring a seamless user experience on a variety of Android devices.
Continuous Learning: Keep up with the latest Android development trends, tools, and best practices, and contribute innovative ideas to improve the Android app and codebase.
Cross-platform Collaboration: If applicable, collaborate with iOS teams and provide insights into maintaining consistency across both platforms.
Knowledge, Skills & Aptitudes
Proficiency in Android development using Kotlin and some Java.
Strong understanding of Jetpack Compose for UI development and transitioning from XML layouts.
Experience with Room (or transitioning from SQLite) for database management.
Proficiency with Retrofit for API consumption and network handling.
Experience with unit testing frameworks (e.g., Mockito, PowerMock, JUnit).
Solid understanding of Dagger Hilt for dependency injection.
Experience with kotlinx coroutines for handling concurrency and asynchronous operations.
Proficiency with CI/CD pipelines, particularly App Center.
Familiarity with GitFlow for version control.
Knowledge of mobile security best practices (e.g., data encryption, secure storage).
Experience with Agile/Scrum methodologies.
Strong debugging and problem-solving skills, with experience using tools like ADB, Android Studio Profiler.
Experience with Google Play Store guidelines and app management.
Experience with iOS development (using Swift/Objective-C and SwiftUI/Storyboards/XIBs) would be a plus.
Qualifications
A relevant tertiary level qualification (BSc, BTech or BEng) in Computer Science, Mobile Development, Information Systems or similar technical field.
7+ years of experience in Android (native) development.
Additional Information
Ideal Candidate:
Someone with strong analytical skills and a proactive approach to troubleshooting.
Excellent verbal and written communication skills.
Ability to work collaboratively in an agile environment.
Someone who places value on respect and diversity in the workplace.
Self-starter who is able to work independently.
The Perks at Yoyo:
Learning & development opportunities.
Hybrid working arrangement.
Flexible working hours.
On-site barista with the best coffee in town.
Subsidised and healthy meals at an in-house café.
Croissant & fruity days in the office.
Weekly socials & an annual social calendar to include the family.
Employee wellbeing with Strove.
Employee reward scheme with Zuzo.
Generous leave policy.
Our Yoyo Values, we are looking for a team member that will always live out and demonstrate behaviours aligned to our values:
Be extremely customer centric: in everything we do, serve and delight our customers, using data to continuously improve.
Be a passionate team player: spiral up, be positive, bring momentum, and energy to those around you, leave ego at the door and be teachable.
Be an owner: be accountable and take responsibility. Find solutions, learn from your mistakes and own tasks to completion.
Be world-class at speed: delivering world leading solutions that delight our clients and customers.
Be curious and creative: constantly innovating, exploring, learning, stretching ourselves, pushing the boundaries and thinking out of the box.
#J-18808-Ljbffr