Lead Engineer, Android

JOB DESCRIPTION

 

Engineering at Royal Caribbean International's digital division plays an integral role in creating and improving systems that are reimagining the cruise vacation industry for guests and crew alike. Join our team of highly skilled engineers to work in a fast-paced, ambitious environment that values innovative problem-solving in an industry in constant evolution.

 

Our mobile engineers collaborate in a day-to-day basis to design and develop the next generation of functionality for our Excalibur mobile app. You will develop application functionalities to support our Guests to expedite their check-in and check-out before, during and after their vacation.

 

KEY RESPONSIBILITIES

  • Lead software design, prototype, and development of Android apps.
  • Contribute best-in-class programming skills to develop highly innovative, consumer-facing mobile apps.
  • Write clean, maintainable code and performing peer code-reviews
  • Work with other team members to investigate design approaches, prototype new technology and evaluate technical feasibility
  • Work in an Agile/Scrum environment to deliver high quality software against aggressive schedules
  • Establish architectural principles, select design patterns and then mentor team members on their appropriate application
  • Work closely with product and design teams to customize our Excalibur app
  • Facilitate and drive communication between mobile engineers and back-end engineers

QUALIFICATIONS AND EDUCATION

  • Bachelor’s degree or above in Computer Science
  • 5+ years building complex, high quality Android applications, and have a strong knowledge of Android app design principles, patterns, and best practices
  • Strong proficiency with Java, Kotlin, and the Android development ecosystem
  • Deep understanding of Android platform, including different device capabilities, battery life, performance, and notifications.
  • Robust knowledge of Java, RxJava, RxBinding, Dependency Injection, Android SDK, and Android Studio.
  • Experience writing tests for Android with JUnit and Espresso
  • Experience with architectures like MVP and MVVM
  • Experience with Android frameworks/tools such as Dagger 2, Picasso
  • Ability to communicate complicated technical problems to both technical and business audiences
  • Strong knowledge of REST architecture and distributed systems
  • Experience integrating mobile clients with microservices (REST based APIs)
  • Bias for a shift-left, test-driven development
  • Strong customer focus, ownership, urgency and proactivity

WORKING CONDITIONS

  • The position will require occasional travel onboard our vessels and to other locations, domestic and international

 

#LI-IB1


Nearest Major Market: Miami