任务:RQ10456 - 软件开发人员 - 移动端 - 高级职位名称:Java开发人员 - 移动端申请编号(SS):RQ10456开始日期:客户:政府服务集成集群结束日期:办公地点:222 Jarvis Street Toronto组织:政府服务集成集群部门:公共和商业服务交付与采购部# 工作日:252.00从2026年1月5日起,候选人需要每周5天在现场工作该职位被列为现场;资源需在每周一至周五的标准工作时间8:00-17:00(不包括午休)在指定的OPS办公室地点工作。
必须具备:
• 请关注经验和技能集部分中的加粗文本。
描述
角色概述
• 移动软件开发人员将设计、开发、维护安大略省的iOS和Android数字凭证钱包,确保符合可验证凭证标准、数字身份框架和现代移动安全最佳实践。该角色需要在原生和跨平台移动开发、数字钱包和去中心化身份技术方面的深厚专业知识,以及在敏捷交付团队中的强大协作能力。
核心职责
• 设计、实施、测试和部署符合安大略省数字凭证和数字身份要求的生产级iOS和Android移动应用程序。
• 维护和扩展开放的、可互操作的数字凭证钱包,整合来自其他司法管辖区和开源社区的组件,同时管理技术债务。
• 使用W3C可验证凭证和相关协议实施安全的凭证发行、存储、展示和验证流程。
• 专注于性能、可靠性和安全性,排除、诊断和解决移动应用程序问题。
• 参与敏捷/ Scrum仪式,包括冲刺规划、每日站会、待办事项优化和回顾。
• 支持与外部系统和平台的集成,包括身份提供者、验证者和后端部门服务。
• 及时应用安全补丁、操作系统升级和加密更新。
• 生成和维护高质量的技术文档、架构图和开发者指南,以支持长期维护。
• 使用SD JWT、SD JWT VC和ISO/IEC mdoc(mDL和其他文档类型)实施和维护隐私保护的凭证流程,包括在适当情况下的选择性披露和持有者绑定。
• 设计支持现场接近和远程/通过互联网验证的mDL/mdoc展示流程,符合ISO/IEC 18013 5和18013 7。
• 使用IETF令牌状态列表(TSL)集成令牌/凭证状态检查,并在适用情况下映射到W3C VC状态列表以支持基于网络的生态系统。
经验和技能要求
移动开发50%
• 使用原生语言(Objective-C / Swift Xcode或Java与Android Studio)开发商业级iOS和Android移动应用程序的经验。
• iOS或Android经验。具有开发多线程应用程序的丰富经验。
• 在用户界面(UI)、内存管理、数据存储、操作系统管理应用程序和网络安全领域的移动操作系统(OS)架构经验。
• 移动应用程序的UI开发经验(可扩展到不同的屏幕分辨率和本地化)。
• 具有持续集成工作的经验。
• 必须在Apple或Google商店中发布过应用程序。
• 使用iOS/Swift、Android/Java、React Native/TypeScript开发原生和混合应用程序的经验。
• 使用Apple和Google钱包或自定义数字钱包(如将通行证/凭证添加到钱包)的经验。
• 使用安全飞地和/或TrustZone的知识。
• 开发使用本地设备功能(如摄像头、蓝牙、麦克风、加速度计等)的移动应用程序的经验。
• 与开源社区和开源产品合作的经验。
数字信任和可验证凭证20%
• 展示的经验:
• 使用Open Wallet Foundation产品和解决方案(包括Credo和Bifold钱包应用程序)开发移动解决方案。
• 熟悉并有使用Open Wallet Foundation Aca-Py Hyperledger Indy技术栈开发移动解决方案的经验。
• Aries Framework Javascript(AFJ)/ Credo。
• SD-JWT、IETF状态列表、mDOC、JSON-LD、Anoncreds(包括Aries互操作性配置文件(AIP)1和2)
• 使用React Native进行开发。
• JavaScript、HTML5、CSS3。
• JavaScript框架如Vue和TypeScript。
• 开发响应式设计和渐进式Web应用程序。
• 开发/使用API和API网关。
• 熟悉JSON和REST API。
• 具有持续集成工作的经验。
• 使用OpenID进行可验证凭证发行(OID4VCI 1.0)和OpenID进行可验证展示(OID4VP)的经验;能够根据高保证互操作配置文件发行SD JWT VC和ISO mdoc凭证。
• 熟悉ISO/IEC 18013 5(mdoc/mDL)和18013 7(在线展示);熟悉23220 4操作协议是一个资产。
• 具有W3C可验证凭证数据模型和去中心化标识符(DIDs)、X.509证书(RFC 5280)、零知识证明、SD-JWT、JWT、JSON-LD的经验。
• 在原生和/或混合应用程序中的数字钱包开发经验;硬件级加密(HLE)在移动设备上使用安全元素(例如Apple Secure Enclave)。
• 使用JOSE/COSE、Oauth2、JWT/JWS、ECDSA/EdDSA、ECC/RSA、TLS、PKI设备绑定密钥进行持有者绑定(例如SD JWTKB(密钥绑定)和mdoc事务签名)的经验。
• Python
• 确保符合全球数字身份标准和/或规范,如W3C可验证凭证、IETF、OIDF、PCTF、NIST和eIDAS(ARF)。
后端15%
• 使用Java、NodeJS和RESTful API工作的经验。
• 连接到后端部门的SOAP Web服务开发。
• API管理工具,如IBM API Connect或同等工具。
• 熟悉Docker和Kubernetes容器及基于云的环境。
• 在分布式事件驱动系统中的工作经验。
• 熟悉PKI安全。
• 使用消息传递系统的经验。
• 使用Shell脚本的经验。
• 具有持续集成工作的经验。
• Java/Sprint Framework JS/ Python/Django。
团队贡献者和敏捷经验 - 15%
• 具有开发和更新技术文档的经验。
• 具有敏捷方法论及相关仪式和工具的经验。
• 自我启动和积极主动的个体。
• 能够分析和分解复杂问题。
• 在快节奏的环境中有效管理时间、日程和承诺,面对多个竞争优先事项。
• 具有测试、测试用例开发和相关文档的经验。
• 用户为中心的设计以解决用户的实际问题。