Senior Mobile Engineer - Kotlin Multiplatform
About the Role
As part of our mobile engineering team, this role focuses on advancing our adoption of Kotlin Multiplatform(KMP) by adapting and optimizing shared module APIs for our iOS app. While our Android codebase has already been refactored to support KMP, our iOS implementation is still in its early stages. You’ll play a critical role in leading this migration effort, ensuring the shared modules integrate smoothly with the iOS codebase while maintaining high standards for performance, usability, and reliability.
You’ll work closely with iOS engineers, Android engineers, and product stakeholders to deliver a seamless experience for our users, all while streamlining development across platforms. Simply put, you’ll help shape the way OpenPhone builds mobile apps for years to come.
Some of the areas you’ll support:
Shared Module Adaptation: Adapting and optimizing shared Kotlin modules to integrate effectively with our iOS project, ensuring APIs feel native and intuitive for iOS developers.
iOS Migration Efforts: Leading the migration of existing iOS functionality to leverage KMP while maintaining performance and usability.
Collaboration Across Platforms: Partnering with Android engineers to understand existing shared functionality and extend it to meet iOS requirements.
Code Refactoring: Improving and modernizing the iOS codebase to align with KMP principles, making it more modular and maintainable.
Scalability: Ensuring shared components are scalable and provide a strong foundation for future cross-platform development.
Your contributions will directly impact our ability to scale efficiently across platforms while delivering a best-in-class mobile experience.
Technical Stack and Tools
Our Android codebase is built in Kotlin and has been architected to support KMP.
iOS development is primarily in Swift and RxSwift, with SwiftUI for new features and UIKit where necessary.
Shared modules leverage KMP with tools like Ktor, SQLDelight, and kotlinx.serialization.
Collaboration tools include Linear, Slack, and Notion, with Figma for design handoff and UI collaboration.
About You
You have significant experience with Kotlin Multiplatform and a proven track record of integrating shared modules into native iOS projects.
You’re highly skilled in iOS development and understand how to adapt Kotlin APIs to feel native for iOS.
You have a strong understanding of mobile architecture patterns and experience refactoring and modernizing legacy codebases.
You enjoy solving complex problems, writing maintainable and testable code, and ensuring that the shared codebase works seamlessly across platforms.
You thrive in cross-functional teams and are an effective communicator who enjoys working with engineers from different domains.
You’re proactive, curious, and excited to help drive innovation in cross-platform mobile development.
The annual base salary range for this position is $197,000 - $217,000 CAD, plus equity and benefits.
The range displayed reflects the target for new hire salaries, and within this range, individual pay is determined by your skills and experience, as well as relevant education. Your recruiter can share more and answer questions about the specific salary range during the hiring process.
Salary is just one component of OpenPhone’s total compensation package. Your total rewards package will include equity, extensive medical coverage, a monthly lifestyle stipend, and a flexible PTO policy.
About the job
Apply for this position
Senior Mobile Engineer - Kotlin Multiplatform
About the Role
As part of our mobile engineering team, this role focuses on advancing our adoption of Kotlin Multiplatform(KMP) by adapting and optimizing shared module APIs for our iOS app. While our Android codebase has already been refactored to support KMP, our iOS implementation is still in its early stages. You’ll play a critical role in leading this migration effort, ensuring the shared modules integrate smoothly with the iOS codebase while maintaining high standards for performance, usability, and reliability.
You’ll work closely with iOS engineers, Android engineers, and product stakeholders to deliver a seamless experience for our users, all while streamlining development across platforms. Simply put, you’ll help shape the way OpenPhone builds mobile apps for years to come.
Some of the areas you’ll support:
Shared Module Adaptation: Adapting and optimizing shared Kotlin modules to integrate effectively with our iOS project, ensuring APIs feel native and intuitive for iOS developers.
iOS Migration Efforts: Leading the migration of existing iOS functionality to leverage KMP while maintaining performance and usability.
Collaboration Across Platforms: Partnering with Android engineers to understand existing shared functionality and extend it to meet iOS requirements.
Code Refactoring: Improving and modernizing the iOS codebase to align with KMP principles, making it more modular and maintainable.
Scalability: Ensuring shared components are scalable and provide a strong foundation for future cross-platform development.
Your contributions will directly impact our ability to scale efficiently across platforms while delivering a best-in-class mobile experience.
Technical Stack and Tools
Our Android codebase is built in Kotlin and has been architected to support KMP.
iOS development is primarily in Swift and RxSwift, with SwiftUI for new features and UIKit where necessary.
Shared modules leverage KMP with tools like Ktor, SQLDelight, and kotlinx.serialization.
Collaboration tools include Linear, Slack, and Notion, with Figma for design handoff and UI collaboration.
About You
You have significant experience with Kotlin Multiplatform and a proven track record of integrating shared modules into native iOS projects.
You’re highly skilled in iOS development and understand how to adapt Kotlin APIs to feel native for iOS.
You have a strong understanding of mobile architecture patterns and experience refactoring and modernizing legacy codebases.
You enjoy solving complex problems, writing maintainable and testable code, and ensuring that the shared codebase works seamlessly across platforms.
You thrive in cross-functional teams and are an effective communicator who enjoys working with engineers from different domains.
You’re proactive, curious, and excited to help drive innovation in cross-platform mobile development.
The annual base salary range for this position is $197,000 - $217,000 CAD, plus equity and benefits.
The range displayed reflects the target for new hire salaries, and within this range, individual pay is determined by your skills and experience, as well as relevant education. Your recruiter can share more and answer questions about the specific salary range during the hiring process.
Salary is just one component of OpenPhone’s total compensation package. Your total rewards package will include equity, extensive medical coverage, a monthly lifestyle stipend, and a flexible PTO policy.