> Markdown version of [/jobs/ext/2011955-principal-software-engineer-distributed-systems-elasticsearch](https://www.wearedevelopers.com/jobs/ext/2011955-principal-software-engineer-distributed-systems-elasticsearch). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Principal Software Engineer (Distributed Systems - Elasticsearch) - **Company:** Elastic - **Location:** Madrid, Spain - **Contract:** Permanent contract - **Skills:** Java (Programming Language), Data Structures, Software Debugging, Distributed Systems, Elasticsearch - **Published:** August 10, 2026 - **Apply:** https://www.buscojobs.com.es/principal-software-engineer-distributed-systems-elasticsearch-en-madrid-ID-366281929 ## About the Role You have experience managing projects involving multiple engineersYou demonstrate the ability to build and debug features with a broad impact, running on multiple machinesYou are able to own projects from beginning to end. This covers both technical design and working with others to develop needed componentsYou have a deep technical proficiency in algorithmsYou have a strong background in distributed systems and consensus algorithmsYou have shown your ability to understand and work on complex, highly distributed systemsYou have strong skills in core Java and are conversant in the standard library of data structures and concurrency constructs, as well as newer language featuresData stores Search, analytics, LuceneStrong knowledge of the JDKAsynchronous event-driven network frameworks such as Netty #J-*****-Ljbffr ## Description We are on the lookout for a Principal Software Engineer I to join our Elasticsearch - Distributed Systems team and focus on how Elasticsearch provides scale, performance, and resilienceThis team owns how nodes in an Elasticsearch cluster communicate, and how data are indexed, allocated, and replicated across nodesImproving Elasticsearch's components that support concurrent and consistent indexing across multiple machinesMaintaining our cluster coordination system to keep performance high even though nodes come and go from the cluster and data moves around, while maintaining the safety and liveness properties of the system as a wholePushing the limits on the number of shards, nodes, and petabytes that Elasticsearch can handle todayLooking into all kinds of issues, including performance or concurrency issues, and proposing solutionsSupporting our support engineers with the harder problemsBenefitsToast to your health: Fully paid health coverage for you and your family, in many locations.Craft your calendar: Flexible location and schedule for most roles.Create space for you: Distributed by design workforce, plus generous number of vacation days each year.Embrace parenthood: Minimum of 16 weeks of parental leave, plus generous family formation benefits.Give back your time: 40 hours each year to use toward volunteering with organizations and causes you're passionate about.Amplify your impact: Double your charitable giving - we match donations up to $**** USD (or local currency equivalent).QualificationsYou have experience managing projects involving multiple engineersYou demonstrate the ability to build and debug features with a broad impact, running on multiple machinesYou are able to own projects from beginning to end.This covers both technical design and working with others to develop needed componentsYou have a deep technical proficiency in algorithmsYou have a strong background in distributed systems and consensus algorithmsYou have shown your ability to understand and work on complex, highly distributed systemsYou have strong skills in core Java and are conversant in the standard library of data structures and concurrency constructs, as well as newer language featuresData stores Search, analytics, LuceneStrong knowledge of the JDKAsynchronous event-driven network frameworks such as Netty#J-*****-Ljbffr ## Related Videos - [Add Location-based Searching to Site with ElasticSearch](https://www.wearedevelopers.com/videos/77-add-location-based-searching-to-site-with-elasticsearch) - [Distributed search under the hood](https://www.wearedevelopers.com/videos/256-distributed-search-under-the-hood) - [Phel, a native Lisp for PHP](https://www.wearedevelopers.com/videos/791-phel-a-native-lisp-for-php) - [Using AI Without Losing Your Skills](https://www.wearedevelopers.com/videos/2045-using-ai-without-losing-your-skills) - [Make Your Data FABulous](https://www.wearedevelopers.com/videos/430-make-your-data-fabulous) - [Writing a full-text search engine in TypeScript](https://www.wearedevelopers.com/videos/504-writing-a-full-text-search-engine-in-typescript) ## Related Articles - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs) - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs) - [The 12 Best Jobs for Software Engineers](https://www.wearedevelopers.com/magazine/401-the-12-best-jobs-for-software-engineers) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) - [How Much Does a Software Engineer Make? Realistic Software Engineering Salaries](https://www.wearedevelopers.com/magazine/425-how-much-does-a-software-engineer-make-realistic-software-engineering-salaries)