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.
- This team is responsible for the Discovery member application published to the App Store. They work with other Discovery business units to deliver innovative solutions to all members.
- Within the Digital Channels 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 will support the projects throughout the project lifecycle, including requirements, design, implementation, release, and post release support.
- iOS developers in the Digital Channels 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
Intermediate iOS developers must have a competent understanding of:
- The system development life cycle and can explain the developers 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
Intermediate 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 intermediate 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
- 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
- Project Management
- Business Writing Skills
- Presentation and Facilitation Skills
- Process Mapping
- Software testing pack design, functional testing
- 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
- Informatics degree or Diploma
- 2+ years’ experience developing iOS applications
- 1+ year user interface analyst experience
- Software Engineering related degree/qualification
- Honours degree
- Business experience and product knowledge
- Experience in Objective-C is beneficial
- Waterfall and Agile
- Knowledge of OO design principles and development patterns
- SoapUI (SOAP) / REST client (JSON)
- Atlassian tool suite (Jira, Confluence)
- XML, JSON
- SOAP and REST Web Service Development
- Software architecture
- JAD sessions
- Data modelling techniques