← Back to remote jobs
DVT

DVT

Senior iOS Developer (IC)

View company profile →
Fully RemoteEngineeringseniorSouth Africa

Salary

Not listed

Posted

1h ago

Work setup

Fully Remote

iOS

Job Title: Senior iOS Developer

ROLE OVERVIEW

The employed individual will be challenged with access to a range of projects at clients across industries, working with other experienced technologists whose single pursuit is optimal value creation for our customers through the construction of peerless solutions. This dynamic self- starting individual will be involved in the definition of development best practices and serve as team’s authority on creation of code quality and development of sound front-end architecture to ensure successful delivery on hundreds of software development assignments. You would have the opportunity to be involved with both consulting projects and internal projects.

KNOWLEDGE

  • Interaction design and user experience guidelines
  • iOS – Objective C and Swift
  • Design patterns
  • Parsing and consuming XML and JSON
  • Working with RESTful services
  • Unit testing, integration and functional testing
  • Using version control systems – Git, SVN, TFS

SKILLS

  • Solutions design and implementation
  • Improving the design of existing code
  • Keep up to date with technology
  • Ability to Multitask
  • System design and analysis
  • Ability to conceptualise and simplify complex problems
  • Ability to read and write specifications
  • Good communications skills
  • Ability to self-manage and not rely on detailed instruction from a manager

ATTITUDES

  • Enthusiastic and committed
  • Work with minimal supervision
  • Work in a team environment
  • Ability to work under pressure
  • Delivery focused
  • Work to achieve tight deadlines
  • Professionalism (conduct and appearance)
  • Motivated
  • Show initiative
  • Awareness of the environment

RESPONSIBILITIES

  • Developing, maintaining and debugging of software applications
  • Testing of independent modules and complete applications making use of automated and manual testing techniques
  • Working with project managers, technical leads and customers to provide task estimates, report on progress and discuss implementation details
  • Following and contributing to the improvement of software architecture, coding standards and practices being observed within the team environment
  • Designing of solutions that are maintainable, efficient, performant and secure
  • Refactoring source code to improve system design
  • Resolving software defects in collaboration with software test analysts
  • Conducting peer reviews of project code
  • Consume and create technical documentation such as specification documents, UML diagrams, user stories, wireframes etc.
  • Tackling hard problems in iOS such as Graphics, Performance issues, Security, Bash scripting and build script issues
  • Able to approach problems with BDD and TDD
  • Being able to take on POC work in quick stints with vital feedback
  • Being able to create Linting rules on top of the basic rules, Swift Lint
  • Creation of Universal Apps for iPhone and iPad OS
  • Using a version control system to manage code changes
  • Configure, optimise and deploy applications for public release
  • Managing the submission of applications to online repositories and app stores

MINIMUM REQUIREMENTS

  • Bachelor’s Degree in Informatics, Computer Science, Engineering or other related qualification
  • 5+ years’ experience in mobile software development
  • Preferably in a banking, insurance or telecoms industry
  • Experience in SDLC methodologies such AGILE (SCRUM)

TO BE SUCCESSFUL IN THIS ROLE, YOU WILL NEED:

  • Knowledge of iOS First party API’s / Frameworks ( AV Foundation, WatchKit, CoreGraphics, MapKit, CoreImage etc.)
  • Sufficient knowledge of third-party libraries (AlarmoFire, Realm, Cocopods, RxSwift etc.)
  • Fastlane
  • Knowledge of App Store connect and releasing of applications
  • Ability to modularise iOS applications with Cocoapods
  • Knowledge of Dependency Injection and Frameworks (Swinject)
  • Knowledge of Android First party API’s/Frameworks ( Services, Broadcast Receivers, Notifications, Camera etc.)
  • Good knowledge of Jetpack libraries ( Navigation, Room., ViewModels, Work Manager etc.)
  • Understanding of different programming paradigms (Reactive, Functional, POP etc.)
  • MutiThreading in iOS
  • Deep dive into Unit testing with Frameworks such as OCMock, Cuckoo, Quick & Nimble
  • Deeper knowledge of Architectural approaches like Offline-First, Redux based architecture and common ones like MVP and MVVM and VIPER
  • Good understanding of DevOps in iOS
  • Carthage knowledge
  • Knowledge of Swift package manager
  • KeyChain management
  • SSL pinning
  • Instruments for profiling iOS Apps
  • Scheme and build configuration management

Before you apply

  • Confirm async-friendly culture vs daily standup-heavy expectations
  • Ask about on-call rotation and incident expectations
  • Check the tech stack matches what you actually want to use day-to-day

Interested in this role?

Apply on the original posting. No account required.

Listing via Himalayas

Apply Now →
Share this role
XLinkedIn

Hiring? Feature your remote role — homepage spotlight and top of search.

Post a job — from $0 →

More jobs at DVT

More Engineering remote jobs

Similar roles by skill

Get similar jobs by email