Ruby Engineer at Elastic
Title: Copy of Observability – APM – Ruby Agent Engineer
Location: Distributed, Canada
The Observability team is in charge of developing solutions that focus on application developers and engineers that run infrastructure and services supporting these applications. Elasticsearch is an efficient data store for logs, metrics, and application traces, supporting the three pillars of observability. The Observability team builds and maintains solutions that make getting insights from this data turnkey and efficient, such as our APM, Infrastructure Monitoring, Logs, and Uptime solutions. When developing these solutions, we think about the problem end-to-end: how do we automatically collect data from common data sources, how do we store it efficiently in Elasticsearch, how do we present this information to the user, what actions do we take on the insights from the data? All of these aspects are important in bringing a turnkey solution to the market.
As a Ruby Agent Engineer on the APM team, you will be part of a team developing a high-quality, open-source APM product aimed to help fellow Ruby developers instrument, debug, and monitor Ruby applications. As part of the APM Agents team, you’ll be deeply involved with the entire codebase of the Ruby APM Agent and collaborate on a daily basis with other Agent engineers in the team. You will take on responsibilities for new features, alignment with other agents, improving the resource and performance footprint of the agent, and contribute to roadmap planning for the Ruby APM Agent. As a core contributor and maintainer of an open-source project, you will also be engaging with the open-source community.
Besides close collaboration within the APM Agents team, you will also collaborate closely with the APM Server team when adding new features to the server API and with the UI team to ensure that we deliver the best possible experience for Ruby developers.
The team is diverse and distributed across the world, and collaborates on a daily basis over GitHub, Zoom, and Slack. Thus, the ability to work within a distributed team is critical.
What you will be working on
- You will be joining a team of Agent Engineers with many different skills and focuses on different runtimes and programming languages
- Work with broader APM Agents team on new cross-agent features, specs, and alignment
- Improve the Ruby agent for Elastic APM
- Develop new features
- Explore, evaluate and implement new monitoring and profiling approaches
- Build new integrations with Ruby frameworks
- Improve the current codebase
- Ensure high quality and agent performance
- Work on agent integrations with open standards (e.g. OpenTelemetry)
- The agent is open-source, so the job includes handling community pull requests, issues and handling community requests in discussion forums
- Collaborate with the APM Server and UI teams to ensure the best experience possible for Ruby developers
What you will bring along
- 5+ years of professional and in-depth experience with Ruby, possessing a broad knowledge of Rails, Sinatra, or other Ruby web frameworks.
- Experience with developing libraries (gems) for Ruby
- Previous experience in developing APM products, performance troubleshooting, and code optimization, or other technically deep knowledge in APM and Observability
- You have worked developing an APM product
- You have developed or contributed to a performance improvement-oriented Ruby library or tooling
- You know how to and care about writing performant Ruby code and have traced performance issues yourself.
- Experience and interest in going deep on advanced topics such as multithreading, memory handling, microbenchmarks, profilers, and the like.
- Ability to work independently in a globally distributed team
- Experience with JRuby is a big plus.
- Previous experience with the Elastic Stack
Additional 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 is 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
- A generous number of vacation days each year
- Double your charitable giving – We match up to $1500 (or local currency equivalent)
- Up to 40 hours each year to use toward volunteer projects you love
- Embracing parenthood with a minimum of 16 weeks of parental leave
Sign up for Daily Remote Job Alerts!