About the team:
Xandr operates one of the largest online advertising marketplaces in the world. We receive 9 million requests per second that are auctioned in the blink of an eye, send 40 million requests per second to over 100 integration partners, and process 235K object updates per minute, resulting in 300GB/s of inbound and outbound network flow. The Platform Engineering team is responsible for ensuring that our systems are running as efficiently and robustly as possible. At our scale, even the small improvements can result in significant impact to reducing our costs and enhancing the service to our customers.
About the job:
Xandr is seeking a Software Engineer to join the Platform Engineering team. You will be joining a specialized team that has deep expertise of our business and our stack (don’t worry, we’ll show you the ropes once you join!).
We have two primary goals:
- reducing the cost of running our business
- enabling application teams to quickly and safely make changes to their applications to meet the needs of our customers
As a company, we are actively migrating some of our services to the public cloud, which will present a whole host of new, exciting challenges!
The ideal candidate is someone who enjoys learning new systems and can take a holistic view when solving problems. The online advertising ecosystem is full of complex logic and is composed of multiple components working in concert; performance improvements can be found in multiple areas.
- Proactively identify performance improvements to the system, prototype them, and partner with the application teams to deploy them
- Build or configure tools to help application teams understand the performance impact of their changes and identify stability regressions
- Evaluate new hardware and system architectures to determine their viability in meeting or surpassing the needs of the business
- Participate in design discussions with Product Engineering teams about new features that we’re building
- Writing tests for the platform code to identify and fix potential bugs
What you will learn:
- Distributed system design/architecture that operates on large scale
- Lock-free data structures and algorithms
Concurrency models (actors/lightweight collaborative multithreading/…)
- 2+ years of experience building software professionally
- Experience using C/C++ or Golang to build high performance applications, preferably in a Linux environment
- Experience contributing high-quality code to large codebases
- Experience using Linux internals and APIs preferred
- Experience using profiling tools (e.g., perf, strace) preferred
- Familiarity with docker & k8s preferred
- Experience building capacity models preferred
More about you:
- You are passionate about learning and teaching. You love challenging yourself to constantly improve and sharing your knowledge to empower others.
- You are not satisfied with the status quo and are always looking to improve how things are done and what is built.
- You are focused on finding the root cause of problems, not settling for fixing the symptoms.
- You like to take risks when looking for novel solutions to complex problems. If faced with roadblocks, you continue to reach higher to make greatness happen