资深软件开发工程师 - 向量搜索
Principal Software Developer - Vector Search
Elastic,搜索人工智能公司,让每个人都能实时使用所有数据找到他们需要的答案——释放企业和个人的潜力。Elastic 搜索人工智能平台被超过 50% 的财富 500 强企业使用,将搜索的精准性和人工智能的智能相结合,使每个人都能加速实现关键成果。通过利用所有结构化和非结构化数据——更有效地保障和保护隐私信息——Elastic 基于云的完整搜索、安全和可观测性解决方案帮助组织实现人工智能的承诺。
### 职位描述
我们正在寻找一位高级软件开发工程师加入 Elasticsearch - 搜索团队。这个由专家工程师组成的全球分布式团队专注于提供强大且功能丰富的搜索体验,包括对 Lucene 中搜索体验的改进。这是一个高级软件工程职位,专注于增强 Elasticsearch 中的向量相似性搜索功能,涵盖新向量搜索功能的设计与实现、现有向量搜索功能的改进以及解决相关问题。
我们的公司有意采用分布式模式。我们在任何地方、无论是谁,都雇佣最好的工程师。我们每天通过电子邮件、GitHub、Zoom 和 Slack 在各大洲之间协作。在最佳状态下,我们编写快速、可扩展且直观的软件。我们认为做到这一点的最佳方式是赋予个人工程师权力,对每个更改进行代码审查,通过共识决定重大事项,并努力实现渐进式改进。
### **你将负责**
- 领导 [Elasticsearch](https://github.com/elastic/elasticsearch/) 中的项目,打造行业领先的向量数据库产品,提供无与伦比的搜索速度和相关性。
- 全职贡献于 Elasticsearch,构建新的搜索功能并修复有趣的 bug,同时让代码更易理解。有时你需要发明一个新的算法或数据结构。或者找到一个并实现它。有时你需要接近操作系统和硬件。
- 与专注于 Elasticsearch 向量搜索功能的全球分布式工程师团队合作。
- 成为 Elasticsearch 实现向量相似性的专家,以支持搜索相关性,当其他人有关于这个领域的问题时都会向你请教。你将进行改进
查看英文原文
Elastic, the Search AI Company, enables everyone to find the answers they need in real time, using all their data, at scale — unleashing the potential of businesses and people. The Elastic Search AI Platform, used by more than 50% of the Fortune 500, brings together the precision of search and the intelligence of AI to enable everyone to accelerate the results that matter. By taking advantage of all structured and unstructured data — securing and protecting private information more effectively — Elastic’s complete, cloud-based solutions for search, security, and observability help organizations deliver on the promise of AI.
### What is the role
We're looking for a Principal Software Developer to join the Elasticsearch - Search team. This globally-distributed team of expert engineers focuses on delivering a robust and feature-rich search experience, including contributing to improving the search experience in Lucene. This is a principal software engineering role that focuses on enhancing the vector similarity search functionality within Elasticsearch, covering the design and implementation of new vector search features, enhancements to existing vector search functionality, and resolving bugs.
Our company is distributed by intention. We hire the best engineers we can find wherever they are, whoever they are. We collaborate across continents every day over email, GitHub, Zoom, and Slack. At our best, we write fast, scalable and intuitive software. We believe that the best way to do that is to empower individual engineers, code review every change, decide big things by consensus, and strive for incremental improvements.
### **What You Will Be Doing**
- Lead initiatives within [Elasticsearch](https://github.com/elastic/elasticsearch/) to produce an industry-leading vector database offering, supplying unparalleled speed and relevance in search.
- Contribute to Elasticsearch full time, building new search features and fixing intriguing bugs, all while making the code easier to understand. Sometimes you'll need to invent a new algorithm or data structure. Or find one and implement it. Sometimes you'll need to get close to the operating system and hardware.
- Work with a globally distributed team of experienced engineers focused on the vector search capabilities of Elasticsearch.
- Be an expert on how Elasticsearch implements vector similarity in support of search relevance and everyone will turn to you when they have a question about this area. You'll improve this area based on your questions and your instincts.
- Work with community members from all over the world on issues and pull requests, sometimes triaging them and handing them off to other experts and sometimes handling them yourself.
- Write idiomatic modern Java -- Elasticsearch is 99.8% Java!
### **What You Bring Along**
- You have implemented novel techniques in vector similarity on a search platform with a large user base or progressed the field of academic research in vector similarity information retrieval.
- Professional experience with vector similarity and vector databases, and you used HNSW, IVF, or other relevant algorithms and libraries on search platforms at scale.
- You have strong skills in core Java and are conversant in the standard library of data structures and concurrency constructs, as well as other features like lambdas.
- You work with a high level of autonomy, and are able to take on projects and guide them from beginning to end. This covers both technical design and working with other engineers to develop needed components.
- You're comfortable developing collaboratively. Giving and receiving feedback on code and approaches and APIs is hard! Bonus points if you've collaborated over the internet because that's harder. Double bonus points for asynchronous collaboration over the internet. That's even harder, but we do it anyway because it's the best way we know how to build software.
- You've used several data storage technologies like Elasticsearch, Solr, PostgreSQL, MongoDB, or Cassandra and have some idea how they work and why they work that way.
- You have excellent verbal and written communication skills. Like we said, collaborating on the internet is hard. We try to be respectful, empathetic, and trusting in all of our interactions. And we'd expect that from you too.
- You have a proven track record of using AI to accelerate development, debug complex systems, and optimize code, while still owning the final outcomes.
- You possess the ability to collaborate across functions and teams and seamlessly transition between different projects, codebases, or teams based on business priorities
- You work autonomously and can drive decisions and results in a distributed team by leveraging asynchronous, direct, and transparent communication.
### **Bonus Points**
- You've built things with Elasticsearch before.
- You've worked with open source projects and are familiar with different styles of source control workflow and continuous integration.
- Experience with data storage technology.
- You have experience designing, leading and owning cross-functional initiatives
Compensation for this role is in the form of base salary. This role does not have a variable compensation component. The typical starting salary range for new hires in this role is listed below.
These ranges represent the lowest to highest salary we reasonably and in good faith believe we would pay for this role at the time of this posting. We may ultimately pay more or less than the posted range, and the ranges may be modified in the future.
An employee's position within the salary range will be based on several factors including, but not limited to, relevant education, qualifications, certifications, experience, skills, geographic location, performance, and business or organizational needs.
Elastic believes that employees should have the opportunity to share in the value that we create together for our shareholders. Therefore, in addition to cash compensation, this role is currently eligible to participate in Elastic's stock program. Our total rewards package also includes a company-matched Registered Retirement Savings Plan (RRSP) with dollar-for-dollar matching up to 6% of eligible earnings, along with a range of other benefits offered with a holistic emphasis on employee well-being.
The typical starting salary range for this role is:
$154,000—$243,600 CAD
### **Additional Information - We Take Care of Our People**
As a distributed company, diversity drives our identity. Whether you’re looking to launch a new career or grow an existing one, Elastic is the type of company where you can balance great work with great life. Your age is only a number. It doesn’t matter if you’re just out of college or your children are; we need you for what you can do.
We strive to have parity of benefits across regions and while regulations differ from place to place, we believe taking care of our people is the right thing to do.
- Competitive pay based on the work you do here and not your previous salary
- Health coverage for you and your family in many locations
- Ability to craft your calendar with flexible locations and schedules for many roles
- Generous number of vacation days each year
- Increase your impact - We match up to $2000 (or local currency equivalent) for financial donations and service
- Up to 40 hours each year to use toward volunteer projects you love
- Embracing parenthood with minimum of 16 weeks of parental leave
Different people approach problems differently. We need that. Elastic is an equal opportunity employer and is committed to creating an inclusive culture that celebrates different perspectives, experiences, and backgrounds. Qualified applicants will receive consideration for employment without regard to race, ethnicity, color, religion, sex, pregnancy, sexual orientation, gender perception or identity, national origin, age, marital status, protected veteran status, disability status, or any other basis protected by federal, state or local law, ordinance or regulation.
We welcome individuals with disabilities and strive to create an accessible and inclusive experience for all individuals. To request an accommodation during the application or the recruiting process, please email [candidate_accessibility@elastic.co](mailto:candidate_accessibility@elastic.co). We will reply to your request within 24 business hours of submission.
Applicants have rights under Federal Employment Laws, view posters linked below: [Family and Medical Leave Act (FMLA)](https://www.dol.gov/sites/dolgov/files/WHD/legacy/files/fmlaen.pdf) Poster;[Pay Transparency Nondiscrimination Provision](https://www.dol.gov/sites/dolgov/files/ofccp/pdf/pay-transp_%20English_formattedESQA508c.pdf) Poster; [Employee Polygraph Protection Act (EPPA)](https://www.dol.gov/sites/dolgov/files/WHD/legacy/files/eppabw.pdf) Poster and [Know Your Rights](https://www.dol.gov/sites/dolgov/files/OFCCP/regs/compliance/posters/pdf/22-088_EEOC_KnowYourRights.pdf) (Poster)
Elasticsearch develops and distributes technology and information that is subject to U.S. and other countries’ export controls and licensing requirements for individuals who are located in or are nationals of the following sanctioned countries and regions: Belarus, Cuba, Iran, North Korea, Syria, or Russia, including the Ukrainian territories annexed by Russia (The Crimea region of Ukraine, The Donetsk People's Republic (DNR), The Luhansk People's Republic (LNR), Kherson or Zaporizhzhia). If you are located in or are a national of one of the listed countries or regions, an export license may be required as a condition of your employment in this role. Please note that national origin and/or nationality do not affect eligibility for employment with Elastic.
Please see [here](https://www.elastic.co/legal/applicant-privacy-statement) for our Privacy Statement.