Senior Software Engineer

 

Description:


We're looking for a Software Engineer to join the Elasticsearch - Search team. This globally-distributed team of experienced engineers focuses on delivering a robust and feature-rich search experience, including contributing to improving the search experience in Lucene. This is a senior 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
 

  • Contribute to Elasticsearch full time, building new vector 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
 

  • Professional experience with vector similarity and vector databases, and you have used IVFPQ, HNSW, 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.

Organization Elastic
Industry IT / Telecom / Software
Occupational Category Senior Software Engineer
Job Location Dublin,Ireland
Shift Type Morning
Job Type Full Time
Gender No Preference
Career Level Intermediate
Experience 2 Years
Posted at 2024-09-22 3:02 pm
Expires on 2025-01-27