At Elastic, we have a simple goal: to solve the world's data problems with products that delight and inspire. As the company behind the popular open source projects — Elasticsearch, Kibana, Logstash, and Beats — we help people around the world do great things with their data. From stock quotes to Twitter streams, Apache logs to WordPress blogs, our products are extending what's possible with data, delivering on the promise that good things come from connecting the dots. We unite Elasticians across 30+ countries (and counting!), 18 timezones and 30 different languages into one coherent team, while the broader community spans across over 100 countries.
Do you want to work on distributed search and analytics software which impacts the lives of millions of people? We are looking for extraordinary Java engineers who love solving problems. We’re not interested in your previous job title. Instead, we are looking for bright people with a deep knowledge of Java and a desire to take on new challenges.
Engineering a highly complex distributed system that is easy to operate via elegantly designed APIs is a non-trivial effort. It requires solid software development skills, and more importantly, a sharp mind and the ability to think like a user. We also care deeply about giving you full ownership of what you’re working on. Our company fundamentally believes great minds achieve greatness when they are set free and are surrounded and challenged by their peers, which is clearly visible in our organization. At Elastic, we effectively don’t have a hierarchy to speak of. We feel that anyone needs to be in the position to comment on absolutely anything, regardless of their role within the company.
Right now, we want to add a talented Performance Engineer to join our Elasticsearch team.
Extend our macro- and micro-benchmarking infrastructure
Investigate performance issues on OS, JVM or application level
Create models and benchmarking methodology to support cluster sizing efforts
Improve the performance of core infrastructure of Elasticsearch (e.g., the networking layer)
Collaborating in open source with the ES team and the Elastic Stack users
Help our support engineers with the harder problems
What you will bring along
Solid understanding of operating system internals like virtual memory, networking, process and I/O scheduling.
Solid understanding of JVM internals including JIT compilation, object allocation / garbage collection and the Java memory model.
Be able to systematically analyze various performance issues with the appropriate tools and explain the findings to fellow engineers.
Good knowledge of Java
Knowledge of Python
Knowledge of system automation tools like Ansible
Strong shell skills
Competitive pay and benefits
Catered lunches, snacks, and beverages in most offices
An environment in which you can balance great work with a great life
Passionate people building great products
Employees with a wide variety of interests
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.
Elastic is an Equal Employment employer committed to the principles of equal employment opportunity and affirmative action for all applicants and employees. Qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender perception or identity, national origin, age, marital status, protected veteran status, or disability status or any other basis protected by federal, state or local law, ordinance or regulation. Elastic also makes reasonable accommodations for disabled employees consistent with applicable law.