👋 hello world

We are Prefect

We help data engineers and AI engineers deploy code that's easy to trust.

Mission

We build software that makes complex systems easy to trust

Team

We are Prefectionists: craftspeople, data engineers, and first-movers

Culture

Our distributed team is empowered to do the best work of their careers

Our products

We build lightweight developer experiences for interacting with complex systems like data and AI stacks.

Prefect OSS
Prefect Cloud
Marvin AI

Natural language interfaces for LLMs

Are you a Prefectionist?

Benefits

Medical, Vision, Dental

Your health is important - choose from a host of insurance options that suit your needs

Equity

Own what you build with regular refreshes and early exercise

Family

Generous parental leave and support for growing families

401(k) with 5% match

Roth or pre-tax 401 (k) employee contributions, multiple investment options, and no vesting period

Flexible Spending

Pre-tax benefit to pay for healthcare and dependent care expenses

Life & Disability Insurance

$100k life insurance policy with options for more, plus short-term and long-term disability covered

Perks

Remote-First Culture

A flexible working environment enables you to do the best work of your career

Flexible Time Off

Unlimited PTO and 11 company holidays

Remote Work Stipend

$800/month for whatever you need to work comfortably: equipment, bills, your gym membership, that amazing latte on the corner

Home Office

$1,000 to set up your home office

Internet & Utilities Stipend

Pre-tax stipend to help cover your internet and other utility bills

Professional Development

$2,000/year for professional development and education

Give Back

Donate to your favorite 501(c)(3), and Prefect will match up to $500

get together

Many opportunities to attend in-person gatherings

Values

Impact

Every Prefectionist is empowered to both independently and collaboratively advance Prefect’s strategic goals

Learning

We embrace new technologies to build innovative products that deliver value to our users

Empathy

We care deeply about supporting our colleagues, users, and our customers

Fail Successfully

We embrace an iterative process of constant improvement because failure, caught early, is learning

Are you a Prefectionist?

Stay in the flow

Chris White
Sarah Moses
Jennifer Grange
Open Positions
Engineering

No current openings

GTM

No current openings

Operations

No current openings

Product

No current openings

Prefect
With Prefect, the workflow schematic is dynamic defined by your code.
1from prefect import flow
2
3@flow(name="Hello Flow")
4def hello_world(name="world"):
5  print(f"Hello {name}!")
6  hello_world("Marvin")
$ python hello.py
15:11:23.594 | INFO | prefect.engine - Created flow run 'benevolent-donkey' for flow 'hello-world'
15:11:23.594 | INFO | Flow run 'benevolent-donkey' - Using task runner 'ConcurrentTaskRunner'
Hello Marvin!
15:11:24.447 | INFO | Flow run 'benevolent-donkey' - Finished in state Completed()
Airflow
With Airflow, you must define the DAG object to represent your workflow schematic no matter what.
1import datetime
2
3from airflow import DAG
4from airflow.operators.empty import EmptyOperator
5
6with DAG(
7   dag_id="my_dag_name",
8   start_date=datetime.datetime(2021, 1, 1),
9   schedule="@daily",
10):
11   EmptyOperator(task_id="task")