Elastic is looking for a Principal Software Engineer II to join the Elasticsearch - Storage Engine team to provide technical vision and direction for building solutions that provide optimized storage and efficient data querying and indexing for logs and metrics management.
Requirements
- You have implemented novel techniques to efficiently index, store and query timeseries data.
- You have strong skills in core Java and are conversant in the standard library of data structures and concurrency constructs, as well as newer features like lambdas.
- You have a strong desire to optimize and make use of the most efficient data structures and algorithms.
- 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'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.
Responsibilities
- Lead cross organizational initiatives to produce an industry-leading timeseries solution offering.
- Contribute to Elasticsearch full time, building data intensive new features and fixing intriguing bugs, all while making the code easier to understand.
- Sometimes you’ll need to implement a data structure or algorithm in the code base.
- And there will be times when you'll need to get close to the operating system and hardware.
- Work with a globally distributed team of experienced engineers focused on the logs and metrics capabilities of Elasticsearch.
- Be an expert in several areas of Elasticsearch and everyone will turn to you when they have a question about them.
- 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.
Other
- This role includes providing technical vision and direction for building solutions that provide optimized storage and efficient data querying and indexing. This role requires related past technical experience in addition to the ability to work cross-organization.
- You have strong technical leadership skills, 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!
- You have excellent verbal and written communication skills.
- We try to be respectful, empathetic, and trusting in all of our interactions. And we'd expect that from you too.