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