iOS Developer (Senior)
Discovery – Group Information Services - Digital Channels
Senior iOS Developer – Mobile Team
About Discovery
Discovery’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 fast-paced and dynamic environment enables smart, self-driven people to be their best. As global thought leaders, Discovery is passionate about innovating in order to not only achieve financial success, but to ignite positive and meaningful change within our society.
About Digital Channels
Working in a high performance organization that prides itself in attracting the finest talent, we challenge ourselves to find solutions that make a difference in the world. Our environment is always buzzing with energy and smart, motivated people working on finding the best way to move forward.
The Digital Channels team works on dynamic new projects and product enhancements within the web and mobile platforms in order to improve business inefficiencies, gain competitive advantage on our products and ultimately to provide better service to our clients. Using knowledge of the organization’s technology infrastructure and specific software applications, Application Platform Services helps the business to address changes through technologies.
Key Purpose
This team is responsible for the Discovery member application published to the Play Store. They work with other Discovery business units to deliver innovative solutions to all members.
Within the Digital system area, the iOS developer will work on the Discovery application together with Product Owners from various business units, Business Analysts, UX/UI designers & Content Teams, System Architect, and managers to understand the overall business need and the requirements, design the system solution using various approaches and technologies, implement the designed solution in the system with high quality source code.
iOS developers support the projects throughout the project lifecycle, including requirements, design, implementation, release, and post release support.
iOS developers in the Digital area must be able to technically support and maintain the deployed applications on dev, test and production environments.
Areas of responsibility may include but not limited to
Senior iOS developers must have a competent understanding of:
- The system development life cycle and can explain the developer’s role in each stage
- The defined system development tools, processes and workflows
- The distinction between business, functional and non-functional requirements and how to implement them
- The importance of delivering high quality source code and how to achieve it
- The technologies used and the systems components structure
- The domain and business terminologies and link them back to system implementations
Senior iOS developers should be able to demonstrate that they can:
- Develop, test, and maintain the deployed application software with high quality
- Collaborate with product managers and designers to ensure a successful, high-quality product and great user experience
- Analyse, maintain and enhance existing application and troubleshoot issues with efficiency.
- Perform accurate development estimation
- Produce technical specifications and designs. Participate in new business development through ideation, prototype development, and project estimates
- Research new techniques, tools, and best practices and share that knowledge with the team and community
- Maintain high standards
- Analytical and problem solving skills
- Self-starter who takes ownership, is accountable, and is able to work under minimum supervision
- Excellent written and verbal communication skills
- Can help with quality assurance and provide comments
- Within 6 months of being in the position, a senior iOS developer should be able to demonstrate strong domain knowledge and technologies in relation to the environment that they work in.
Personal Attributes and Skills
Behavioral Skills
- Excellent written and oral communication skills (English)
- Ability to work in a self-driven, complex environment with multiple and changing priorities
- Ability to focus on deadlines and deliverables
- Ability to think abstractly
- Ability and desire to quickly learn new technologies
- Clean code thinking
Technical Skills
- Project Management
- Business Writing Skills
- Presentation and Facilitation Skills
- Process Mapping
- Software testing pack design, functional testing
Responsibilities
- Maintain and extend existing development activities
- Work with customers to determine project requirements
- Design software to fulfil customer requirements
- Develop software from requirements and specifications
- Find and repair software defects; unit testing, UI automation testing
- Stay current with Apple and iOS standards and guidelines
- Documenting development work done
Education and Experience
Minimum
- Informatics degree or Diploma
- 4+ years’ experience developing iOS applications
Advantageous
- 2+ years’ user interface analyst experience
- Software Engineering related degree/qualification
- Honours degree
- Business experience and product knowledge
- Experience in Objective-C is beneficial
Methodologies
- Waterfall and Agile
- Knowledge of OO design principles and development patterns
Tools
- SoapUI (SOAP) / REST client (JSON)
- XCode
- Atlassian tool suite (Jira, Confluence)
Technologies
- iOS
- UML
- XML, JSON
- SOAP and REST Web Service Development
Other
- Software architecture
- JAD sessions
- Data modelling techniques
EMPLOYMENT EQUITY
The Company’s approved Employment Equity Plan and Targets will be considered as part of the recruitment process. As an Equal Opportunities employer, we actively encourage and welcome people with various disabilities to apply.