Skip to contentSkip to content
Verified credentials. On-chain. Forever.Learn more
Ewance
Sign in
Cover image for Apply Property-Based Testing to a Currency-Conversion Module
Code

Apply Property-Based Testing to a Currency-Conversion Module

FreeVerified credential2 weeksIntermediate

Overview

What this challenge is about.

Apply Property-Based Testing to a Currency-Conversion Module. Intermediate challenge in code. Writing production code that solves real engineering problems, ...

CredentialBlockchain-anchored
ShareableLinkedIn-ready
LanguageEnglish
PaceSelf-paced

The Brief

What you'll do, and what you'll demonstrate.

Rewrite a buggy currency-conversion module in F# and validate with property-based tests covering 12 named invariants the example-test suite missed.

This is not a coding exercise. It is the work a software engineer does between a Jira ticket and a merged PR. That distinction matters to every hiring manager who has seen candidates solve LeetCode problems and none who have shipped production code under real constraints.

When you finish, you will have something most graduates do not: a real-world deliverable, verified by Ewance, that you can show to a hiring manager and say "I did this. Here is the proof."

Earning criteria — what you'll demonstrate

  • Use units of measure to model currency types safely
  • Identify and codify mathematical + business invariants for testing
  • Apply property-based testing to a real production module
  • Document the marginal value of property tests over example tests

Program Fit

Where this fits in your program.

Sharpens the same skills your degree expects you to demonstrate.

Functional Programming

Bachelor · Programming Languages

Strong alignment

This challenge maps to Functional Programming at the Bachelor level. It sharpens the same practical skills your coursework expects — but in a real industry context with actual constraints and deliverables.

One more thing

You can put a credential on your CV by Friday.

Apply Property-Based Testing to a Currency-Conversion Module