Software Engineer

Cohere

Full TimeNot specifiedPosted 1 day ago

Let the right jobs find you

Get personalised suggestions from verified company career pages, matched to your role, location, level, and skills.

Overview

Position Type

Full Time

Experience

Not specified

Job Description

Who are we?

Cohere is the leading security-first enterprise AI company. We build cutting-edge foundation AI models and end-to-end products that are designed to solve real-world business problems.

We’re training and deploying frontier models for enterprises who are building AI systems. We believe that our work is instrumental to the widespread adoption of AI and we are looking for folks that want to be part of that.

We obsess over what we build. Each one of us is responsible for contributing to increasing the capabilities of our models and the value they drive for our customers. Cohere is a team of researchers, engineers, designers, and more, who are all passionate about their craft.

We are a global technology company headquartered in Toronto with key offices in London, New York City, San Francisco, Montreal, Paris, Berlin and Seoul. Join us!

Why this role?

The Data Infrastructure team at Cohere is responsible for the storage and data movement layer underlying every model training run. We're building the unified storage layer that feeds our training workloads. It needs to serve petabytes of training data and model checkpoints fast enough to keep thousands of GPUs busy across several training clusters. In this role, you’d have an opportunity to build this system from the ground up. You’d be a key contributor, working on a problem few teams have had to solve at this scale.

In this role, you will:

  • Design, build, and operate the distributed storage system that feeds model training and evaluation.
  • Run this system multiple on Kubernetes clusters at petabyte scale.
  • Work with researchers and training-infra teams on how jobs actually read and write data, and turn that into throughput, latency, and durability requirements
  • Work through the networking, I/O, and consistency problems of moving large datasets and checkpoints across regions and backends, with GPU idle time and time-to-insight as the measures of success

You may be a good fit if you have:

  • Strong storage fundamentals, including replication, consistency, caching, and data lifecycle management.
  • Strong coding ability. We work in Python and Go; experience in either is enough, but you should be willing to pick up the other
  • Experience running stateful systems on Kubernetes, including Persistent Volumes, CSI drivers, and StatefulSets.
  • Hands-on experience with cloud object storage such as S3 as well as POSIX-style filesystems.

It’s a bonus if you have:

  • Experience with parallel or HPC filesystems such as Weka, VAST, or Lustre.
  • Familiarity with the data-loading and checkpointing patterns used in large-scale model training.
  • An interest in how large models are trained and evaluated, including the trajectory and eval data those runs generate, and a desire to understand the workloads the platform is serving.

Required Skills

Storage FundamentalsReplicationConsistencyCachingLifecycle ManagementPythonGoKubernetesPersistent VolumesDriversStateful SetsObject StoragePosix Style FilesystemsParallel Or Hpc FilesystemsData Loading And Checkpointing Patterns

About the Company

Cohere

San Francisco, United States

Share This Job