C Programming
If you like applying C Programming, every challenge here gives you a chance to practice it on a real industry brief.
- AnalysisIntermediateNew
Amortized-Analysis Investigation of a Production Cache
Read the C++ cache source (around 1,800 lines, custom open-addressing with periodic resize-and-rehash). Perform amortized analysis using all three methods (aggregate, accounting…
- Amortized Analysis
- Functions & Data Structures
- Algorithm Analysis
Advanced Algorithms - CodeSeniorNew
Build a Symbolic-Execution-Based Test Generator for a Library
Pick KLEE for the symbolic-execution engine. Build LLVM bitcode for the library's C99 build target. Define symbolic inputs for the public parsing API (date strings up to 32 char…
- Symbolic Execution
- Klee
- Test Generation
Program Analysis - CodeIntermediateNew
Port a Drone Flight Controller from Bare-Metal to FreeRTOS
Take the existing bare-metal firmware (STM32H7, around 14,000 lines C). Identify the tasks (control loop 1 kHz, IMU read 2 kHz, GPS 10 Hz, telemetry 50 Hz, command parsing event…
- Freertos
- Rate Monotonic Scheduling
- C Programming
Embedded Systems Engineering - CodeBeginnerNew
Build a Multi-Level Feedback Queue Scheduler in xv6
Fork the xv6-riscv repository and implement MLFQ in proc.c with 3 priority queues, per-queue time slices (10ms / 20ms / 40ms), priority demotion on slice exhaustion, and a 100ms…
- Operating Systems
- Scheduling
- C Programming
Operating Systems Practice your coursework on real scenarios.
Every challenge is shaped from real-world context — not generic exercises. The work mirrors what your degree prepares you for.
Why Ewance
- CodeIntermediateNew
Port a Legacy C Image Pipeline from x86 to ARM64
Clone the 12k-line C codebase (provided). Set up an ARM64 cross-compile toolchain (clang or gcc). Identify portability issues: endianness assumptions, pointer-size casts, inline…
- C Programming
- Manual Memory Management
- Pointers
Imperative and Low-Level Programming - CodeIntermediateNew
Dynamic Programming for an IoT Battery Allocator
Read the device spec (32 KB RAM, 200 mAh daily budget, 9 sensing modes with mAh cost and farmer-value scores) and formulate the daily allocation as a 0/1 knapsack DP (dynamic pr…
- Dynamic Programming
- Algorithm Analysis
- C Programming
Algorithm Design and Analysis - CodeIntermediateNew
Write a Linux Device Driver for a Custom Sensor Board
Read the SPI sensor datasheet (provided) and the existing user-space hack (around 600 lines of C). Write a Linux kernel module (target kernel 6.6 LTS) that registers a hwmon dev…
- C Programming
- Os Interfaces
- Kernel Development
Imperative and Low-Level Programming - CodeBeginnerNew
Implement a User-Space Shell with Process and Signal Handling
Implement a shell in C (no shell helpers, just POSIX system calls). Required features: read a line, parse it into commands + arguments, handle pipelines with arbitrary chain len…
- System Calls
- Process Management
- Signal Handling
Computer Systems and Organization - Browse challenges
Explore role
Product Manager
Ship product that solves real user problems. Combine user research, prototyping, and stakeholder alignment to turn ambiguous briefs into measurable wins — the role at the centre of modern software teams.
- CodeSeniorNew
Build a Bare-Metal Bootloader for a Wearable-Device Prototype
Write a bare-metal C bootloader for the Cortex-M4 target (no operating system, custom linker script, vector-table relocation). Implement: SHA-256 image validation (use a public-…
- C Programming
- Manual Memory Management
- Pointers
Imperative and Low-Level Programming - AnalysisBeginnerNew
Diagnose a Deadlock in a Multi-Threaded File Indexer
Clone the indexer repo (provided), set up reproduction with thread-sanitizer and helgrind, and produce a deterministic deadlock test case in under 5 minutes of runtime. Diagnose…
- Synchronization
- Deadlock Analysis
- C Programming
Operating Systems
How it works
From brief to credential, in six steps.
Step 01
Browse challenges aligned to your studies.
Step 02
Accept the one that fits your goals.
Step 03
Work through it with AI Copilot guidance.
Step 04
Submit for structured evaluation.
Step 05
Earn a verified credential.
Step 06
Add it to LinkedIn with one click.
Industry teams behind a decade of practitioner briefs
Hiring from this pool?
Sponsor a challenge and meet candidates through actual work.
Industry teams can shape briefs around the skills they hire for, then evaluate students on rubric-scored deliverables — not resumes.



















































































