Experience crafting APIs and the ability to reason through tradeoffs
Proficient in algorithms and data structures
Knowledge of low-level Java such as concurrency, parallelism, classloaders, etc.
Experience leading large scale projects across engineering teams
Willingness to dive into new issues and ask for help when you need it
Nice to Haves
Knowledge of JDK internals: modules, the Java memory model, garbage collection, database load, caching techniques, etc.
Knowledge of low level primitives such as JNI (Java Native Interface), JNA (Java Native Access), ByteBuddy, ASM, bytecode, FFI (Foreign Function Interface), and FFM (Foreign Function and Memory API)
Knowledge of containers and Kubernetes
What you'll be doing
Contributing to large, impactful projects that evolve the core infrastructure that underpins Elasticsearch
Shaping how Elasticsearch runs in Elastic Cloud
Designing and implementing new horizontally-scalable features and APIs in Elasticsearch
Understanding and contributing to surrounding layers such as replication and search
Optimizing internal data structures used within Elasticsearch
Solving difficult issues, including performance or concurrency issues, and proposing solutions
Collaborating in the open with the ES team, Elastic users, and other supporting open source projects
Supporting our support engineers with the harder problems
Helping to drive our long term technical strategy in relation to changes in the JDK and other core dependencies, for example the deprecation of the security manager
Perks and Benefits
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 a minimum of 16 weeks of parental leave