首席软件工程师 I - 分布式系统

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