高级Android开发工程师 - 远程银行项目 (Kotlin/Java专家)

远程
全职
您是否是一位经验丰富的Android开发者,希望打造能够每日影响数百万用户的创新金融解决方案?我们正在寻找一位经验丰富的高级Android开发工程师,加入我们充满活力的团队,共同开发一款复杂的银行应用程序。凭借您3年以上的Android专业经验和对Kotlin与Java的深入了解,您将帮助塑造移动银行技术的未来,同时远程参与这个长期项目。在这个职位上,您将有机会应用最新的Android开发技术,为用户提供安全、流畅且直观的银行体验。 关于项目 我们的银行应用程序是为多个地区用户提供的关键金融工具。这个长期项目(1年以上的承诺)为您提供了使用前沿技术解决金融科技领域复杂挑战的机会。您将与专业团队合作,使用Jira和Confluence进行高效的任务跟踪和知识管理。 该应用程序允许用户安全地管理他们的财务,执行交易,查看账户活动,并访问各种创新的银行服务。作为一个关键的金融工具,它需要最高标准的安全性、可靠性和用户体验。我们的团队采用敏捷开发方法,定期进行冲刺计划会议、每日站立会议和回顾会议,确保开发流程高效并持续改进。 开发环境 我们的技术栈包括最新的Android开发工具和框架,确保我们的代码库现代、高效且可维护。我们使用GitLab进行代码管理,Jenkins用于持续集成,以及Nexus作为我们的私有Maven仓库。我们的开发环境支持远程协作,包括虚拟会议、文档共享和实时代码协作工具。 主要职责 - 使用Kotlin和Java为我们的Android银行应用程序设计和开发强大、高性能的功能。 - 遵循SOLID原则和现代架构模式实现清晰、可维护的代码。 - 与跨职能团队合作,定义、设计和发布能提升用户体验的新功能。 - 维护和优化应用程序性能,确保银行应用程序所需的稳定性和安全性。 - 排查并解决不同Android设备和操作系统版本上的复杂问题。 - 参与定期代码审查,确保代码质量和团队成员之间的知识共享。 - 集成客户端-服务器通信,实现移动客户端和后端系统之间的无缝数据交换。 - 在Confluence中记录技术规范和开发流程。 - 及时了解最新的Android开发趋势并实施相关改进。 - 与UI/UX设计师合作,确保实现的界面符合设计规范和用户体验标准。 - 实施并维护应用内安全措施,保护用户敏感的财务数据。 - 分析并优化应用性能指标,确保在各种设备上的流畅体验。 必备技能与经验 - 3年以上专业Android应用程序开发经验。 - 精通Kotlin和Java编程语言。 - 具有理解和重构现有代码库的实际能力。 - 具有实施架构模式(MVVM、MVP、MVI或Clean Architecture)的实践经验。 - 具有使用依赖注入框架(尤其是Dagger 2或Hilt)的实际经验。 - 熟练掌握使用RxJava 2/3、Kotlin协程和Flow的响应式编程。 - 具有Android Jetpack组件(ViewModel、LiveData、Room、Navigation)的经验。 - 对现代Android UI开发的深入了解,包括RecyclerView、ConstraintLayout以及可能的Jetpack Compose。 - 使用Git进行版本控制的专业知识,包括适合团队环境的分支策略。 - 具有开发使用RESTful API和JSON解析的安全客户端-服务器应用程序的经验。 - 了解移动应用程序的银行级安全要求。 - 出色的问题解决能力和对细节的关注。 - 强大的沟通能力和团队协作意识。 - 能够独立工作并管理自己的任务优先级。 - 对代码质量和性能优化有坚定的承诺。 加分项 - 具有使用JUnit和Mockito/MockK编写全面单元测试的经验。 - 熟悉使用Espresso或其他自动化测试框架进行UI测试。 - 具有持续集成/持续部署(CI/CD)流程的经验。 - 曾参与金融或银行应用程序的开发。 - 了解Material Design原则及其实现。 - 具有模块化Android应用程序架构的经验。 - 了解Kotlin Multiplatform Mobile(KMM)开发。 - 熟悉安全数据存储和加密技术。 - 对移动应用安全协议和最佳实践的了解。 - 具有实施生物识别认证(如指纹、面部识别)的经验。 - 熟悉支付系统集成或财务数据处理。 - 参与过大规模或关键业务应用程序的发布和维护。 团队合作 作为我们团队的一员,您将与经验丰富的开发人员、产品经理、UI/UX设计师、QA专家和后端工程师紧密合作。我们重视开放的沟通、知识共享和相互尊重。尽管团队成员分布在不同地区,我们通过定期的虚拟会议和协作工具保持紧密联系,确保项目顺利进行。 为什么加入我们 参与我们的银行项目,您将有机会开发数千用户每日依赖的关键任务软件。您将在金融科技领域获得宝贵经验,同时与协作、前瞻性的团队共事。项目的长期性为您提供了稳定性,并有机会看到您的贡献随时间成熟和发展。加入我们,在一个具有挑战性但回报丰厚的远程环境中提升您的技能,您的专业知识将受到重视,您的成长将得到支持。 我们提供有竞争力的薪酬,灵活的工作时间,以及参与塑造影响数百万用户金融生活的产品的机会。我们致力于创建一个支持性的远程工作环境,让您能够平衡工作与生活,同时在专业上不断发展。