As a Software Development Engineer- iOS, you will work in a fast-paced environment where agile development is embraced. You will have an unique opportunity to build and maintain features on a large scale and take tech initiatives to maintain the codebase for the fastest-growing e-commerce platform in India. The ideal candidate will have strong software design skills, extreme ownership, and a desire to execute quickly and robustly on a product with a big business impact.
What you will do
- Develop and deliver new product features for our iOS application.
- Ensure the optimal performance, quality, and responsiveness of the app.
- Collaborate with team members to define, design, and ship new features.
- Provide architectural inputs and help maintain code quality.
- Write Unit tests against new and existing codebase.
What you will need
- User First Mindset is a must when developing products for users.
- Experience having worked on one or more iOS Production Apps in the past (Apps published to the App Store are a plus)Familiarity with iOS, Swift, Xcode, SwiftUI, Cocoa framework, Combine framework, and the ecosystem.
- Familiarity with Apple Design guidelines, common mobile UX patterns, and anti-patterns.
- Good understanding of core iOS concepts such as Custom Views, UIKit, table views, scroll views, auto layouts, GCD, etc. Solid understanding of memory management with and without ARC.
- Ability to write clean, maintainable code.
- Ability to decrease tech debt, review code, and suggest good practices.
- Experience with different programming paradigms, OOPS, functional, etc.
- Good understanding of SOLID principles and their application in the code to solve and build complex systems. Familiarity with consuming REST APIs, and JSON encoding/decoding.
- Familiarity with Git and continuous integration.
- Proficiency at debugging and app profiling including identifying memory leaks and performance bottlenecks.
- Experience with writing unit tests.
- Hands-on experience with design patterns like MVVM, and Clean Swift.