Staff Software Engineer - Java

Canada || 958 Days Ago
Category :IT
Country :Canada
Canada Remote
publish date :2023-01-30
Description
Overview At SolarWinds, we’re a people-first company. Our purpose is to enrich the lives of the people we serve—including our employees, customers, shareholders, Partners, and communities. Join us in our mission to help customers accelerate business transformation with simple, powerful, and secure solutions. The ideal candidate thrives in an innovative, fast-paced environment and is collaborative, accountable, ready, and empathetic. We’re looking for individuals who believe they can accomplish more as a team and create lasting growth for themselves and others. We hire based on attitude, competency, and commitment. Solarians are ready to advance our world-class solutions in a fast-paced environment and accept the challenge to lead with purpose. If you’re looking to build your career with an exceptional team, you’ve come to the right place. Join SolarWinds and grow with us! SolarWinds offers a SaaS application performance monitoring platform providing our customers (other software engineers) with deep insight into how their applications are performing, down to the code execution for a particular request. If you've ever loaded a URL and wondered what's happening under the hood across multiple application tiers before getting back a web page, this is the opportunity to see how APM delivers that insight from the inside. The software we work on runs inside customer application processes, automatically reporting observability data to the platform so it can create distributed trace graphs, service maps and other analytics. We provide a tracing library for each popular programming language, which must work under a variety of deployments and have minimal performance impact in order to be used in high-traffic production environments. We’re looking for someone who's immersed in the Java web programming ecosystem—and really wow us if you know the mechanics of Java class loading and bytecode modification. You’ll be combining an eye for performance with digging into the intricacies of Java instrumentation and the OpenTelemetry project. If you enjoy continually learning new technologies to decipher how things work, and you find satisfaction taking careful ownership of software that our customers trust enough to run inside their applications, we’d like you to join our talented development team! Responsibilities Research any part of the JVM landscape required for a feature or fix--exploring and staying current with the observability domain, the OpenTelemetry Java project, library internals and web technologies is a central theme in this job. Communicate effectively about your findings and ask questions that help focus your approach. Write code, lots of it! Maintain and enhance our OpenTelemetry Java custom distro which adapts the upstream codebase with additional features required by our integrated observability platform. Under the hood, this is a javaagent library that uses bytecode modification to automatically extract and report telemetry from an application running on the JVM. Test your work for correct and performant behavior, using a variety of automation tools including test frameworks, containers and AWS services. Use code reviews as a chance to revisit and refine; do the same for your coworkers by discussing their code (in C
, C/C++, Go, Node.js, Python or Ruby) with thoughtfulness and respect. Respond to support escalations by putting on your sleuthing hat and looking for clues while channeling as much of a customer perspective as possible. Participate in the OpenTelemetry open source community with questions, discussions and code contributions. Qualifications Self-driven capacity to organize and prioritize tasks with an eye towards the end goal. Good understanding of concurrency models, metaprogramming concepts, RPC frameworks such as gRPC and debugging techniques. Experience designing and implementing performance-critical production JVM applications that are robust, maintainable, and well-tested. Ability to dive into the internals of a Java library with the debugger and set up a variety of dependencies such as web and database servers to exercise your understanding. Working knowledge of the Java ecosystem, how the popular frameworks, libraries and application servers are used and common deployment environments. A positive attitude for open discussion, helping and learning from others to improve the product. Open to working in Linux but troubleshooting on Windows (or vice versa!); familiarity with virtualized environments including EC2 and Docker. What we offer: We’ve created a fun, flexible environment that lets you work to your maximum potential. This is a great opportunity to join an unbeatable team who cares as much about getting a job well done as you do. The work is serious engineering, but it’s not a pigeonhole. You’ll collaborate with peers on other engineering teams, product management, customer success, and even customers directly as we build a fantastic experience for users of the product.
The ad has expired. You can see similar ads below
2023-11-11
£15,000 - £20,000
2021-09-26
£45,000 - £50,000
2021-09-26
£45,000 - £50,000