We are looking for an experienced Android software engineer to join Feed Media Group to work hand-in-hand with our current engineering team, music curators, customer support, and product team using cutting-edge technologies to develop new opportunities to add popular music to apps, connected fitness devices, and physical spaces. We are a small, tight-knit team of 9 engineers, so you will have the opportunity to lead Android application development efforts that enhance user engagement and provide seamless user experiences.
At FMG, we believe the best candidates are eager communicators, learn quickly, are compassionate, collaborate well with others, and have a strong desire to see their work in action. We create space for high autonomy and nurture an environment that enables a healthy work-life balance.
About Us
At Feed Media Group we are not your traditional B2B tech company - we offer a Unified Music System (UMS) that brings together all of the content, technology, and services that businesses need to deliver music experiences that engage their customers and drive music-led growth. We support brands of all sizes across health, fitness, retail, and more.
Our Stack
Hosted on AWS, our backend consists of a GraphQL API built on Node.js services that interact with MySQL, ElasticSearch, and S3. Our web frontend is written in React with TypeScript. We publish SDKs for iOS (Objective-C), Android (Kotlin), web (TypeScript), and React-Native SDKs (JavaScript).
Responsibilities
- Lead the ongoing development and maintenance of the existing Android SDK written in Kotlin, focusing on optimizing and modernizing the codebase.
- Optimize the SDK for performance, especially in streaming audio and video, ensuring smooth integration with client applications.
- Implement and refine audio streaming functionalities, ensuring minimal latency and high-quality playback.
- Define and enforce best practices for SDK architecture, focusing on modularity, reusability, and clean code.
- Ensure the SDK is easy to integrate, well-documented, and provides a seamless experience for client developers.
- Provide support to developers integrating the SDK, resolving issues, and gathering feedback for future improvements.
- Ensure efficient and secure data exchange between the SDK and backend services, optimizing for network performance and reliability.
- Implement efficient and scalable methods for capturing and reporting app events, facilitating accurate analytics and insights.
- Stay up-to-date with the latest trends and versions in Android development, proposing and implementing new technologies and patterns where appropriate.
- Collaborate closely with cross-functional teams including backend engineers, product managers, and QA to deliver high-quality features.
Requirements
- You have 5+ years of professional experience shipping Android apps to the public.
- Proficient in Kotlin and Java, with knowledge of transitioning legacy code to modern Kotlin practices.
- Strong experience with Media3, ExoPlayer, and other key Android frameworks.
- Familiarity with dependency management tools like Gradle and Maven.
- Experience in implementing and optimizing audio and video streaming solutions in Android apps.
- Familiarity with HLS, DASH, or other streaming protocols, as well as experience in handling various audio and video codecs.
- Strong understanding of Android design patterns (MVC, MVP, MVVM) and best practices applying them.
- Experience with asynchronous programming, multi-threading, and performance optimization on Android.
- Strong ability to create and maintain clear, concise, and comprehensive documentation.
- Excellent communication skills, with the ability to articulate complex technical concepts to both technical and non-technical stakeholders.
- Previous experience with SDK development, particularly in the music, media, or streaming domain.
Bonus: Experience with React Native.
Benefits
Competitive salary + equity
Flexible PTO
Work remotely
Comprehensive health, dental, vision and disability insurance along with a 401k matching plan. Full details here.
Work with a talented team and have a huge impact!
All qualified applicants will receive consideration for employment without regards to race, color, religion, sex, sexual orientation, gender identity, national origin, disability status, protected veteran status or any other basis prohibited by law. We also consider qualified applicants with criminal histories consistent with applicable federal, state and local law.