Discovery – Group Information Systems - Digital Channels
Senior Android 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 Channels system area, the Android 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.
Android developers will support the projects throughout the project lifecycle, including requirements, design, implementation, release, and post release support.
Android 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
The senior Android developer must have a competent understanding of:
- The system development life cycle and can explain the Android developer 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
The senior Android developer 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, an Android 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
- Stress Management
- Time management and prioritization
- Creativeness
- Learning orientation
- Negotiation skills
- Innovation
- Clean code thinking
Technical Skills
- Project Management
- Business Writing Skills
- Presentation and Facilitation Skills
- Solution Architecture
- Process Mapping
- Entity Diagram mapping
- Software testing pack design, functional testing
Education and Experience
Minimum
- 3+ Year IT related Degree or Diploma (BSc/BTech or similar)
- 4+ years’ experience developing Android applications
- Have worked on multiple published apps in the Play Store
Advantageous
- 4+ years of hands-on experience developing native apps for Android
- Deep understanding of REST, JSON, HTTP and related mobile networking frameworks
- Unit testing and mocking frameworks.
- Knowledge of OO design principles and development patterns
- Experience with agile development methodologies
- Experience with automated testing tools and techniques
- Experience in Kotlin beneficial
- Experience with GIT
- Have worked on at least 1 app published in the Play Store
Methodologies
- Waterfall and Agile
- Knowledge of OO design principles and development patterns
Tools
- SoapUI (SOAP) / REST client (JSON)
- Android Studio
- Atlassian tool suite (Jira, Confluence)
Processes
- ITIL (Incident, Release, Problem Management)
Technologies
- J2EE, Sprint Boot
- Android, Java, Kotlin
- WebLogic, Apache
- 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.