Senior Software Engineer
Sift is the leader in Digital Trust & Safety, helping businesses protect themselves and their customers from fraud and abuse. We combine machine learning, behavioral analytics, and cutting-edge AI to power trust and reduce friction across the internet's most valuable platforms.
We're looking for a Senior Software Engineer to join our Payment Protection team and help shape the future of Trust & Safety. By delivering clear, accurate risk assessments at key moments in the end-user journey, we enable businesses to prevent fraud losses while creating seamless, adaptive experiences for their customers.
Our R&D team includes more than 100 engineers, with over 40+ based in Ukraine. Our Tech Stack: Core technologies: Java 11, GCP, BigTable, Kafka, Apache Flink, Spark, Dataproc, Dataflow, gRPC. Other components: AWS, Python 3, Apache Airflow, Athena, Snowflake, BigQuery, Ruby, Ruby on Rails. Frontend: React.js. We follow Scrum methodology with two-week sprints. What We're Looking For:
- 6+ years of experience building distributed backend systems with Java or Scala.
- 3+ years of experience working with large datasets using Apache Spark, MapReduce, or similar technologies.
- 3+ years of experience with cloud infrastructure (GCP, AWS, or Azure).
- Strong software engineering fundamentals (data structures, algorithms, distributed systems) and excellent debugging, testing, and problem-solving skills.
- Strong communication and collaboration skills, with a focus on team success.
Bonus Points For:
- Experience with stream-processing frameworks (Apache Flink, Apache Beam, Dataflow, etc.).
- Experience with HBase, BigTable, Kafka, ZooKeeper.
- Familiarity with ML systems: feature engineering, data validation, training, monitoring, and model lifecycle management.
What You'll Do:
- Design and implement tools and processes to release new machine learning models quickly, safely, and with minimal disruption.
- Participate in architecture discussions to ensure we can serve hundreds of ML models at thousands of QPS.
- Build scalable, low-latency, high-throughput, fault-tolerant, and easily maintainable data pipelines for both batch and real-time systems.
- Ensure our systems scale rapidly while adapting to evolving product needs.
- Support, motivate, and collaborate with engineers and data scientists, fostering a productive and empathetic team environment.