Senior Software Engineer
GumGum is a contextual-first, global digital advertising platform that uses advanced AI technology to serve captivating creative ads that drive consumer attention, without the use of personal data. At GumGum, we don’t need to know who you are to deliver relevant and engaging ads that align with your active frame of mind. We believe that a digital advertising industry based on context rather than personal data builds a more equitable and less invasive future for the internet and is better for consumers, publishers and advertisers alike. Our blueprint for the future, The Mindset Matrix™, combines the power of context and creative in digital advertising to deliver superior attention and drive consumer action without sacrificing personal data.
To be a part of this next phase of digital advertising that prioritizes data privacy, please visit www.gumgum.com/careers
The Ad Exchange engineering team is responsible for the technical implementation and operations of our Ad Exchange technology. The Ad Exchange software handles a high volume of requests (30 million requests per minute) and is a highly distributed Java web service. Our team currently uses technologies such as Java, Spring, MySQL, Kafka, Aerospike, ScyllaDB, Memcache, etc.
As a Senior Software Engineer, you will focus on improving availability, resiliency and observability of the ad exchange platform which is the major business line for GumGum. You will be responsible for developing new microservices, database solutions, monitoring and observability tools. This role will also be responsible for technical upgrades to the ad exchange platform and maintaining the multi-cloud architecture of Ad Exchange. This role will be responsible for architecting and implementing new solutions by collaborating with technical leads, principal engineers and other managers within the Platform Squad.
What You'll Achieve
- Ad Exchange Technical Execution
- Design high volume, high traffic microservice services written in Java, orchestrated with Spring and using data from MySQL, NoSQL databases technologies such as Scylla and Aerospike.
- Engage in technical architecture discussions, solve ambiguous problems, and execute on a solution with a team of engineers across ad exchange, data, and web engineering
- Design and Develop highly efficient and observable microservice architecture for ad exchange workload
- Improve performance of the Ad Exchange - by optimizing memory and CPU utilization of ad exchange and efficiently routing network traffic between different microservices
- Setup integrations with supply and demand side partners
- Product Development and Project Management
- Collaborate with Product and internal stakeholders to identify, prioritize and develop new features and improvements for our products, as well as provide support for any stakeholder issues
- Work with other Engineering teams, ensuring requirements are considered and met for cross team projects
Skills You'll Bring
- B.S. in Computer Science preferred or equivalent experience.
- 4+ years of experience as a developer with understanding of programming languages, preferably Java and Spring Framework
- A history of successfully shipping products into production
- Experience in a high volume transaction system > 100k transactions/second is a plus
- Excellent communication skills and demonstrated ability to work with cross-functional teams.
- Experience working with AWS and distributed systems such as Multi-Region Kubernetes Deployment, ScyllaDB, Aerospike or any equivalent NoSQL Database technologies
- Strong coding skills in Java and Multithreading
- Experience knowledge of RDBMS, SQL.
- Experience with Git, GitHub, PR Reviews, Gradle, and CI/CD delivery pipelines
- Ability to use Gen-AI tools like ChatGPT, Copilot or Amazon Q is a plus
- Understanding of AdTech Real Time Bidding protocol RTB is a plus
- Obsessed with system performance and architectural improvements
What We Offer
- Learn about our benefits & perks package at gumgum.com/benefits. If you'd like additional information, your recruiter can share more specifics during the hiring process!