Senior Software Engineer, Mobile
Job description
About the role
Join the Demand and Ads Mobile team to build features that connect users and merchants through targeted promotions and advertisements. You will lead the development of iOS applications while focusing on high-performance code and data-driven user engagement. In this capacity, you will act as a technical leader responsible for architecting robust mobile solutions that directly impact the bottom line of the business. The position requires a deep commitment to writing efficient, scalable, and maintainable code that enhances the overall user experience. You will be instrumental in translating business requirements into technical specifications for the mobile channel. This role is critical for driving innovation within the mobile advertising and promotional ecosystem. Success in this position will be measured by the quality of the application performance and the effectiveness of the features delivered.
Key facts
What you'll do
- Architect and implement new modules for the Grab mobile application to support advertising initiatives.
- Refactor legacy code to improve maintainability and performance of the iOS codebase.
- Integrate third-party advertisement and promotional systems securely and efficiently into the mobile application.
- Develop custom user interfaces designed to increase user interaction and conversion rates.
- Conduct in-depth analysis of application performance metrics to identify and resolve bottlenecks.
- Lead technical design discussions and perform detailed code reviews to uphold strict quality standards.
- Collaborate with UX designers to translate wireframes into pixel-perfect and responsive mobile interfaces.
- Work alongside QA engineers to define test strategies and ensure the delivery of high-quality releases.
- Maintain comprehensive technical documentation for all integrations, APIs, and architectural decisions.
- Utilize analytics data to assess daily progress and prioritize tasks for the upcoming development sprint.
- Implement continuous integration and delivery pipelines to automate testing and deployment workflows.
- Troubleshoot complex production issues related to crashes and performance degradation in real-world scenarios.
- Evaluate emerging mobile technologies and libraries to determine their applicability to the product roadmap.
- Mentor junior engineers on best practices for iOS development and clean code principles.
Requirements
- Possess a minimum of 4 years of total professional experience in software development.
- Hold a minimum of 3 years of specific experience in iOS application development using Swift and Objective-C.
- Demonstrate advanced proficiency in Swift and Objective-C programming languages.
- Show a deep understanding of iOS programming paradigms including Object-OO Programming, Test-Driven Development, reactive patterns, and dependency injection.
- Exhibit knowledge of architectural patterns such as clean architecture, RIB, VIPER, or MVVM to structure codebases effectively.
- Have a proven track record of creating testable code, including designing APIs, writing unit tests, and implementing UI tests.
- Bring background in app maintenance, crash analytics analysis, remote debugging, and continuous integration practices.
- Present a portfolio of developed iOS applications or notable contributions to recognized open source projects.
- Display strong problem-solving skills and the ability to debug complex issues in a dynamic environment.
- Communicate effectively with both technical and non-technical stakeholders regarding project status and technical challenges.
Nice to have
- Experience with the RIB framework architecture is preferred.
- Familiarity with the VIPER architectural pattern is advantageous.
- Knowledge of the MVVM and Clean Architecture patterns is a plus.
- Prior work with CI/CD tools specific to mobile development is desired.
- Understanding of remote configuration and feature flag methodologies.
Practical notes
- The work location is specified as Petaling Jaya, Malaysia.
- This is a full-time employment position.
- Benefits include term life insurance, comprehensive medical insurance, and the GrabFlex customizable benefits program.
- Leave policies include parental leave, birthday leave, and Love-all-Serve-all (LASA) volunteering leave.
- Access to the Grabber Assistance Programme is available for personal support.
- FlexWork arrangements are available, including differentiated working hours.
- Grab is an equal opportunity employer committed to maintaining an inclusive workplace for all employees.