iOS Developer
4 days ago
Job Purpose:
Develop and maintain our innovative platforms on the iOS platform, ensuring code is generated that is in accordance with specifications, and which is neat, accurate and scalable. Work will mainly focus on maintaining and upgrading our solutions platform, as well as providing guidance from an iOS best practice perspective for products in the rest of the company. Work might also include mentoring other iOS developers.
Minimum education (essential):
National Senior Certificate
Minimum education (desirable):
Tertiary education diploma/degree relevant to software development.
3 year degree in computer science or equivalent.
Minimum applicable experience (years):
3 - 5 years as an iOS Developer
Required nature of experience:
Experience in implementing and delivering native iOS applications of 1 or more projects.
Skills and Knowledge (essential):
- Programming Languages and Concepts
- Swift (Advanced)
- Concurrency - Grand Central Dispatch (GCD), Operation Queues, Tasks
- Memory Management
- iOS best practices
- iOS Frameworks and SDK's
- Animation - Core Animation/ SwiftUI animation
- Lottie
- Combine
- Core Data
- RxSwift
- Core Bluetooth/ RxBluetoothKit
- Development Tools
- Command Line Tools
- Continuous Integration/ Continuous Deployment CI/ CD (Xcode Cloud, GitHub Actions)
- Profiling
- Version Control
- Complex Git workflows (rebasing, cherry-picking, git-bisect)
- App Architecture and Design Patterns
- Dependency Injection
- Networking
- SSL
- User Interface Design
- Custom Transitions and Animations
- Accessibility
- Localization and Internationalization
- Data Persistence
- Core Data models and migrations (Intermediate)
- Testing
- Unit testing - mocking, stubbing (Advanced)
- Performance Testing
- App life cycle
- Background Execution
- Additional Skills
- Human Interface Guidelines
- App Review Guidelines
- Collaborate in the application lifecycle (planning, design, development, deployment, maintenance) collaborating with stakeholders for requirements.
- Continuously research and evaluate new technologies to optimize development efficiency.
- Plan and design well-structured, reusable application architecture.
- Implement and develop according to best practices to ensure high-quality, maintainable systems.
- Participate in project planning by providing estimates, contributing to requirement documentation, and assisting with work breakdown structures.
- Participate in user story creation, estimation, and work plan development, ensuring clear communication of requirements.
- Effectively prioritise, and manage dependencies to ensure timely completion, and switch contexts effectively when the need arises.
- Collaborate effectively with development teams to solve problems, make recommendations, and discuss best practices.
- Proactively identify and mitigate code related risks, adapting as needed.
- Track tasks and progress within JIRA.
- Develop software adhering to project plans, deadlines, and coding standards.
- Develop and maintain high-quality, maintainable systems using efficient and reusable code according to best practices.
- Use version control effectively and according to best practices, as well as backing up other work according to company standards.
- Prepare and maintain testing environments, including examples and instructions.
- Conduct initial testing and assist in developing testing plans.
- Implement and maintain automated tests and component libraries according to team practices.
- Analyse systems to identify root causes of issues within a system, develop workarounds, and implement permanent fixes.
- Deliver thoroughly tested and performance benchmarked work that meets functional requirements before deployment.
- Deploy changes to the production environment following established procedures.
- Implement and maintain DevOps processes, including CI/CD pipelines and Infrastructure as Code as applicable to the team.
- Maintain up to date and accurate code and system level documentation.
- Provide clear, timely, and efficient updates on project status, progress, risks, and potential problems to the team lead.
- Prepare reports, manuals, and other documentation related to software status, operation, and maintenance.
- Maintain accurate system and product change logs, release notes and notifications to other teams, according to company standards and team practices.
- Offer insights and feedback on queries regarding relevant projects.
- Collaborate effectively with team members and stakeholders, by being available on appropriate communication channels with timeous, well-articulated responses.
- Take ownership of projects.
- Actively participate in peer code reviews, discuss best practices, and contribute innovative ideas to projects.
- Collaborate with the team to solve problems and ensure successful project delivery - on time and as spec'd.
- Contribute to the development of fellow team members through knowledge sharing and promoting best practices.
- Deliver high-quality products that meet specifications, user requirements, best practices, deadlines, and regulatory compliance (e.g., FDA, CE, ISO).
- Apply knowledge of the Quality Management System guidelines and its relevant processes to ensure quality and SOC2 compliance in medical device and other software.
- Ensure all testing adheres to defined specifications.
- Contribute to safeguarding information and data in accordance with company policies.
- Keep all supporting documents up to date.
You can visit our website for more vacancies: / LinkedIn
-
iOS Developer
21 minutes ago
Pretoria, Gauteng, South Africa Discovery Limited Full timeDiscovery – Group Information Services - Digital ChannelsSenior iOS Developer – Mobile TeamAbout DiscoveryDiscovery's core purpose is to make people healthier and to enhance and protect their lives. We seek out and invest in exceptional individuals who understand and support our core purpose, and whose own values align with those of Discovery. Our...
-
Full-Stack Mobile Developer
2 days ago
Pretoria, Gauteng, South Africa Paracon Full time R100 000 - R150 000 per yearAre you a dynamic Intermediate developer with a passion for building robust, end-to-end software? We're looking for a motivatedAre you a dynamic Intermediate developer with a passion for building robust, end-to-end software? We're looking for a motivated Junior Full-Stack Developer with Mobile Development experience to join our team, working across modern...
-
Senior Mobile Applications Developer
4 days ago
Pretoria, Gauteng, South Africa Hire Resolve Full time R800 000 - R1 200 000 per yearHire Resolve's client is looking for an experienced mobile developer to join their team. You will be working with other senior developers to build in-house software solutions used by thousands of users across the world.Responsibilities:- Design and develop mobile applications using Flutter framework- Collaborate with cross-functional teams to define, design,...
-
Pretoria, Gauteng, South Africa Hire Resolve Full time R900 000 - R1 200 000 per yearHire Resolve's client is looking for a Intermediate to Senior Mobile Applications Developer to join their team in Pretoria, GP. You will be working with other senior developers to build in-house software solutions used by thousands of users across the world. We would like to meet you if you're passionate about mobile platforms and translating code into...
-
Mobile Development Lead: Android
4 days ago
Pretoria, Gauteng, South Africa Boardroom Appointments Full time R1 000 000 - R3 000 000 per yearMinimum Requirements:BSc in Computer Science / Engineering or other applicable technical discipline7+ years working experience 2+ years of managing a teamHands on Android software developer having been responsible for the development and maintenance of 1 or more projects Line management of Android developers (and iOS devs a plus)Team culture, coaching and...
-
Mobile Application Developer
1 week ago
Pretoria, Gauteng, South Africa Munch Software Full time R300 000 - R600 000 per yearAt Munch, we're reinventing dining with a seamless mobile order-and-pay experience. Our all-in-one platform powers everything from PoS and kitchen management to guest ordering and business insights — making restaurants smarter, faster, and more enjoyable for everyone.Join us and help build the product that's transforming the future of food...
-
Senior React Native Developer
1 week ago
Pretoria, Gauteng, South Africa SmarTek21 Full time R150 000 - R250 000 per yearAbout the RoleAt Retro Rabbit, we're all about building beautiful, scalable products that make a real impact.We're looking for a Senior React Native Engineer who brings technical depth, creativity, and the ability to lead by example. You'll architect and deliver mobile solutions that are secure, high-performing, and built to last while mentoring others and...
-
Functional Mobile Tester
35 minutes ago
Pretoria, Gauteng, South Africa DVT Full timeDVT is looking for a detail-oriented Manual/Functional Mobile Tester for a 6 month project in Centurion.Key ResponsibilitiesDesign, execute, and document manual test cases for web and mobile applications, with an emphasis on hardware device testing.Perform functional, regression, integration, and exploratory testing across multiple devices and browsers.Use...
-
Level 3 Support Engineer
2 days ago
Pretoria, Gauteng, South Africa Rosstone Professional Solutions Full time R198 000 - R594 000 per yearLevel 3 Support EngineerLocation: Client's campus – PretoriaDuration: 12 months contract – possibility of extensionPurpose:Provide expert-level technical support by diagnosing and resolving complex escalated issues that Level 1 and 2 supports cannot solve.Work with Level 1 and 2 support to understand escalated problems and, when necessary, escalate...
-
Senior React Lead
1 week ago
Pretoria, Gauteng, South Africa SmarTek21 Full time R800 000 - R1 200 000 per yearAbout the RoleAt Retro Rabbit, we don't just build apps; we create experiences that move industries forward.We're looking for a Senior React Consultant who thrives at the intersection of technology, architecture, and mentorship. Someone who can shape scalable solutions, guide technical direction, and still roll up their sleeves to write clean, elegant...