Going Old-School: Designing Algorithms for Fast Weighted Sampling in Production

Shaked Zychlinski | 06 Jun 2019 | Big Data

Tags: algorithms, performance, production, real-time, sampling, uncertainty

If you happen to write code for a living, there’s a pretty good chance you’ve found yourself explaining Read More...

My first date with my company

Yochai Uliel | 31 May 2019 | Culture

Tags: Culture, Engineering Culture, Onboarding

My first date with my company – or – how onboarding looks from a freshman’s eye   According Read More...

How to conduct a good reference check?

Asaf Halfon | 30 May 2019 | Culture


Every candidate we recruit goes through a long process of evaluation. Near the end of the process, after Read More...

ICLR 19 highlights (and all that Jazz)

Inbar Naor | 16 May 2019 | Data Science

Tags: Fairness, GAN, Generative Adversarial Networks, ICLR, Reinforcement Learning, Transfer Learning, uncertainty

A joint post with Ofri Mann   We went to ICLR to present our work on debugging ML Read More...

How Intellij Tricked Me To Think Mockito Is Broken

Ohad Edelstein | 14 May 2019 | Uncategorized


My Little DOH! Moment Did you ever debug a piece of code, and said to yourself: “this shouldn’t happen!”? Read More...

Bucket the shuffle out of here!

Igor Berman and Radik Komarnitsky | 28 Mar 2019 | Big Data

Tags: big data, data, performance, shuffles, Spark, Spark-on-demand, tips

Intro At Taboola we use Spark extensively throughout the pipeline. Regularly faced with Spark-related scalability challenges, we look Read More...

TensorFlow – The Scope of Software Engineering

Yoel Zeldes | 05 Feb 2019 | Tips and Tricks

Tags: software engineering, tensorflow

How to structure your TensorFlow graph like a software engineer   So you’ve finished training your model, and Read More...

Beginner’s guide for naming things in your code

Lior Halfon | 05 Feb 2019 | Tips and Tricks

Tags: beginners, code readability, names, naming, naming variables

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” Read More...

Preparing for the Unexpected

Yoel Zeldes | 27 Jan 2019 | Machine Learning

Tags: deep learning, machine learning

Some of the problems we tackle using machine learning involve categorical features that represent real world objects, such Read More...

Where did my cookies go??

Yoni Epstein | 25 Jan 2019 | Web Development

Tags: cookies, cross_device, data, identity, identity_graph, tracking, user_data

If you are using web cookies to operate your online business you probably know already that just like Read More...

Think your Data Different

Zohar Komarovsky and Yoel Zeldes | 21 Jan 2019 | Machine Learning

Tags: data science, deep learning, machine learning, neural networks, node2vec, word2vec

In the last couple of years deep learning (DL) has become a main enabler for applications in many Read More...

Deep Multi-Task Learning – 3 Lessons Learned

Zohar Komarovsky | 06 Jan 2019 | Data Science

Tags: data science, deep learning, machine learning, multi-task learning, neural networks, tensorflow

For the past year, my team and I have been working on a personalized user experience in the Read More...

Get real life debugging using Kibana and Elastic

Eyal Zur | 30 Dec 2018 | Big Data

Tags: elasticsearch, kibana

We all have these amazing machines in our development and testing labs, and we know that our real Read More...

Fibers from out of (user) space – Deeper view

Jordan Sheinfeld | 26 Dec 2018 | Java

Tags: concurrency, CPU, fibers, performance, threads

A couple of months ago my team had its first experience working with Java fibers, we needed to Read More...