Title: APM – Go Agent Engineer
Location: Distributed, Global
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. The Elastic family unites employees across 30+ countries into one coherent team, while the broader community spans across over 100 countries.
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 datastore 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, and Logs 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 Go 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 Go developers instrument, debug, and monitor Go applications. As part of the agent team, you’ll be deeply involved with the entire codebase and take on responsibilities for new features, improving the resource footprint and roadmap planning. You will also be engaging with the open source community.
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 Go developers.
The team is diverse and distributed across the world, and collaborates on a daily basis over GitHub, Zoom, and Slack.
What you will be doing
- Join the Go APM Agent team alongside one other person on the team.
- Improve the Go agent for Elastic APM
- Build new integrations with Go frameworks and services
- Improve the current code base
- The agent is open-source, so the job includes handling community pull requests, issues, etc.
- Collaborate with APM Server and UI teams to ensure the best experience possible for Go developers
- Building demo applications highlighting Elastic APM capabilities
What you will bring along
- 3+ years of professional and in-depth experience with Go, possessing broad knowledge of the Go ecosystem, including web and RPC frameworks, logging frameworks, and database drivers.
- Previous experience developing APM products or optimization related code. e.g.
- You have worked developing an APM product
- You have developed or contributed to a performance-oriented Go library or tooling
- You have developed dynamic instrumentation for Go programs
- You know and care about writing performant Go and have traced and fixed performance issues yourself.
- Experience with and interest in going deep on advanced topics such as memory management, benchmarking, profiling, and source code transformation.
- Experience with Cloud Native application development.
- Deep knowledge of the Go runtime is a big plus.
- Ability to work independently in a globally distributed team.
- Competitive pay and benefits
- Option to work 100% remote or from any office
- Stock options
- 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.
- Distributed-first company with employees in over 30 countries, spread across 18 time zones, and speaking over 30 languages! Some even fly south for the winter 🙂
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.