Three-Project Series

Build a Fintech Platform in Rust you own this product

prerequisites
basic Rust • basic HTTP • basic algorithm and data structures • basic finance knowledge
skills learned
Rust loops • Rust types • pattern matching • financial algorithms • iterators • HTTP API with warp • async Rust
Claus Matzinger
3 weeks · 6-8 hours per week average · BEGINNER

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Future Finance Labs, a fintech scaleup company, wants to expand its customer base by offering a lightning-fast exchange platform for professional traders. As its star developer, you’ll use the Rust programming language to create a prototype of the exchange that will accommodate high-frequency trading and serve as the foundation for additional future financial products.

You’ll build an interactive command line program that will constitute the core accounting structure for setting up accounts and manipulating data. You’ll create a matching engine that enables traders to find the best trading partners—and showcases the blazing-fast core of the exchange platform. You’ll extend your Rust HTTP API by setting up a warp web service that will interact with an additional trading platform, building a shared marketplace that will be a blueprint for additional Rust web services, small and large. When you’ve completed this series of liveProjects, you’ll have hands-on experience using the Rust type system to write fast, robust software, using data structures and iterators from the Rust standard library, working with mutability, applying borrowing and ownership, and asynchronous programming basics.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

A thorough guide through all major aspects of Rust.

Maxim Volgin, Quantitative Marketing Manager, KLM

Manning author Claus Matzinger shares what he likes about the Manning liveProject platform.

here's what's included

Project 1 Fundamentals and Accounting

Future Finance Labs has tasked you, its star developer, to create a prototype for an exchange platform that the fintech scaleup wants to offer to professional traders. You’ll build an interactive command line program that will serve as the core accounting structure for this lightning-fast exchange platform. Using Rust, the company’s chosen programming language, you’ll implement the required data structures for storing accounts as well as the functions for transactions between accounts. To validate the account structure and functions, you’ll design and implement unit tests. When you’re done, you’ll be a master of Rust fundamentals, including its various syntax aspects and operations, and you’ll be ready to advance to more complex Rust data structures and code.

Project 2 Core Algorithms and Data Structures

Future Finance Labs is creating an exchange platform for professional traders in hopes of expanding its customer base. As the fintech company’s star developer, your task is to build a matching engine that enables traders to find the best trading partners. Using Rust, the company’s chosen programming language, you’ll build the trading platform, the backbone of the engine, tying the accounting and trading components together. You’ll create the commands that enable interactions with the trading platform, parse input, and display the transaction log to the user. When you’re done, you’ll have built a fully functional matching engine, and you’ll have practical experience working with complex Rust data structures and iterators as well as applying mutable borrowing and ownership.

Project 3 A Shared Marketplace API

You’re the star developer for Future Finance Labs, a fintech scaleup whose partner consultants are so happy with the prototype of an exchange platform you’ve built that some of them have brought a trading firm on board. Your task is to extend your prototype to include a platform for trading futures that the firm would like to offer its clients. You’ll lay the web project foundation by moving the Rust code for the existing matching engine to a shared library, adding a skeleton project for the web server, and creating a Cargo workspace. You’ll set up a warp web service to interact with the trading platform, add JSON serialization to your types, and use asynchronous Rust programming to create handler functions. Then you’ll upgrade the existing command line interface to connect with your new service instead of the local variant via REST. When you’re finished, you’ll have built a complete Rust HTTP API that will be a blueprint for additional Rust web services, small and large.

book resources

When you start each of the projects in this series, you'll get full access to the following book for 90 days.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Build a Fintech Platform in Rust project for free

The content is systematic and placed in order of increasing difficulty which is crucial for learning something new.

Shahnawaz Ali, Researcher, Kings College London

This project allows us to explore the basics of market bids and asks using interesting Rust constructs and techniques while exploring a challenging code base.

Eder Andrés Ávila Niño, Independent junior programmer

project author

Claus Matzinger

Claus Matzinger is a software engineer with more than a decade of experience in a variety of technologies. In his current role at DEX Labs, Claus is a full-time Rustacean in the crypto world. Previously at Microsoft, Claus helped customers solve their biggest challenges by implementing solutions ranging from machine learning pipelines to cloud native architecture for large-scale data processing. His previous books and blog can be found at X5FF.

Prerequisites

These liveProjects are for enthusiastic Rust beginners. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • Basic Rust syntax knowledge
  • A favorite code editor
  • Rust toolchain (via [https://rustup.rs/]())
TECHNIQUES
  • Basic data structures
  • Basic iterators
  • Basic decision-making
  • Basic types
  • Basic HTTP client & server programming
  • Basic finance

you will learn

In this liveProject series, you’ll learn to use Rust to build a fintech exchange platform by applying the following skills:

  • Use warp, reqwest, and Tokio to build an async HTTP client and server
  • Select data structures to process trading orders efficiently
  • Work with user input
  • Pattern matching and decision-making
  • Unit testing
  • Error handling

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.