Android Software Engineer

Churchill DownsGrymr-Devndle, KY
8d

About The Position

TwinSpires is the premier online horse racing wagering platform in the United States. TwinSpires is owned and operated by Churchill Downs, Inc., and is the official online betting partner of the Kentucky Derby, bringing you more than 148 years of wagering experience. Players can wager through the TwinSpires desktop, mobile, and app-based advance-deposit wagering platforms as well as at retail locations and race tracks across the country.JOB SUMMARY The Android Software Engineer will work as part of our mobile platform team, developing and maintainingnative Android applications using modern Android technologies including Kotlin, Jetpack Compose, andMVVM architecture. This role works in an Agile Kanban environment alongside iOS developers, contributingto shared Kotlin Multiplatform business logic and coordinating cross-platform feature development. Theposition requires strong collaboration skills, technical excellence, and a commitment to team success.

Requirements

  • Kotlin: Strong proficiency in Kotlin as the primary development language for Android
  • Architecture: Hands-on experience with MVVM (Model-View-ViewModel) architecture pattern
  • Asynchronous Programming: Expert knowledge of Kotlin Coroutines and Flows for managingasynchronous operations
  • Android Lifecycle: Deep understanding of the Android Application Lifecycle and proper use of lifecycle-aware components
  • UI Development: Proficiency with Jetpack Compose for modern UI development
  • Experience with XML-based view system for maintaining and migrating legacy code
  • Knowledge of Compose/XML interop patterns
  • Dependency Injection: Experience with Hilt for dependency management
  • Networking: Strong experience working with REST APIs for data fetching and display
  • Local Storage: Proficiency with Room ORM and SQLite for local data persistence and caching
  • Version Control: Experience with Git and GitHub workflows
  • Best Practices: Familiarity with Google's Android development best practices and staying current withofficial guidance
  • Complex Applications: Demonstrated ability to work effectively in large, complex codebases
  • Bachelor's degree in Computer Science, Software Engineering, or related technical field, OR equivalentpractical experience with demonstrable Android development work
  • 3+ years of professional software development experience
  • 2+ years of hands-on Android application development experience, including:Building and maintaining production Android applications
  • Working with modern Android development tools and practices
  • Collaborating with cross-functional teams in an Agile environment

Nice To Haves

  • Kotlin Multiplatform (KMP): Experience with Kotlin Multiplatform for shared business logic acrossAndroid and iOS
  • iOS Development: Familiarity with iOS development (Swift, SwiftUI, UIKit) to facilitate cross-platformcollaboration
  • CI/CD: Experience with GitHub Actions for continuous integration and deployment pipelines
  • Firebase: Knowledge of Firebase services including Analytics and Remote Config
  • Product Flavors: Experience implementing and managing Android Product Flavors for white-labelapplications
  • Cross-Platform Collaboration: Experience working on integrated teams with both Android and iOSdevelopers

Responsibilities

  • Develop and maintain advanced Android applications using Kotlin, Jetpack Compose, MVVM architecture,and modern Android development patterns
  • Collaborate closely with iOS developers to build and maintain shared Kotlin Multiplatform business logicthat works effectively across both platforms
  • Work effectively on a cross-functional, diverse Agile team, including remote team members and externalstakeholders
  • Ensure performance, quality, and scalability in all aspects of the Android development lifecycle
  • Participate actively in peer code reviews, providing constructive feedback and ensuring code qualitystandards
  • Work effectively with platform leads, product management, design, backend teams, and stakeholders todefine, refine, plan, ship, and maintain new features
  • Write comprehensive unit and integration tests for Android applications to ensure reliability andmaintainability
  • Identify and implement appropriate technological solutions to meet team goals, following Google's Androiddevelopment best practices
  • Triage, diagnose, and fix defects in Android applications
  • Help foster a culture of innovation, experimentation, curiosity, and teamwork
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service