Curious about what it’s like to work at the world’s number 1 discovery platform as an Experienced Software Engineer in the User Data team at Taboola? We’re glad you asked!
What are some of the things you do on a day-to-day basis?
Develop one of the largest real time big data operation in the world to support over 40TB of new data every day Have end to end ownership: Design, build, ship, measure and maintain our frontend and backend services Collaborate with the brightest software engineers team members Influence directly on the way billions of people discover the internet Develop at unimaginable scale, serving hundreds of requests per second Work on innovative projects that are the next growth engines for Taboola Here are some of the things software developers in our group did in the last several months:
A unique data pipeline for processing and managing user data signals Develop a complete user identities graph and find deterministic and probabilistic methods to enrich it An algorithmic model to predict the performance potential of a specific audience Infrastructure to create unique audiences for advertisers based on various signals (behavioral, contextual, etc’) An A/B tests system to explore variations and experiments over audiences Understand and use big data algorithms to estimate key business metrics over billions of impressions Build user interface using React that serve thousands of users And many more…
Our Tech Stack:
Java, JS, TS, Python, React, Spark, Kafka, Hadoop, Cassandra, Vertica, ES, MySQL, Memcached, HDFS, BigQuery, Kusto, Docker, K8S, Linux, Prometheus, Grafana, Airflow
What are the skills a good Software Engineer needs to have?
3+ years programming experience in Java/C#/Python/C++/JS Production systems understanding (system architecture of web products) Fearlessness to dive into what you don’t know Passion for solving problems, and working very close to the business BSc in computer science or equivalent Experience with SQL and No-SQL – advantage Willing to work intensively to gain fast results in an unknown field Product driven A pragmatic attitude toward decision-making (avoiding analysis paralysis) Strong analytical skills It would be great if you also have:
Experience developing large scale distributed systems Experienced with Kafka/docker/k8s Deep understanding with web systems (API / REST / NGINX) Experience with SQL and NoSQL (mysql / Vertica / Cassandra) Experience in Big Data tools (BQ / zeppelin etc) Knowledge in algorithms, data-mining and machine learning React /Web/JS experience