Reviewing code and test implementations for best practices and algorithmic complexity
Available to support engineers on an On-Call shift, when needed
Reading requirements documentation from Product, providing a perspective on feasibility and translating into implementation tasks, and partnering with teams’ leads through execution as needed
Exploring, researching, implementing proofs-of-concept, and proposing solutions that will improve Ad Serving systems (reduce cost and overhead, improve maintainability, minimize the time features take to be in production, etc)
Defining, reviewing, and documenting software and system designs in a high throughput, low latency microservices environment
Enhancing systems’ observability with proper metrics, monitors, and alerts
Mentoring and inspiring others in all aspects of professional software development
Requirements
BS or MS in Computer Science/Engineering or relevant work experience
10+ years of software engineering experience
Advanced proficiency with Java, such as understanding heap, multi-threading, garbage collection, profiling
Advanced proficiency with front end technologies such as Node, React, NextJS, Express, Typescript, Tailwind
Demonstrable analytical / problem-solving / design skills in a highly distributed and highly available services ecosystem
Excellent communication, collaboration skills, and a strong teamwork ethic with both technical and non-technical audiences
Comprehensive experience with: SpringBoot and related Spring projects
Non-relational database technologies e.g. DynamoDB, Redis and/or MemCache
Apache Kafka and/or Kinesis
AWS or any other cloud platform
Observability tooling (logs, metrics, etc)
Tech Stack
Apache
AWS
Cloud
DynamoDB
Java
Kafka
Microservices
Next.js
Node.js
React
Redis
Spring
Spring Boot
SpringBoot
TypeScript
Benefits
A bonus and/or long-term incentive units may be provided as part of the compensation package
Full range of medical, financial, and/or other benefits depending on the level and position offered