Who we are
Dynamic Yield’s personalization technology stack helps marketers increase revenue by automatically personalizing each customer interaction across the web, mobile web, mobile apps and email. The company’s advanced customer segmentation engine uses machine learning to build actionable customer segments in real time, enabling marketers to take instant action via personalization, recommendations, automatic optimization & real-time messaging - in a single platform.
Why work here
These are the perks and the benefits which await you when you join our team.
Fueled minds start with square meals. Our offices provide healthy snack options to keep you productive throughout the day.
We keep the team spirit going at all times, with numerous events and activities happening in the office, but also outside of the office.
This isn’t some little startup anymore. We’ve spent the last 8 years building a company that you can feel secure about. And as one of the fastest growing tech companies, we want you to help us grow, too.
About Our Machine Learning Software Engineer
Dynamic Yield is on the lookout for a Machine Learning Software Engineer with orientation to Machine Learning pipelines. As part of our team, this role is responsible for all engineering aspects of our machine learning algorithms and A/B test mechanisms at scale while working closely with the company’s data science team. The job requires someone skillful at the latest big data batch and streaming technologies. We are seeking for outstanding software developers, with strong OOP capabilities, deep understanding of distributed systems, and passion for data science and algorithms.
You’ll be expected to utilize advanced technical skills and critical thinking abilities to focus on appropriate methods for evaluation for optimal results by using a range of technological stacks we use: Spark, Flink, HBase, Kafka, Redis, Elasticsearch, Akka Streams, and we code mainly in Java, Scala and Python. A strong team player with great communication skills while having the know-how to deliver high-levels of coding, design, testing, and execution.
- Design, code, and maintain Big Data workflows/pipelines
- Create a machine learning infrastructure from training to predict
- Develop A/B test features and tools
- Build, maintain and execute unit test cases with high code coverage
- Work in teams and collaborate with others
- Bring a strong opinion to the table and be proactively involved with product planning
- Be fully responsible for the product’s lifecycle - from design and development to deployment
Optimal Skills for Success:
- 2+ years of experience as machine-learning engineer or Data engineer
- 4+ years of hands-on experience in engineering Scala/Java/Python
- Deep understanding of Machine Learning algorithms and models
- Experience with Big Data / NoSQL / Stream processing technologies (e.g Spark,Flink, Redis, Kafka)
- Proven experience with implementing production models (Infrastructure, data pipelines etc)
- Good knowledge of machine learning libraries and tools such: Pandas, Scikit-learn, NumPy, Notebooks
- Bachelor’s degree in Computer Science or related
- Experience working on cloud solutions (AWS a big advantage) - a plus
- Experience working in Agile Scrum methodologies - a plus
- Understanding of different machine learning algorithm families and their tradeoffs (linear, tree-based, kernel-based, neural networks, unsupervised algorithms, etc.)
- Excellent understanding of development methodologies, paradigms (OOP, FP)