Yoyo

Senior Mobile Engineer, iOS

Yoyo

full-time

Posted on:

Location Type: Remote

Location: Mauritius

Visit company website

Explore more

AI Apply
Apply

Job Level

Tech Stack

About the role

  • Develop innovative new features: evaluate user journeys, design implementations from product specifications, write great code and collaborate with your team to deliver features
  • Contribute technical ideas to improve our products and refine our development process, we have a well defined roadmap for technical improvements on our iOS codebase
  • Translate designs into efficient, maintainable and reusable code and tests
  • Participate in code review to integrate changes with the existing codebase
  • Use performance metrics to build a delightful experience for our users. Allow data to drive decisions about what to refactor
  • Use your time effectively and take ownership of your work. Support other members of the team, communicate and participate
  • Participate in our engineering culture. Attend daily stand-ups, plan with your team and share knowledge

Requirements

  • Good knowledge of Swift and UIKit
  • Experience working with a component library and style guide
  • Good understanding of SOLID principles
  • Experience with Functional Reactive Programming (FRP), particularly RxSwift and/or Combine
  • Experience consuming RESTful APIs, and collaborating in their design
  • Experience with unit testing (XCTest) and, equally important, writing testable code
  • Experience with Git and Github
  • Comfortable working with CI/CD processes
  • Familiarity with the process of creating and shipping apps (provisioning profiles, certificates, App Store Connect, TestFlight, etc)
  • Familiarity with common architectural patterns (MVC, MVVM, etc)
Benefits
  • Remote work options
Applicant Tracking System Keywords

Tip: use these terms in your resume and cover letter to boost ATS matches.

Hard Skills & Tools
SwiftUIKitSOLID principlesFunctional Reactive ProgrammingRxSwiftCombineRESTful APIsunit testingXCTestCI/CD
Soft Skills
collaborationcommunicationownershiptime managementparticipationknowledge sharing