Cette offre d'emploi n'est plus disponible
RQ10456 - Software Developer - Mobile - Senior
- Toronto, Ontario, Canada
- Toronto, Ontario, Canada
À propos
Role Overview:
The Mobile Software Developer will design, develop, secure, and maintain Ontario's Digital Credential Wallet for iOS and Android , ensuring compliance with verifiable credentials standards, digital identity frameworks, and modern mobile security best practices . The role requires deep expertise in native and cross‑platform mobile development , digital wallets , and decentralized identity technologies , as well as strong collaboration within agile delivery teams.
Core Responsibilities:
- Design, implement, test, and deploy production-grade mobile applications for iOS and Android that meet Ontario Digital Credential and Digital Identity requirements.
- Maintain and extend an open, interoperable Digital Credential Wallet , integrating components from other jurisdictions and open-source communities while managing technical debt.
- Implement secure credential issuance, storage, presentation, and verification flows using W3C Verifiable Credentials and related protocols.
- Troubleshoot, diagnose, and resolve mobile application issues with a focus on performance, reliability, and security.
- Participate in Agile / Scrum ceremonies , including sprint planning, daily stand-ups, backlog refinement, and retrospectives.
- Support integration with external systems and platforms, including identity providers, verifiers, and backend ministry services.
- Apply security patches, OS upgrades, and cryptographic updates in a timely manner.
- Produce and maintain high-quality technical documentation , architecture diagrams, and developer guides to support long-term maintainability.
- Implement and maintain privacy‑preserving credential flows using SD‑JWT , SD‑JWT‑VC , and ISO/IEC mdoc (mDL and other doctypes) , including selective disclosure and holder binding where appropriate.
- Design presentation flows that support in‑person proximity and remote/over‑the‑Internet verification for mDL/mdoc, aligned with ISO/IEC 18013‑5 and 18013‑7 .
- Integrate token/credential status checks using IETF Token Status List (TSL) , and where applicable map to W3C VC Status List for web‑based ecosystems.
Experience and Skill Set Requirements:
Skill Set Requirements:
Mobile development:
- Experience working with commercial grade mobile iOS and Android applications using native languages (Objective-C / Swift, Xcode or Java with Android Studio).
- Experience with iOS or Android. Strong experience developing multithreaded applications.
- Experience with mobile operation system (OS) architecture in areas of user interface (UI), memory management, data storage, application management by OS, and cybersecurity.
- Experience with UI development of mobile application (scalable for different screen resolutions and localization).
- Experience working with continuous integration.
- Must have apps published in either the Apple or Google store.
- Experience in developing Native and Hybrid apps with iOS/Swift, Android/Java, React Native/TypeScript.
- Experience with Apple and Google wallets, or custom digital wallets, such as add passes/credentials to a wallet.
- Knowledge of using Secure Enclave and/or TrustZone.
- Experience in developing mobile apps that use local on device capabilities, such as camera, Bluetooth, microphone, accelerometer, etc.
- Working with Open Source community and Open Source products
Digital Trust and Verifiable Credentials:
- Demonstrated experience with:
- Developing mobile solutions with Open Wallet Foundation products and solutions, including Credo and Bifold wallet applications.
- Familiarity and experience developing mobile solutions with Open Wallet Foundation Aca-Py, Hyperledger Indy technology stack will be considered.
- Aries Framework Javascript (AFJ) / Credo.
- SD-JWT, IETF Status Lists, mDOC, JSON-LD, Anoncreds (including Aries Interoperability Profiles (AIP) 1 and 2)
- Developing in React Native.
- JavaScript, HTML5, CSS3.
- JavaScript frameworks such as , , & Vue and TypeScript.
- Developing responsive design & progressive web applications.
- Developing/working with APIs and API Gateways.
- Familiarity with JSON & REST APIs.
- Experience working with continuous integration.
- Experience with OpenID for Verifiable Credential Issuance (OID4VCI 1.0) and OpenID for Verifiable Presentations (OID4VP) ; ability to issue both SD‑JWT‑VC and ISO mdoc credentials per high‑assurance interop profiles.
- Knowledge with ISO/IEC 18013‑5 (mdoc/mDL) and 18013‑7 (online presentation); familiarity with 23220‑4 operational protocols is an asset.
- Experience with W3C verifiable credential data model, and decentralized identifiers (DIDs), X.509 certificates (RFC 5280), zero-knowledge proofs, SD-JWT, JWT, JSON-LD
- Digital wallet development experience in native and/or hybrid app; hardware level encryption (HLE), use of secure elements on mobile devices (e.g., Apple Secure Enclave).
- Experience with JOSE/COSE, Oauth2 JWT/JWS , ECDSA/EdDSA , ECC/RSA , TLS , PKI , device‑bound keys for holder binding (e.g., SD‑JWT+KB (key binding) and mdoc transaction signing ).
- , Python
- Ensure compliance with global digital identity standards and/or specifications such as W3C Verifiable Credentials , IETF, OIDF, PCTF , NIST , and eIDAS(ARF) .
Back End:
- Experience working with Java, NodeJS and RESTful APIs.
- SOAP Web Service development connecting to backend Ministries.
- API management tools such as IBM API Connect or equivalent.
- Familiarity with Docker and Kubernetes containers and cloud-based environments.
- Working experience in distributed, event-driven systems.
- Familiarity with PKI security.
- Experience working with messaging systems.
- Experience working with Shell Scripts.
- Experience working with continuous integration.
- Java/Sprint Framework, , Python/Django.
Team Contributor and Agile Experience:
- Experienced in developing and updating technical documentation.
- Experienced with Agile methodologies and related ceremonies, and tools.
- Self starter and motivated individual.
- Ability to analyze and break down complex problems.
- Effective at managing time, schedule, and commitments in a fast-paced environment with multiple competing priorities.
- Experienced with testing, test case development and related documentations.
- User focused/centered designs to solve real problems for users.
Compétences linguistiques
- English
Cette offre a été publiée par l’un de nos partenaires. Vous pouvez consulter l’offre originale ici.