高级Java开发工程师 | 金融科技银行项目 | 全球远程
远程
全职
我们正在寻找经验丰富的高级Java开发工程师加入我们创新的金融科技团队,共同打造下一代银行解决方案。作为远程Java开发工程师,您将为服务全球数百万用户的数字银行平台构建可扩展的微服务架构。这个职位提供了在金融技术前沿工作的机会,同时与多个领域的优秀专业人士合作。
主要职责:
- 设计和开发健壮的基于Java的应用程序,可跨在线银行、移动应用和支付服务平台扩展,确保系统高可用性和可靠性。
- 使用Java 8+或Kotlin与Spring Boot框架为银行和金融系统架构和实现微服务,遵循领域驱动设计原则。
- 与数据科学团队、支持工程师和其他开发团队合作,创建集成的金融科技解决方案,提升数据分析能力和用户体验。
- 优化应用程序的性能、稳定性和安全性,以满足关键银行业务运营需求,实现低延迟和高吞吐量。
- 评估现有架构并提出创新改进,以提高系统可靠性和效率,同时降低运营成本。
- 参与代码审查并提供技术指导,以保持高代码质量标准,促进最佳实践的应用。
- 研究并实施现代技术,使我们的银行平台保持行业标准的前沿地位,支持实时交易处理和智能金融服务。
- 设计和实现安全的API接口,确保符合金融行业的合规要求和数据保护标准。
- 开发和维护自动化测试套件,确保代码质量和系统稳定性。
- 参与技术架构讨论,为系统的长期发展提供专业建议和战略方向。
必备技能:
- 3年以上企业应用Java 8+或Kotlin开发的专业经验,熟悉Java 11、17的新特性及其在企业环境中的应用。
- 3年以上Spring框架经验,以及至少1年Spring Boot 2.x或更高版本的经验,包括Spring Security和Spring Data的实践应用。
- 使用Spring Cloud、Kubernetes或Openshift实施微服务架构的实际经验,理解服务发现、配置管理和负载均衡的原理和实践。
- 使用Docker容器化进行部署和扩展的实践经验,熟悉容器编排和资源管理。
- 精通NoSQL数据库(MongoDB、Elasticsearch)和SQL数据库(PostgreSQL、Oracle),了解其性能优化和查询调优技术。
- 使用Kafka或RabbitMQ等消息代理进行异步通信的实践经验,了解事件驱动架构和流处理模式。
- 使用RxJava或Project Reactor的响应式编程范式知识,能够设计和实现高并发、低延迟的系统。
- 使用Redis或Hazelcast等缓存解决方案优化性能的经验,了解分布式缓存策略和数据一致性挑战。
- 熟悉使用GitlabCI、Jenkins或类似工具的CI/CD流程,能够设计和维护自动化部署管道。
- 了解系统可观察性的监控工具配置(Zabbix、Prometheus、Grafana),能够设置有效的告警和监控指标。
加分项:
- 架构设计经验,能够清晰表达技术决策和理由,熟悉各种架构模式及其应用场景。
- 主动推动技术发展,不仅仅遵循现有标准,有能力提出创新解决方案解决业务挑战。
- DevOps思维,了解容器化、编排工具和Linux环境,能够与运维团队紧密合作优化系统运行。
- 深入理解分布式系统设计原则和模式,如CAP定理、CQRS、事件溯源。
- 技术招聘、面试和新团队成员入职培训的经验,具备良好的团队建设和人才发展能力。
- 具备技术写作能力,热衷于通过文章和文档分享知识,提高团队整体技术水平。
- 有经验开展技术培训课程和指导初级开发人员,促进知识传递和团队成长。
- 银行、金融服务或金融科技行业的工作经验,了解行业特定的合规要求和业务流程。
- 熟悉敏捷开发方法和实践,如Scrum或Kanban,能够在迭代开发环境中有效工作。
- 了解云原生应用开发和部署模式,有使用主流云服务提供商(AWS、Azure、GCP)的经验。
为什么加入我们:
在享受远程工作灵活性的同时,参与前沿金融科技项目。您将有机会影响架构决策,指导他人,并使用现代技术不断扩展您的技术专长。我们营造协作环境,重视创新,积极支持专业成长。我们提供具有竞争力的薪酬待遇,灵活的工作安排,以及持续学习的机会。作为我们团队的一员,您将参与塑造未来金融服务的技术基础,同时在一个重视工作与生活平衡的环境中发展自己的职业生涯。