Skip to content

Paystone Machine Learning

Overview

Welcome to the homepage of machine learning at Paystone! This is your entry point into all of our established thoughts on machine learning. It covers:

  • The Concepts that lay the foundation for the decisions we make.
  • The Principles that dictate how we work.
  • The Machine Learning Services we’ve built to serve the Growth Platform.
  • The Architecture we’ve built to develop our Services.
  • The Processes we use to develop our Services.
  • The Other Services we’ve developed alongside our Machine Learning Services.
  • The Tooling that automatically enforces our standards, and makes our developers’ lives easier.

Intended Audience

This documentation is intended for multiple audiences within Paystone:

  • Existing Machine Learning Engineers, to solidify their understanding of our philosophies, principles, and processes.
  • New Machine Learning Engineers, to onboard as quickly as possible and get up to speed with the rest of the team.
  • Software Engineers outside of machine learning, to understand the role of machine learning within the organization, and how to interact with it.
  • Product leaders, to better understand the capabilities of machine learning, the development process for machine learning services, and possibly even to be better equipped to make suggestions on future machine learning projects.
  • Paystone executives and engineering leaders, to ensure that our machine learning principles align with our organizational principles, and that the direction of our machine learning work is in harmony with the direction of the company and product.

Principles of this Documentation

A core principle of the documentation itself is that we focus on the concepts, not the implementation.

Implementation can change frequently, and often is not the thing that one looks to documentation to better understand; those that need to know about the implementation details are those that can discover them from the code itself. Freeing this documentation from the burden of staying up to date with the fine details will increase our ability to ensure that it stays completely current at all times.

In line with this, we deliberately steer away from things like API references and docstrings in these pages. Even sections that focus on particular areas of our codebase, such as the one on Tooling, do so at the conceptual level.

In short, we answer questions such as:

  • “what purpose does this code serve?”
  • “why is it architected the way that it is?”

Rather than questions such as:

  • “what does this particular function do?”
  • “what is the signature of this function?”

This is a living document, and we will enforce that notion through our processes. Implementations may be changed without changes to the documentation, because that is not what this documentation is for. However, any change in process, any addition to our process, any new tools or services or indeed principles that we create must be reflected here.

Documentation has become a first-class citizen of machine learning software development at Paystone.