Sift’s 2023 hackathon spotlights our “Start with the customer” company value
November 1, 2023 12:55 pmOne of our core values at Sift is “Start with the customer”— meaning we always start with solving real-world customer […]
Sift’s 2021 Hackathon brings the entire company together for innovation
October 20, 2021 5:49 pmOne of our values at Sift is “Ever Better”, meaning that we don’t settle for the status quo, and as […]
Lessons Learned From Bigtable Data Migration
(Part 4/4)
March 6, 2020 1:16 am In the previous article, we discussed how we evaluated Cloud Bigtable for Sift, how we prepared our systems for the […]
Planning a Zero Downtime Data Migration
(Part 3/4)
February 20, 2020 12:49 am In the previous article, we described how we assessed the fitness of Bigtable to Sift’s use cases. The proof of […]
Evaluating Cloud Bigtable
(Part 2/4)
February 12, 2020 11:08 am In the previous article, we presented the challenges that prompted us to migrate away from HBase on Amazon Web Services […]
Migrating our cloud infrastructure to Google Cloud
(Part 1/4)
February 12, 2020 10:00 am At Sift, we have built a scalable and highly available technology platform to enhance trust and safety in the digital […]
Introducing Resourcerer: Declarative React Data-Fetching for REST APIs
October 17, 2019 2:30 pmWe are excited to announce the public release of a package we’ve been using internally at Sift to handle our […]
Sift Named On Built In’s “Best Places to Work” Award List
February 26, 2019 1:19 pmSift is excited to announce that we’ve been named one of Built In Seattle’s 2019 Best Places to Work! This […]
Jun Qian and Machine Learning in the Real World
January 8, 2019 12:01 pmJun Qian’s typical day consists of thinking through real-world machine learning applications, hiring brilliant engineers, and digging through incomparable types […]
Security Bulletin – AWS Reported AMI Issue
September 21, 2018 4:40 pmAWS notified Sift on September 18th, 2018, of an issue where AWS incorrectly labeled Amazon Machine Images associated with Sift’s […]
The Sift Science Console’s Javascript Loading Strategy
May 24, 2018 8:06 amA few years ago, the advice for keeping your page fast was to keep your page weight down. These days, […]
Testing and Deploying Sift’s JavaScript SDK
April 25, 2018 1:27 pmThe rapidly evolving device and browser landscape allows us to collect increasingly rich data via our snippet. Because we host the snippet and our customers fetch it from us dynamically, expanding its functionality requires a strict eye on compatibility for all of our customers' end users. Our primary concerns are safety and iteration speed, and we’ve invested heavily in robust testing and deployment infrastructure to allow us to confidently roll changes out without spending weeks in manual testing.
Deep Learning for Fraud Detection
March 22, 2018 10:18 amIn this blog post we detail how Sift has begun leveraging deep learning (in the form of RNNs) to improve our ability to detect fraud.
How Sift Trains Thousands of Models using Apache Airflow
March 20, 2018 12:25 pmAt Sift Science, engineers train large machine learning models for thousands of customers. We need processes and tools to do […]
Preloading your Javascript Split Files
February 28, 2018 8:34 amBy now, you’re probably familiar with the benefits of splitting up your app’s javascript into several smaller files through code […]
2017 Sift Engineering in Review
December 31, 2017 4:00 pm2017 has been a pivotal year for Sift Science and the engineering team. We’ve delivered on amazing product launches, technological […]
Models in Disguise: How Sift Science Ships Non-Disruptive Model Changes
September 12, 2017 10:10 amTL;DR: We can transform the score distributions of new models to match those of old models, while preserving the new […]
Building high-performance tracking SDKs for iOS
March 13, 2017 12:14 pmSift Science’s iOS SDK enables mobile applications to send us device properties and application lifecycle events for use in fraud […]
How Workflows Work: Reliable Workflow Processing at Scale
January 18, 2017 3:04 pmThis summer we launched Workflows, a new product that allows fraud managers to build and update their fraud processes without […]
conf.startup.ml
January 13, 2017 2:16 pmWe’re very proud to sponsor Startup ML’s conference on Putting Deep Learning into Production, being held Jan 21, 2017. While we […]
ML Experiments at Sift Science, Pt. 3: Building the Right Tools
January 9, 2017 8:51 amIn the first two posts of this three-part series we discussed how we ensure correctness when conducting and analyzing machine […]
ML Experiments at Sift Science, Pt. 2: Analyzing Thousands of Models
December 21, 2016 9:14 amIn the first post on ML Experiments at Sift Science, we described how we minimize bias in our offline experimentation […]
ML Experiments at Sift Science, Part 1: Minimizing Bias
December 1, 2016 2:44 pmAt Sift Science we use machine learning to prevent various forms of abuse on the internet. To do this, we […]
Improving Perceived SPA Performance by Prefetching Critical Resources
November 20, 2016 12:34 pmI remember being intrigued by Smashing Magazine’s post this summer about using PJAX to effectively turn static markup websites into […]
The Engineering Team
September 27, 2016 5:25 pmWe started Sift Science over 5 years ago with the mission to improve outcomes with data and create a safe, […]
Browser DGAF (that you use React) Pt. 2: FLIPping in React
September 21, 2016 8:05 pmIn the first post in this series, we looked at how coding within the React paradigm could lead to poor […]
Open Source: Kafka Partition Reassignment with Minimal Data Movement
July 28, 2016 4:40 pmWe’re happy to announce that we’re open sourcing one component of our Kafka operations toolkit: an algorithm that computes a […]
Concurrency and At Least Once Semantics with the New Kafka Consumer
June 8, 2016 7:00 amThis post is the first in a series that describes our experience in adopting Apache Kafka. Here at Sift Science, […]
Browser DGAF (that you use React)
March 16, 2016 5:58 pmAdventures in React Performance DebuggingRecently I read Benchling’s 2-part series in debugging performance issues in React, and it really echoed the issues and solutions that I’ve been working through on the Sift Science Console. So I was inspired to chime in with some of my own React performance debugging experiences in what may become a short series itself.
Grace Hopper Takeaways: Pipeline, Retention, and Diversity
October 30, 2015 5:12 pmA few weeks ago, I attended my first Grace Hopper Celebration as a technical speaker. There, I presented twice, sharing some findings from my research work on human-robot interaction. I walked away from the conference having learned two new words: pipeline and retention. Don’t get me wrong – I know and understand these words individually, but I’ve never heard these two words used more frequently anywhere else in my life. Every keynote and plenary speaker talked about either the pipeline problem, the retention problem, or both. They picked sides over which is the bigger problem, or waffled between the two. Every brunch, linner, and dinner conversation revolved around these two keywords.
Large Scale Decision Forests: Lessons Learned
August 25, 2015 8:51 pmAt Sift Science, we use a variety of popular machine learning models to detect fraud for our customers. However, until recently we relied exclusively on a combination of linear models and sophisticated feature engineering. As we were reaching the limits of this setup, we began experimenting with our first non-linear model: random decision forests. Several months and over 100 experiments later, we were thrilled to announce the addition of random decision forests to our ensemble of models used to fight fraud. Along the way we learned quite a few things about designing a random decision forest classifier for the fraud detection use case. Here we detail several of these learnings, including how we handled sparse and missing features, useful model visualization techniques, heuristics we used to improve class separation, specialized feature engineering, and how we combined our random decision forest with our existing models. All told, these learnings resulted in an 18% reduction in error for our customers.
Turn Up the Bayes, Part 2
August 12, 2015 5:10 pmWe really love tech talks.At Sift Science, sharing knowledge and facilitating great discussion are two of our favorite things (just behind fraud-fighting, board games, ML, and really beautiful data visualization). In that vein, we've been delighted to host a summer tech talk series entitled Turn Up The Bayes, where we invite awesome engineers to chat about the interesting things that they're working on. To set the mood, we provide delicious pizza and refreshing beverages, and set aside plenty of time for discussion, questions, and more pizza.
The Sass Mixins/Placeholders I Can’t Live Without for Responsive Web Design
July 24, 2015 4:50 pmHere at Sift Science, we just completed another big step in our ongoing marketing site redesign, overhauling the homepage and replacing old landing pages with [prettier, responsive, and more performant ones][1]. While the big performance improvements aren't quite ready to showcase yet (check in soon for more on that), I realized that there are a few custom Sass mixins and placeholders that I rely on heavily for responsive development—I'm not actually sure what I'd do without them—and I thought I'd share them here along with some CodePens so that other people might also take advantage of them!
Decision Forests: Taking Our Machine Learning to the Next Level
July 9, 2015 5:13 pmWe're adding random decision forests to our machine learning solution, so get ready for an 18% improvement in Sift Score accuracy!This week, we launched an entirely new machine learning model called random decision forests, which will work alongside our existing models. Why? For an additional layer of prediction power, of course. With Sift Science’s decision forests in place, we expect that, on average, our customers will see a significant increase in fraud detection accuracy. This added model makes our online and large-scale learning capabilities even more robust!
Turn Up The Bayes, Part 1
July 1, 2015 11:46 pmThis week, we hosted the first session of our new summer speaking series (Turn Up The Bayes). I gave a talk on how we leverage a distributed database, HBase, to power an infrastructure that enables performant, distributed online learning. The following is a brief summary...but first, a quick introduction.Fraudsters always search for new ways to exploit opportunities at the expense of companies that provide legitimate goods and services. At Sift Science, we use real-time supervised machine learning to sabotage fraudster plots. As it turns out, the “real-time” portion of our product brings significant infrastructure challenges.
How We Rebuilt Our App, Part 2: From Rails + Marionette to React
June 9, 2015 6:32 pmIn the first post of this series, we gave an overview of Sift Science’s architectural migration to React and Dropwizard. We followed up with some best practices for scaling React in a production setting and some tips on using React with D3. Today’s post will chronicle the front-end migration process of moving from Rails + Backbone + Marionette + Handlebars to a static Backbone + React console, and the challenges we encountered.
Running ML Infrastructure on HBase
May 29, 2015 6:52 pmOn May 7th, I presented at HBaseCon, demonstrating how Sift Science leverages HBase and its ecosystem in powering our machine learning infrastructure. In case you missed the talk, I’ll lay out the main points here.There are three main types of events that we receive from customers on our platform: page views (also known as page activities), purchases (also known as transactions), and “labels”.
d-Threeact: How the Sift Science Console Team Made d3 and React the Best of Friends
May 19, 2015 10:25 pmA little less than a year ago, the Sift Science Console Team decided to migrate its Backbone and Marionette Views to ReactJS see also our post on specific React tips we learned along the way. Among the many facets of a piece-by-piece migration like this was figuring out how best to manage (err...'reactify') our d3 charts. There were already a couple good reads/ listens on this topic—with very different views on the responsibilities of each library—which we found quite helpful in establishing our own approach.
Best practices for building large React applications
May 7, 2015 5:41 pmSift Science has been using React in production for almost a year now. In that time, we grew our application from a Backbone + React frankenstein hybrid app into one fairly large hierarchy of React components. In this post, we’ll describe some techniques and best practices that have helped us scale our UI code base with minimal friction. We’ll also walk through some common component design patterns.Hopefully this post will save you time and sanity and provide you with some new tools for maintaining a React code base that builds on itself (instead of breaking down) as the complexity of the UI grows.
How we rebuilt our app on React and Dropwizard, Part 1
April 28, 2015 8:06 pmTwo years ago, we publicly launched our first fraud product with the goal of making it easy for anybody to leverage the same machine learning technology that protects the largest internet retailers. That product had a very simple interface: we provided one API for sending data about user behavior and another to query the fraud score of a user. But as our customer base grew, we needed better internal tools to debug and surface customer issues.