Elasticsearch - Senior Software Engineer - Storage, Low-level, Concurrency

Full Time
4 months ago

Elastic is a free and open search company that powers enterprise search, observability, and security solutions built on one technology stack that can be deployed anywhere. From finding documents to monitoring infrastructure to hunting for threats, Elastic makes data usable in real-time and at scale. Thousands of organizations worldwide, including Barclays, Cisco, eBay, Fairfax, ING, Goldman Sachs, Microsoft, The Mayo Clinic, NASA, The New York Times, Wikipedia, and Verizon, use Elastic to power mission-critical systems. Founded in 2012, Elastic is a distributed company with Elasticians around the globe. Learn more at elastic.co.

We're looking for a Senior Software Engineer to join the team that’s contributing to improving our storage efficiency for metrics, logs and other types of data, advancing our ES|QL solution to query such data as well as optimizing the storage layout for object storage.

As a software engineer in the team, you will work on different initiatives, such as: enhancing current logging solutions to ensure that logging data is always accepted and persisted, advancing our current metrics processing capabilities to ensure massive and seamless adoption by our customers and improving storage efficiency across the board. You’ll also be extending the logic for efficiently querying and aggregating the stored data, taking their storage layout and ordering into account.

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, intuitive and high-quality 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
  • You’ll work with a globally distributed team of experienced engineers focused on data storage mechanisms and query capabilities of Elasticsearch.
  • You'll be an expert in the storage engine area and everyone will turn to you when they have a question about them. You'll improve those areas based on your questions and your instincts.
  • You'll be a full time Elasticsearch contributor, building data intensive new features, fixing intriguing bugs and increasing the testing coverage, 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.
  • You'll 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.
  • You'll write idiomatic modern Java -- Elasticsearch is 99.8% Java!
What You Bring Along
  • You have strong core Java skills and are conversant in the standard library of data structures and concurrency constructs;
  • You have an excellent understanding of concurrent and parallel programming principles.
  • You have an excellent background in applied data processing (data structures, algorithms).
  • You are familiar with storage systems and low-level abstractions in OS.
  • 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 have solid software engineering foundations, with a proven track record of designing and delivering high-quality solutions.
  • 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.
Bonus Points
  • You've built things with Elasticsearch before.
  • You’ve worked on data storage technology.
  • You have experience designing, leading and owning cross-functional initiatives.
  • You've worked with open source projects and are familiar with different styles of source control workflow and continuous integration.
  • You have past working experience with database, search engine, OS or cloud service development.

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.  In select locations (including Seattle WA, Los Angeles CA, the San Francisco Bay Area CA, and the New York City Metro Area), an alternate range may apply as specified 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 401k 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:$133,100—$210,600 USDThe typical starting salary range for this role in the select locations listed above is:$159,900—$252,900 USDAdditional 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/affirmative action employer committed to diversity, equity, and inclusion. 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 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) Poster; Pay Transparency Nondiscrimination Provision Poster; Employee Polygraph Protection Act (EPPA) Poster and Know Your Rights (Poster)

Please see here for our Privacy Statement.