Principal Software Engineer - Machine Learning

  • Location

    San Francisco

  • Sector:

    Data Science, Blockchain & Fintech

  • Salary:

    Circa $200,000

  • Contact:

    Jason Rumney

  • Contact email:


  • Job ref:


  • Startdate:


  • Consultant:

    Jason Rumney

Our client are a leading technology company who come up with life-changing ideas. They are working with clients who provide technology to some of the world’s most trusted brands, spanning scientific and academic research, patent analytics, pharmaceutical and biotech intelligence and IP management.

As our Machine Learning Engineer, you should be comfortable working in an Agile environment, have a “can-do” attitude, work well in a cross-functional environment with minimal supervision, and mentor others. Ideally, you should be a self-starter, quick learner and a great team player.

You will be responsible for developing and improving existing machine learning models, finding new features, collect data and perform statistical analysis. You will have the opportunity to enjoy solving complex problems; healthy design discussion and most of all have fun while working hard!

Job Responsibilities

  • Work on supervised machine learning models and follow machine learning principles like training, cross-validation etc.
  • Debugging and profiling to isolate mission-critical issues
  • Conduct application design and code reviews
  • Own and take pride in code quality and delivery
  • Work with other engineers and senior engineers in the team to design and implement product stories
  • Work with other teams to understand resolve issues, align dependencies
  • Work in a fast-paced, highly visible environment


  • BS, MS or PhD in computer science or related field.
  • 5+ years of software development experience
  • Extensive knowledge and experience in Core Java
  • Knowledge or working experience with Spark Streaming and machine learning libraries.
  • Good understanding of basic machine learning techniques.
  • Knowledge of mathematics fundamentals like linear algebra (matrices, vector spaces) and probability.
  • Strong computer science fundamentals.
  • Exposure to applications handling large volume of data while delivering high performance
  • Knowledge of distributed NoSQL databases.
  • Ability to work effectively as a team member, across project teams, and independently
  • Possess exceptional written/verbal communication and interpersonal skills

Additional Requirements

  • Working experience in Random Forest algorithm.
  • Experience with data visualization tools for machine learning.
  • Experience with Hadoop/HDFS and HBase.
  • Crawling, searching, indexing experience.
  • Experience developing microservices.