Our client is seeking an experienced Lead Software Engineer to join our team full time. We are a fast growing startup in the advertising technology sector, trying to tackle some of the most challenging problems facing the industry. As an exchange engineer, you will be responsible for improving our exchange that’s handling billions of ad requests a day and quickly growing, optimizing our real time bidding logic, and enhancing our computer vision and image resizing technology that handles millions of unique image combinations a day.
What is required?
- Minimum 5 years of relevant development experience.
- Experience in building out high performance APIs and services leveraging Java, experience with Netty and event-driven, non blocking applications is a bonus;
- Experience working on large scale systems and network heavy systems capable of handling billions of HTTP requests a day;
- Familiarity with in-memory key value stores such as Memcache, Redis or Aerospike
- Comfortable working with queues or other messaging systems such as RabbitMQ or Apache Kafka
- Comfortable taking ownership of projects and showcasing key accomplishments;
- Strives for continued learning opportunities to build upon craft;
- Excellent organizational skills and attention to detail;
- Ability to work quickly and independently with minimal oversight;
- Ability to accept feedback and constructive critique positively;
- Solid understanding of different design patterns and their associated tradeoffs;
- Extremely strong and demonstrable work ethic.
- Java 8 & Netty to power our real time bidding ad exchange & large scale API
- Apache ZooKeeper & Apache Kafka to power our message bus
- Memcached & Aerospike as our high speed datastores
- Amazon Web Services, Terraform, & Ansible to manage our deployment and infrastructure
What you will do:
- Own a mission critical codebase that’s at the heart of TripleLift’s value proposition;
- Write maintainable and well tested code that will be executed billions of times a day and needs to respond in hundreds of milliseconds;
- Manage and actively monitor the health of our exchange which runs globally across multiple AWS regions and data centers;
- Research and implement cutting edge technologies that improve the performance of our exchange;
- Design systems for scale that can handle an order of magnitude growth in traffic;
- Mentor and coach others on the engineer team around Java and distributed systems best practices.