Senior Software Engineer (Python/Java/Machine Learning)

Technology/Engineering New York, New York

At adMarketplace, we create best of breed advertising technology using cutting-edge microservice architectures with millisecond response time and crunch through terabytes of data every day. The ideal candidate is motivated designing for massive scale, developing for low latency and has strong interest in engineering/productionalizing machine learning algorithms used in mission-critical systems to make automated algorithmic real-time decisions. Our team uses cutting edge software, including Akka, Java 8, Scala, Python, Kafka, Spark, NoSQL and more.

Responsibilities:

  • Work closely with the Data Science team to take machine learning based solutions from proof-of-concept/prototype to production (following the right engineering techniques) primarily focusing on our real-time advertiser and publisher pricing systems developed in Python
  • Own and maintain the engineering part of productionalized machine learning related applications
  • Hands-on design and development of the following mission critical systems:
    • Robust, high-volume real-time algorithmic Ad Pricing
    • 24/7 low latency large-scale distributed Ad Serving and Click Tracking platforms
    • Real time Conversion Tracking platform
  • Take and drive engineering projects from start to completion

 Requirements:

  • BS in Engineering, Computer Science or related discipline
  • Must have 5+ years strong industry related development experience using Python
  • 3+ years experience using Java with Spring or other dependency injection framework and/or Akka
  • Understanding of basic machine learning algorithms such as Logistic Regression and/or a strong interest in the topic
  • Ability to design complete systems by collaborating with multiple teams and understanding testing, hardware and deployment methodologies
  • Experience delivering and maintaining low latency, scalable systems
  • Strong knowledge of algorithmic complexity/simplicity tradeoffs, effective use of data structures and SQL
  • Good understanding of low latency messaging and asynchronous design patterns
  • Experience working in a Linux environment
  • Ability to initiate and drive projects to completion with minimal guidance
  • Excellent documentation, communication, and troubleshooting skills
  • Is a plus:
    • Digital advertising industry experience
    • Experience with AWS, RabbitMQ, MySQL, Python, Vertica, and Aerospike
    • Experience with scikit-learn or other machine learning libraries
    • Hands on experience productionalizing machine learning products developed in Python
    • Experience working in an agile software development team using Jira
    • Experience with Continuous Integration and Delivery