Senior Software Engineer - (iOS) | Fulltime
Job Description:
Job purpose:
Execute the software development life cycle of applications and programs (installation; configuration; deployment; analyzing; documenting; coding/development; and unit testing).
Key accountabilities and decision ownership:
-
Interpret the customer requirements into deliverables (code; installation of a system; deployment. … etc.) and ensure they are well mapped with the requirements
-
Participate in the time estimation of projects (when needed) while following the project plan and timeline as well as the organization processes and standards
-
Execute the software lifecycle following the agreed on methodology
-
Deliver the code as per the agreed on technology stack while following the coding and security guidelines as well as quality standards
-
Create and execute unit test cases
-
Document the code
-
Contribute to code review and project design (when needed)
-
Report work progress; technical issues; risks and changes in delivery dates to the technical lead and the project manager
-
Support junior members of the team when needed
-
Additional accountabilities in case of full stack/frontend assignment:
-
Convert visual screens to UI elements for any portal or application
-
Create prototypes using UI technologies
Job Requirements:
-
Must have professional qualifications:
-
Bachelor's degree in computer science or equivalent
-
3+years of relevant experience
Required knowledge:
-
Swift mastery: optionals, protocols, generics, extensions, async/await, property wrappers.
-
UI frameworks: UIKit + SwiftUI basics (views, state, navigation).
-
Concurrency: GCD, async/await, Combine basics.
-
Data persistence: CoreData, UserDefaults, Keychain basics.
-
Networking: URLSession, REST APIs, basic GraphQL.
-
Testing: XCTest, unit tests, snapshot testing.
-
App lifecycle & memory: retain cycles, ARC, Instruments basics.
-
App distribution basics: provisioning profiles, App Store/TestFlight builds.
Equal opportunity:
All qualified applicants will receive consideration for employment without regard to age, religion, gender, nationality or disability. All qualified candidates will be considered in the process
-
Education
-
Bachelor's degree in computer science or equivalent