我们正在寻找一位首席软件工程师加入我们的Elasticsearch - 分布式系统团队,专注于Elasticsearch如何提供规模、性能和弹性。该团队负责Elasticsearch集群中节点的通信,以及数据如何在节点之间进行索引、分配和复制。
职责
- 改进Elasticsearch的组件,以支持在多台机器上进行并发和一致的索引。
- 维护我们的集群协调系统,即使节点进出集群且数据移动,也能保持高性能,同时维护系统整体的安全性和活跃性。
- 挑战Elasticsearch目前可以处理的分片、节点和PB级数据的极限。
- 研究各种问题,包括性能或并发问题,并提出解决方案。
- 支持我们的支持工程师解决更困难的问题。
您需要具备
- 在分布式系统和一致性算法方面有扎实的背景。
- 拥有强大的核心Java技能,并熟悉标准的数据结构和并发构造库,以及较新的语言特性。
- 在算法方面有深厚的技术造诣。
- 展示了理解和处理复杂、高度分布式系统的能力。
- 展示了构建和调试具有广泛影响的功能的能力,这些功能运行在多台机器上。
- 能够从头到尾负责项目。这包括技术设计以及与他人合作开发所需组件。
- 有管理涉及多名工程师的项目经验。
加分项
- 数据存储
- 搜索、分析、Lucene
- 对JDK有深入了解
- 异步事件驱动网络框架,如Netty
技能:
算法、Apache Lucene、并发、数据分区、调试技能、分布式计算、Elasticsearch、Java、项目工程、项目/程序管理、软件工程、系统工程、团队合作、技术支持、技术/工程设计
关于公司:
Elastic