Software Developer, Real-Time Programmable Platform

SoftwareDeveloper, Real-Time Programmable PlatformAppNexus was founded on the belief that we could use technology to help our clients buy and sellmediain the most effective and efficient way possible. From the beginning, a core part of that vision has been developing real-time systems that allow us to make faster and smarter decisions on billions of ad views daily. In just the last three years we've grown from handling 300,000 requests per second to well over 5 million. These events generate over 200TB of data per day that we process, analyze and feed back into ourdecisioningengines. The real time programmable platform team focuses on components that empower our customers to define custom bidding logic that lets them easily and cost-effectively buy relevant ad inventory while we handle the complexities of performance, scale, and algorithmic efficiency. If that wasn't challenging enough, every one of the billions of ad requests we handlehas to be completed in under 100 milliseconds.Consider some of the problems you will try to solve:Serverlessbidder:Managing a cluster of hundreds of machines running complex valuation algorithms is hard. Our team develops domain specific languages that allow companies to concentrate on writing predictive models that fit their business, not maintaining their own server infrastructure.Real-time data science: We closely work with data-science teams (including our own). We need to understand what our clientsare trying to achieve in order to create good real-time predictions. That often means doing acost-benefitanalysis of approximating or simplifying components.Compiler and interpreter optimization:We have close to 50k active custom models which need to be considered on each auction. We use our own compilers and bytecode interpreters to optimize and execute those programs in the most efficient way within our real-time constraints. We are always thinking about optimization.Build a flagshipproduct: We are a small team that has ownership of a key project.You wouldwork alongside clients and other teams to validate and build a product that significantlyimpactsthe company's bottom line.About the job:Work with our Montreal based team to design and implement new features and enhancements to our programmable bidderlanguagesthat require elegant, yet powerful, software solutions to satisfy hard real-time constraints.Collaboratewith our data science and optimization teams to make sure the programmable platform can successfully run their latest models.Work closely with other engineers and our Product teams to help them build new client features on top of the programmable platform.Prioritize bug fixes toensure mission critical up-time.Consistently look for ways to optimize and improve our systems.About your skills:BA/BS degree OR MS degree in computer science or a related field. (A few years of experience is a plus)Excellent Computer Science fundamentals with regards to data structures, algorithms, time complexity, etc.Familiarity with either C,C++,or Common Lisp.Interest in building high performance, multi-threaded, distributed systems and applications.Interest in learningcompiler development and optimization.Interest in learning low-level systems engineering and optimization techniques.More about you:You are passionate about a culture of learning and teaching. You love challenging yourself to constantly improve, and sharing your knowledge to empower othersYou like to take risks when looking for novel solutions to complex problems. If faced with roadblocks, you continue to reach higher to make greatness happenYou care about solving big, systemic problems. You look beyond the surface to understand root causes so that you can build long-term solutions for the whole ecosystemYou believe in not only serving customers, but also empowering them by providing knowledge and toolsLearn. Teach. Build.AppNexians make greatness happenJoin our community

Meet Some of AppNexus's Employees

Pamela I.

Director, Account Management

Pamela’s team of Account Managers—based in New York—work within the Publishers Business Unit—finding and supporting strong partnerships with strategic demand clients.

Wei Z.

Software Engineer

Wei builds Android software development kits for companies who incorporate AppNexus into their digital advertising strategy. She helps make sure customers have a smooth product to implement.

Back to top