Responsibilities:
- Research, design, and build systems to process and derive insights from high-dimensional, fast-moving, unstructured and structured data.
- Build advanced feature extraction pipelines that serve various advertising applications, including audience targeting, relevance and ranking, and performance optimisation.
- Work with Data Scientists to build and deploy machine learning and statistical models to predict or estimate key signals that are used to optimise advertising product performance.
- Run large-scale statistical A/B testing to evaluate the performance of machine learning and statistical models in advertising applications that serve hundreds of millions of impressions per day.
- Build compelling data visualizations and interactive dashboards for monitoring and sharing of business insights internally and externally.
Requirements:
- Bachelors/Masters in Computer Science or related field with 6-9 years of software development experience.
- Strong project estimation & planning skills with experience in driving projects end-to-end.
- Hands-on experience in implementing modern software development practices like Agile (Scrum), BDD, TDD, etc.
- Deep understanding of data structures and algorithms.
- Well versed with software design patterns.
- Experience with designing systems for scale with Object-Oriented design concepts
- Writing scalable, performant, maintainable code in one or more of the languages - Core Java, Scala, Node.js, Python
- Experience or understanding of Machine learning model building is a big plus
- Experience with Big data technologies such as Hadoop, Spark
- Experience building web services (REST-ful services)
- Experience with event-based architecture such as Kafka, Rabbitmq, ActiveMQ etc.
- Experience with containerization using Docker and orchestration using Kubernetes is a plus
- Great communication skills, written and verbal, with the ability to explain complex concepts and techniques in simple terms relevant to the needs of the business.
- Hands-on experience with SQL and NoSQL databases
- Good knowledge of common software development tools/technologies (Git, Java, Eclipse, Apache, MySQL, Oracle, NoSql databases, etc. ).
- Familiarity with cloud-based platforms
- Exposure to streaming technologies such as Apache Flink, Spark streaming, Kafka streaming