Senior Software Engineer - Data

Senior Software Engineer - Data

This job is no longer open
Our Data team plays a critical role in this mission by writing code that processes customer-provided data to power both the ordering application and the recommendations within, allowing us to optimize our grocery partner's ordering and business processes.Our customers give us large amounts of data, and ensuring that our system can accurately, reliably and scalably process that data is key to our success. If you're interested in building software to support our mission, we hope you'll join us!

What you will do:

  • Write production code to implement fast, reliable, scalable data pipelines in Python (and Pandas and Spark) and SQL to process billions of historical data points collected from tens of thousands of retail stores across the US
  • Build out, scale up, and deploy our compute platform (running on Azure cloud infrastructure using Kubernetes) and data platform (powered by a combination of traditional databases, data warehouses, and data lakes) that power our recommendation engine and ordering system
  • Implement reusable libraries and abstractions for ensuring that we can scale our services to more, bigger customers and different departments and domains
  • Work closely with Afresh internal stakeholders, solution architects, and our customers to understand how to transform customer data
  • Collaborate with an interdisciplinary team of experts in machine learning, data science, design, software engineering, and business operations to triage data or ETL issues that are causing anomalies in our system
  • Independently analyze and find issues in the data—including those unknown to the customer themselves—and work with internal stakeholders to either clearly communicate high-priority issues to the customer or find novel workarounds to extract the signal we need from customer data
  • Build out tests and health checks to verify the quality of our code and data, ensure any assumptions about the data continue to hold, and avoid future regressions in the code or data
  • Monitor, analyze, and understand the data flowing through our system by adding the necessary visualizations and dashboards

What skills and experience do you need?

  • 4+ years of professional software engineering experience
  • 2+ years of experience writing code that processes and transforms large-scale customer data
  • Strong understanding and experience with various data stores (databases, data warehouses, key/value stores, etc.). Experience with Pandas, Apache Spark, or other Big Data frameworks and cloud infrastructure preferred
  • Strong problem-solving ability and ability to work through ambiguity and incomplete specifications
  • Dedication to code quality, testing, design processes, automation, and operational excellence
  • Excellent written and verbal communication, collaboration, and social skills
  • The above represent attributes our ideal candidate possesses. We encourage all highly-qualified candidates to apply, even if they do not fulfill all the listed criteria.
This job is no longer open
Logos/outerjoin logo full

Outer Join is the premier job board for remote jobs in data science, analytics, and engineering.