Computer Sciences Challenges
Explore computer science challenges on Ewance to equip yourself with job-relevant skills for a variety of roles. Learn programming techniques and build technical skills with challenges on software development, algorithm design, system architecture, and more.
Most Popular
- CodeIntermediateNew
Design a Lock-Free Concurrent Queue for an Event Bus
Implement an MPSC (multi-producer single-consumer) ring-buffer queue in Go using atomic operations only — no mutexes. Prove correctness with the Go race detector across 8 produc…
- Concurrent Data Structures
- Lock Free Programming
- Systems Language Proficiency (Go, Rust, C++)
Data Structures - CodeIntermediateNew
Index a Genomics Dataset with a Suffix Array for Read Matching
Implement a suffix array over a 720 MB DNA sequence (4-character alphabet) using DC3 (Difference Cover modulo 3) or SA-IS construction in Rust. Build pattern-matching utilities …
- Suffix Arrays
- String Algorithms
- Systems Language Proficiency (Go, Rust, C++)
Data Structures - CodeIntermediateNew
Apply Hexagonal Architecture to a Payments Microservice
Design the settlement domain in pure Kotlin (no Spring imports, no framework annotations). Define ports for: payment-network adapter (one inbound per network — SEPA, Faster Paym…
- Hexagonal Architecture
- Ports And Adapters
- Kotlin Programming
Domain-Driven Design - 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 Develop in-demand professional skills.
Each challenge names the skills it strengthens. Over time, your profile fills with the competences a hiring manager would actually look for.
Why Ewance
- StrategyIntermediateNew
Decompose a CRM Monolith into Bounded Services
Analyze the monolith using NDepend or similar (provided). Identify the top 4-6 candidate service boundaries based on coupling + business-capability seams (likely: Quotation, Pol…
- Strangler Fig Pattern
- Service Decomposition
- Csharp Programming
Enterprise and Business Software Engineering - DesignIntermediateNew
Design an Event-Driven Reporting Pipeline for an Enterprise BI Team
Map the 9 source systems by extraction approach: CDC where possible (Debezium for SAP HANA + MES databases), event hooks where the source supports them (Salesforce streaming API…
- Change Data Capture
- Kafka Event Streaming
- Debezium
Enterprise and Business Software Engineering - CodeIntermediateNew
Build a Real-Time Fraud-Detection Stream for a Card Issuer
Design the stream topology: authorization events in, customer-feature state (30-day rolling) maintained in state store, scoring function applied per event, fraud-score emitted t…
- Apache Flink
- Kafka Streams
- Stream Processing
Event-Driven Architecture - CodeIntermediateNew
Parallelize a CFD Solver with MPI Across 256 Cores
Profile the serial solver to identify the hot loops (likely: pressure-Poisson solve, advection step, BC update). Decompose the domain via 2D block-structured partitioning. Imple…
- Mpi
- Cpp Programming
- Domain Decomposition
High-Performance and Scientific Computing - Browse challenges
Explore role
Strategy Analyst
Frame the business question, model the options, build the recommendation. From market sizing to competitive analysis, this role is where strategy consulting meets in-house decision-making.
- CodeIntermediateNew
Port a Monte Carlo Engine to CUDA for an Asset Manager
Profile the CPU MC engine to identify the kernel candidates: path generation (Brownian motion + correlated factors), payoff evaluation, aggregation. Port to CUDA: use cuRAND for…
- Cuda
- Monte Carlo
- Gpu Programming
High-Performance and Scientific Computing - DesignIntermediateNew
Design Parallel I/O for a Climate-Simulation Data Pipeline
Analyze the current I/O pattern: each MPI rank writes its own file via serial HDF5 (the classic anti-pattern). Design a single shared file using parallel HDF5 + MPI-IO with coll…
- Mpi Io
- Parallel Hdf5
- Lustre Filesystem
High-Performance and Scientific Computing - 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
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 Get recognized by recruiters and employers.
Credentials are blockchain-anchored via LearnCoin — tamper-evident, portable, link-shareable on LinkedIn and beyond.
Why Ewance
- AnalysisIntermediateNew
Build a Risk Register for a Cross-Border Healthcare Provider
Run 8 structured interviews (CISO, IT director, clinical-systems lead, DPO, 4 clinic managers) to surface the top risk candidates. Map each risk against NIST SP 800-30 (threat s…
- Risk Management
- NIST Sp 800 30
- Security Governance
Information Security Management and Governance - CodeIntermediateNew
Automated Planner for a Field-Service Maintenance Schedule
Model the scheduling problem as either PDDL (Planning Domain Definition Language) or a constraint-satisfaction problem using a solver like OR-Tools. Define: actions (visit_site,…
- Planning
- Constraint Satisfaction
- Python Or Javascript
Introduction to Artificial Intelligence (CS Elective) - CodeIntermediateNew
Edge-Inference Pipeline for a Smart-Factory Vibration Monitor
Architect a pipeline that runs on an ESP32-S3 + STM32 combo (provided): (1) sample 3-axis accelerometer at 3.2 kHz, (2) compute windowed FFT features on-device every 1s, (3) run…
- Edge Computing
- Embedded Systems
- Sensors And Actuators
Internet of Things and Cyber-Physical Systems - DesignIntermediateNew
Wireless Sensor-Network Design for a Vineyard Microclimate Study
Spec the network: 60 LoRaWAN sensor nodes + 2 gateways (TheThingsStack indoor + outdoor gateway choice), star topology with possible relays. Node hardware: ESP32 + LoRa + sensor…
- Sensor Networks
- Embedded Systems
- Lorawan
Internet of Things and Cyber-Physical Systems - DesignIntermediateNew
Real-Time Traffic-Sensor Fusion for a Smart Intersection
Design a fusion architecture: per-modality timestamping (NTP-disciplined within 50ms), per-modality confidence weighting (modality-specific noise model), Kalman-filter or partic…
- Sensor Fusion
- Cyber Physical Systems
- Edge Computing
Internet of Things and Cyber-Physical Systems - AnalysisIntermediateNew
OSS License Audit and Remediation Plan for a Series-B Dev-Tools Startup
Receive an SBOM (Software Bill of Materials) from the build pipeline (CycloneDX JSON) for 14 services and 3 SDKs. Run automated classification (Syft + ScanCode or FOSSA), then m…
- Oss Licensing
- Sbom
- Supply Chain Optimization
Open Source Contribution and Maintainership - CodeIntermediateNew
Build a User-Space File System with FUSE for a Storage Startup
Build a FUSE driver (your choice of Rust + fuser crate or Go + bazil/fuse) that proxies POSIX operations to the startup's existing S3-compatible REST API (mock provided). Suppor…
- File Systems
- Fuse
- Rust Programming
Operating Systems - AnalysisIntermediateNew
Evaluate OS-Level Containment for a Multi-Tenant Edge Platform
Set up reproducible environments for gVisor, Firecracker, and Wasmtime on identical hardware (4 vCPU, 8 GB RAM). Run the platform's 4 workload archetypes (anonymized): API proxy…
- Containment
- Virtualization
- Wasm
Advanced Operating Systems - CodeIntermediateNew
Parallelize a Monte Carlo Risk Engine for a Quant Hedge Fund
Profile the existing engine (C++17, single-threaded). Identify the parallelism axis (per-path independence is the obvious one — but watch for the global RNG bottleneck). Impleme…
- Parallel Algorithms
- Shared Memory
- Work Stealing
Parallel and Distributed Algorithms - CodeIntermediateNew
GPU-Parallel Graph Coloring for an EDA Tools Vendor
Implement Jones-Plassmann graph coloring in CUDA (or HIP if AMD hardware available). Input: a 12-million-node graph in CSR format (compressed sparse row). Output: a valid colori…
- Parallel Algorithms
- Gpu Programming
- Cuda
Parallel and Distributed Algorithms - CodeIntermediateNew
Implement Bulk Synchronous Parallel PageRank on a 1.5B-Edge Graph
Choose either Apache Spark + GraphX (Pregel API) or a vanilla MPI + C++ implementation. Run 25 iterations of PageRank on the 1.5B-edge graph (graph file format provided: CSR par…
- Parallel Algorithms
- Bsp
- Graph Algorithms
Parallel and Distributed Algorithms - StrategyIntermediateNew
Build a Business Case for a Hardware-Software Bundle at an IoT Vendor
Build a 5-year financial model (Excel or Google Sheets) covering 3 scenarios: hardware-only, SaaS-only, bundled-per-asset. Account for hardware-revenue recognition (upfront vs a…
- Business Case
- Three Statement Modeling
- Pricing Strategy & Elasticity
Product Management for Software Engineers
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.



















































































