高级Scala开发工程师 | 远程职位 | 微服务架构与Kafka

远程
全职
简介 我们正在寻找一位经验丰富的高级Scala开发工程师,以全职远程的方式加入我们充满活力的团队。在这个职位上,您将利用您在Scala编程、Apache Kafka和微服务架构方面的专业知识构建强大、可扩展的系统。该职位要求开发人员具备扎实的函数式编程技能,Scala实际经验(2-3年以上),以及坚实的Java背景。 主要职责 - 使用Scala 3(Dotty)和Scala生态系统设计、开发和维护高性能微服务。 - 实施和优化基于Apache Kafka的消息系统,确保可靠的数据处理。 - 创建遵循RESTful原则和最佳实践的、文档完善的API设计。 - 与跨职能团队合作,定义、设计和交付新功能与架构。 - 参与代码审查,以维持高代码质量并与团队成员分享知识。 - 编写干净、可维护且可测试的代码,并配有适当的单元和集成测试。 - 排查并解决生产环境中的复杂技术问题。 - 持续改进应用程序的性能、可靠性和可扩展性。 - 及时了解Scala生态系统和函数式编程的最新发展。 - 指导初级开发人员并分享Scala开发的最佳实践。 必备技能 - 精通Java开发,对JVM架构有扎实的理解。 - 2-3年以上Scala编程语言的实际操作经验。 - 具有使用Apache Kafka构建事件驱动应用程序的实际经验。 - 已证明的设计、实施和部署微服务架构的经验。 - 强大的API设计技能,了解RESTful和/或GraphQL原则。 - 具有并发和响应式编程模型的经验。 - 精通版本控制系统,尤其是Git。 - 了解CI/CD流水线和自动化测试框架。 - 自信的英语沟通能力(书面和口头),以便有效地进行远程协作。 - 具有自我激励能力,能够在远程环境中独立工作。 加分项 - 具有Big Data技术经验,如Apache Spark、Hadoop或Flink。 - 了解Akka框架,用于构建并发和分布式应用程序。 - 熟悉Play Framework用于Web应用程序开发。 - 有使用函数式编程库如Cats或Scalaz的经验。 - 对开源Scala项目或库有贡献。 - 有云平台(AWS、GCP、Azure)和容器编排(Kubernetes)经验。 - 了解数据库技术(SQL和NoSQL)。 - 具有高负载或实时系统开发背景。 - 有Kafka以外的消息系统经验(RabbitMQ、Pulsar)。 - 理解事件溯源和CQRS模式。 为什么加入我们 加入一个前瞻性思维的团队,该团队采用现代开发实践和前沿技术。作为一家以远程为先的公司,我们提供灵活性、工作与生活的平衡,以及在具有挑战性的项目上工作的机会,这些项目推动了可扩展应用程序开发的边界。您将有机会实现专业成长,持续学习,并对全球数千用户使用的系统做出有影响力的贡献。