Lead Software Developer IOS

  • SITA Switzerland Sarl
  • Sydney NSW
  • 2 weeks, 2 days ago

Job Description

Overview:

PURPOSE

Manages the technical design development and maintenance of applications and systems using existing and emerging technology platforms.

KEY RESPONSIBILITIES

  • Writes and delivers complex code for features, user stories, reusable modules, unit testing and automated functional testing; debugs existing code and modules
  • Provides technical guidance to less experienced developers and other technical or non-technical stakeholders.
  • Follows coding guidelines and QA practices and processes, and ensures they are followed by less experienced developers.
  • Participates in backlog grooming, analysis of requirements, estimation, and design of new applications or new features
  • Supports colleagues in their drive to constantly improve the way we work and make working together a pleasant experience.
  • Actively participate in all scrum events

EDUCATION & QUALIFICATIONS

  • Degree in Computer Sciences or Engineering, related field.
  • Applicable vendor / technology certification or equivalent work experience

EXPERIENCE

Skilled Developer/Engineer with 6+ years of hands-on experience developing, supporting, releasing, and optimizing mission-critical mobile apps, leveraging automation and DevOps processes to ensure repeatability and efficiency.


KNOWLEDGE & SKILLS

  • 5+ years developing native iOS apps (mandatory), native Android apps (highly valued)
  • Experience developing with other mobile frameworks (desirable) and microservices development (desirable).
  • Expertise in Flutter , Swift and Objective-C is necessary; Java and Kotlin (on Android) are desirable
  • Experience developing mobile SDKs and integrating mobile apps with web-services and external APIs (mandatory)
  • Experience with unit testing with XCTest (ideal) or Quick/Nimble/Mockingbird (desirable)
  • Experienced with Swift Package manager (ideal) or Cocoapod/Carthage (desirable)
  • Experienced with IXGuard (ideal), obfuscation, certificate pinning, and other methods of securing apps
  • A thorough understanding of OOP, design patterns, iOS, Android, and enterprise mobile application integration
  • Strong skills in securing data on the local device using industry standard encryption technologies including key management solutions
  • Experience with push notification frameworks
  • Experience with mobile payment solutions (Stripe would be ideal)
  • Experience with publishing apps to App Store and Google Play, and associated release management activities
  • Experience with A/B testing would be highly valued

Knowledge and Skills - General

  • Solid knowledge of Object Oriented code design.
  • Solid knowledge a Procedural language such as PL/SQL.
  • Good knowledge of IT security concepts and ability to use them while designing and developing code.
  • Solid knowledge of SOA: XML Web Services, SOAP and Microservices architecture (desirable).
  • Solid knowledge of JSON
  • Working knowledge of cloud platforms such as Azure, AWS or Google Cloud would be an advantage.
  • Good knowledge of developing and designing code to interface to one or more RDBMS databases.
  • Demonstrate good understanding of networking concepts.
  • Demonstrate the ability to apply application design concepts: MVC and MVVM, object-oriented design, design patterns, database development.
  • Demonstrate the ability to use DataSet, SQL, and stored procedures.
  • Any experience or understanding of biometrics would be highly valued.
  • Any experience or understanding of ADB2C would be highly valued.
  • Any experience with Google Analytics and/or Remote Config would be highly valued
  • Advanced knowledge of source code management (git) and branching strategies that work for DevOps.
  • Demonstrate an understanding of trade-offs and risks with programming choices.