Job Openings
Senior iOS Engineer
About the job Senior iOS Engineer
Hello! We are looking for a Senior iOS developer to build and maintain our existing Swift application. You will design, develop and maintain new modules for existing applications and provide support for existing codebase. In this role, you should be able to write functional code with a sharp eye for spotting defects. Additionally, you will work with outside data sources and APIs, focus on bug fixing and application performance improvements, and demonstrate the ability to solve complex problems while maintaining high coding quality standards.
TECHNICAL COMPETENCIES:
○ Excellent troubleshooting and communication skills.
○ Strong attention to detail.
○ Experience maintaining Jira tickets according to the Agile process.
○ Contribution to creating a great UX design.
WORK EXPERIENCE:
○ Minimum of 8 years of experience with iOS development and 6 years with Swift.
○ Experience with RxSwift.
○ Experience with Reactive Programming, RxSwift, and MVVM.
○ Experience working with REST APIs on Swift.
○ Proficiency in working with REST APIs on Swift.
○ Strong and transparent communication with team members and leaders in the organization.
○ Security and penetration testing and optimizing performances across iOS.
DUTIES AND RESPONSIBILITIES:
Mobile Architecture and Development:
● Architecture Design: Design and implement scalable, maintainable, and robust architectures for mobile applications, considering factors such as platform requirements, performance optimization, and security.
● Platform Expertise: Stay updated on the latest trends, tools, and technologies in mobile development platforms (e.g., iOS, cross-platform frameworks) and leverage expertise to make informed technical decisions.
● Code Quality: Ensure high code quality by conducting code reviews, implementing coding standards, and promoting best practices such as Test-Driven Development (TDD) and code refactoring.
● Performance Optimization: Identify and implement performance optimization strategies to enhance the responsiveness, efficiency, and speed of mobile applications, including network optimization, resource management, and UI rendering.
Technical Leadership:
● Architectural Guidance: Provide architectural guidance and ensure that solutions align with the overall technical architecture and business goals.
● Code Quality: Take ownership of code quality by enforcing best practices, conducting code reviews, and ensuring adherence to coding standards.
● Technology Evaluation: Stay abreast of emerging technologies, evaluate their applicability to the project, and make recommendations for adoption or improvement.
● Problem Solving: Lead efforts to troubleshoot complex technical issues, identify root causes, and implement effective solutions.
● Scalability and Performance: Proactively address scalability and performance concerns by optimizing code, infrastructure, and system design.
● Security: Champion security best practices and ensure that applications and systems adhere to security standards and protocols.
● Supervise, manage, and motivate the mobile development team.
● Coach, guide, and mentor mobile developers to facilitate their professional growth.
● Work with external data sources and APIs to integrate into mobile applications.
● Focus on bug fixing and improving application performance.
● Solve complex problems and maintain high coding quality standards.
● Collaborate with product managers, designers, and other stakeholders to ensure successful project delivery.
● Follow Test-Driven Development (TDD) principles and write unit tests to ensure code quality.
● Maintain Jira tickets according to the Agile process.
● Contribute to the creation of a great user experience design.
● Stay updated on the latest trends and technologies in mobile development.
Scalability and Performance Optimization:
● Optimize applications for maximum efficiency and scalability.
● Lead troubleshooting and debugging activities to address system issues.
Cross-functional Team Collaboration:
● Optimize applications for maximum efficiency and scalability.
● Lead troubleshooting and debugging activities to address system issues.
Continuous Improvement and Innovation:
● Champion the adoption of new technologies and practices to enhance product capabilities.
● Encourage innovation and critical thinking among team members.
TECHNICAL COMPETENCIES:
- Experience with iOS Development using the following technologies:
○ Swift
○ RxSwift
○ Reactive Programming
○ UIKit
○ Fastlane
- Experience with Apple App Store and Google Play Store:
○ Proven track record of successfully releasing and managing mobile applications on the Apple App Store and Google Play Store.
○ Familiarity with app submission processes, including app store guidelines, submission requirements, and review processes.
○ Ability to troubleshoot and resolve issues related to app store submissions, including compliance issues and rejection reasons.
○ Experience with managing app store assets, metadata, and app store optimization (ASO) strategies to improve app visibility and discoverability.
- Firebase Experience:
○ Proficiency in using Firebase platform services, including Firebase Analytics, Firebase Authentication, Firebase Cloud Messaging (FCM), and Firebase Remote Config.
○ Experience integrating Firebase services into mobile applications to enable features such as user authentication, real-time data synchronization, push notifications, and app performance monitoring.
○ Knowledge of Firebase Cloud Firestore or Realtime Database for storing and syncing app data across devices and platforms.
○ Ability to leverage Firebase Crashlytics for crash reporting and error tracking to identify and fix issues in real-time.
○ Familiarity with Firebase Cloud Functions for implementing serverless backend logic and integrating with other Firebase services.
- Flutter experience is a plus.
○ Excellent troubleshooting and communication skills.
○ Strong attention to detail.
○ Experience maintaining Jira tickets according to the Agile process.
○ Contribution to creating a great UX design.
WORK EXPERIENCE:
○ Minimum of 8 years of experience with iOS development and 6 years with Swift.
○ Experience with RxSwift.
○ Experience with Reactive Programming, RxSwift, and MVVM.
○ Experience working with REST APIs on Swift.
○ Proficiency in working with REST APIs on Swift.
○ Strong and transparent communication with team members and leaders in the organization.
○ Security and penetration testing and optimizing performances across iOS.
DUTIES AND RESPONSIBILITIES:
Mobile Architecture and Development:
● Architecture Design: Design and implement scalable, maintainable, and robust architectures for mobile applications, considering factors such as platform requirements, performance optimization, and security.
● Platform Expertise: Stay updated on the latest trends, tools, and technologies in mobile development platforms (e.g., iOS, cross-platform frameworks) and leverage expertise to make informed technical decisions.
● Code Quality: Ensure high code quality by conducting code reviews, implementing coding standards, and promoting best practices such as Test-Driven Development (TDD) and code refactoring.
● Performance Optimization: Identify and implement performance optimization strategies to enhance the responsiveness, efficiency, and speed of mobile applications, including network optimization, resource management, and UI rendering.
Technical Leadership:
● Architectural Guidance: Provide architectural guidance and ensure that solutions align with the overall technical architecture and business goals.
● Code Quality: Take ownership of code quality by enforcing best practices, conducting code reviews, and ensuring adherence to coding standards.
● Technology Evaluation: Stay abreast of emerging technologies, evaluate their applicability to the project, and make recommendations for adoption or improvement.
● Problem Solving: Lead efforts to troubleshoot complex technical issues, identify root causes, and implement effective solutions.
● Scalability and Performance: Proactively address scalability and performance concerns by optimizing code, infrastructure, and system design.
● Security: Champion security best practices and ensure that applications and systems adhere to security standards and protocols.
● Supervise, manage, and motivate the mobile development team.
● Coach, guide, and mentor mobile developers to facilitate their professional growth.
● Work with external data sources and APIs to integrate into mobile applications.
● Focus on bug fixing and improving application performance.
● Solve complex problems and maintain high coding quality standards.
● Collaborate with product managers, designers, and other stakeholders to ensure successful project delivery.
● Follow Test-Driven Development (TDD) principles and write unit tests to ensure code quality.
● Maintain Jira tickets according to the Agile process.
● Contribute to the creation of a great user experience design.
● Stay updated on the latest trends and technologies in mobile development.
Scalability and Performance Optimization:
● Optimize applications for maximum efficiency and scalability.
● Lead troubleshooting and debugging activities to address system issues.
Cross-functional Team Collaboration:
● Optimize applications for maximum efficiency and scalability.
● Lead troubleshooting and debugging activities to address system issues.
Continuous Improvement and Innovation:
● Champion the adoption of new technologies and practices to enhance product capabilities.
● Encourage innovation and critical thinking among team members.