Are you excited about operating at Internet scale? Inventing how ads performance is measured in the online retail world? Growing and learning from the world class engineers?
If so, we want to hear from you!
Key job responsibilities
You will be responsible for designing and developing software products that will provide measurement data to a wide set of users across all of Amazon's advertising suite.
You will be able to demonstrate a variety of architectural approaches and design patterns and have a demonstrated competence in designing maintainable and scalable software written in a high-level language.
You will show your ability to adapt to changing technical environments and devise creative solutions to vexing software problems.
You will encounter some of the toughest and most inspiring technical challenges of your career as you build petabyte-scale services, invent new big data paradigms, and scale for extreme growth.
A day in the life
We enable advertisers to optimize ad spend and allocate budgets effectively by providing accurate, actionable and timely conversion measurement for all Amazon ad products.
We use a combination of deterministic techniques to produce the estimates that are fastest in the industry without compromising quality.
We apply the latest AWS big data and machine learning technologies on over 50 billion new events per day, operating petabyte size clusters.
We constantly invent on our cutting-edge event-driven architectures to stay ahead of growing scale.
About the team
This team defines and produces the metrics used by advertisers to analyze the performance of their investment in ads. The charter of this team is focused on applications responsible for computing and distributing estimated conversions.
We work with a variety of systems and languages : combining AWS services like EMR, Kinesis and AWS Batch, with open source technologies such as Spark, Presto and PyTorch.
BASIC QUALIFICATIONS
- 5+ years of non-internship professional software development experience
- 5+ years of programming with at least one software programming language experience
- 5+ years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience
- Experience as a mentor, tech lead or leading an engineering team
- Bachelor's degree in computer science or equivalent
PREFERRED QUALIFICATIONS
- 5+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
- Master's degree in computer science or equivalent
- Experience building software systems that have been successfully delivered to customers
- Experience in databases, analytics, big data systems or business intelligence products
- Experience with building high-performance, highly-available and scalable distributed systems.
- Deep hands-on technical expertise, excellent verbal and written communication skills
- Proficiency in, at least, one modern scripting or programming language such as Scala or Java
- Experience in the advertising or search industries
- Experience developing software services and knowledge of design for scalability, performance and reliability
- Experience with Agile methodologies
- Experience with distributed (multi-tiered) systems, algorithms, and databases