Simple by design

Pick a challenge, open your editor, git push to test. That's it.

1. Choose your challenge

Redis, Git, SQLite, and 8 more real systems

2. Code in your own setup

Your IDE, your extensions, your terminal. No toy editors

3. Push and get feedback

git push to run tests. Results and hints in seconds

1. Choose your challenge

Redis, Git, SQLite, and 8 more real systems

2. Code in your own setup

Your IDE, your extensions, your terminal. No toy editors

3. Push and get feedback

git push to run tests. Results and hints in seconds

Rebuild the software you use every day

11 challenges that take you inside the architecture of real systems.
No toy projects. No algorithm drills.

Consistently praised by principal engineers at remarkable companies.

We strive to provide a proper workout. You won't become a great swimmer by watching the Olympics on YouTube.

Stripe
Microsoft
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo
Company logo

Developers love CodeCrafters

Here’s what they say after trying our challenges:

Djordje Lukic

Djordje Lukic

Docker contributor

Docker

These guys ruined my weekend

Charles Guo

Charles Guo

Scala Team at Stripe

Stripe

The Redis challenge was extremely fun. I ended up having to read Redis protocol specification doc pretty carefully in its entirety! The result felt like lightly-guided independent study, if that makes sense. (Which, again, was lots of fun)

Cindy Wu

Cindy Wu

Engineering at Vercel

Vercel

I've started the SQLite challenge, enjoying it a lot so far. Just the right level of guidance, helpful yet gives you a lot of freedom to explore and learn for yourself.

Raghav Dua

Raghav Dua

SRE at Coinbase

Coinbase

I spent a full day on your course and ended up building the whole thing myself. As a SRE (and mostly a user of SQLite), digging into the internals blew me away.

Djordje Lukic

Djordje Lukic

Docker contributor

Docker

These guys ruined my weekend

Ananthalakshmi Sankar

Ananthalakshmi Sankar

Engineer at Apple

Apple

There are few sites I like as much that have a step by step guide. The real-time feedback is so good, it's creepy!

Raghav Dua

Raghav Dua

SRE at Coinbase

Coinbase

I spent a full day on your course and ended up building the whole thing myself. As a SRE (and mostly a user of SQLite), digging into the internals blew me away.

Rahul Tarak

Rahul Tarak

Pioneer.app & ODX1 Fellow

The Redis challenge was a great way to procrastinate sleeping for a week! A good change of pace from my regular work, and allowed me to explore some cool tech. I'll be back for more.

Charles Guo

Charles Guo

Scala Team at Stripe

Stripe

The Redis challenge was extremely fun. I ended up having to read Redis protocol specification doc pretty carefully in its entirety! The result felt like lightly-guided independent study, if that makes sense. (Which, again, was lots of fun)

Akshata Mohan

Akshata Mohan

Sr. Data Scientist at Cloudflare

Cloudflare

I'm learning about how Redis works under the hood, system calls, socket programming in Python; something I've never done before

Cindy Wu

Cindy Wu

Engineering at Vercel

Vercel

I've started the SQLite challenge, enjoying it a lot so far. Just the right level of guidance, helpful yet gives you a lot of freedom to explore and learn for yourself.

Pranjal Paliwal

Pranjal Paliwal

Winner of HackAtom

My favorite way to master a language.

Vladislav Ten

Vladislav Ten

SWE at Microsoft

Microsoft

In a perfect world, job interviews ask for assignments like CodeCrafters instead of Leetcode. The best way to refresh your programming language skills and learn something new about Redis, Git, SQLite internals.

Kang Ming Tay

Kang Ming Tay

SWE at Supabase

Supabase

The challenge helped me dive into its internals, through *actual* practice. Super fun.

Jonathan Lorimer

Jonathan Lorimer

Senior SWE at Mercury

Mercury

I was really impressed that they support Haskell, and will probably use this to learn Rust! The git-based workflow is 👨‍🍳

Beyang Liu

Beyang Liu

CTO at Sourcegraph

Sourcegraph

Found out from a colleague. It has you build your own version of things like Git and SQLite from scratch. A cool way to build a stronger mental model of how those tools work.

The world's most

advanced projects

Implement a Redis from scratch. Parse Git objects. Write your own SQLite. Each challenge drops you into exploring storage engines, network protocols, binary formats.

Once you’ve written and read code around these topics, everything else tends to feel easy.

CodeCrafters has been a fantastic resource in helping me maintain my skills in a pragmatic fashion, learn about new areas, and even new languages.

Howard Lee

Howard Lee

Principal Software Engineer, Okta

Okta

The world's most

experienced users

See how contributors to projects like Redis and Rails refactor, how engineers who build large-scale systems debug, and how CTOs of developer platforms make architectural decisions.

Improve your taste by observing other great engineers.

This idea is absolutely stellar. Having a structured project like this feels like a blast.

Joey Pereira

Joey Pereira

Software Engineer at OpenAI

OpenAI

The world's most

advanced tooling

Don’t be limited by web-based editors. Code in your usual IDE, with your preferred customisations. Push code with Git and get instant feedback. Share your work on GitHub.

CodeCrafters is designed for pros.

There are few sites I like as much that have a step by step guide. The real-time feedback is so good, it's creepy!

Ananthalakshmi Sankar

Ananthalakshmi Sankar

Engineer at Apple

Apple

The world's most

advanced projects

Implement a Redis from scratch. Parse Git objects. Write your own SQLite. Each challenge drops you into exploring storage engines, network protocols, binary formats.

Once you’ve written and read code around these topics, everything else tends to feel easy.

CodeCrafters has been a fantastic resource in helping me maintain my skills in a pragmatic fashion, learn about new areas, and even new languages.

Howard Lee

Howard Lee

Principal Software Engineer, Okta

Okta

This idea is absolutely stellar. Having a structured project like this feels like a blast.

Joey Pereira

Joey Pereira

Software Engineer at OpenAI

OpenAI

There are few sites I like as much that have a step by step guide. The real-time feedback is so good, it's creepy!

Ananthalakshmi Sankar

Ananthalakshmi Sankar

Engineer at Apple

Apple