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
- CodeSeniorNew
Port a Numerical Kernel from CPU to GPU for a CFD Simulator
Receive the existing CFD solver (C++17 + OpenMP, around 8,000 lines, the hot kernel is a 7-point stencil sweep over a 512^3 grid), the validation harness, and access to an A100 …
- Gpu Programming
- Cuda
- Parallelism
Performance Engineering of Software Systems - CodeBeginnerNew
Build a Bounded Concurrent Queue for a Microservice Worker Pool
Implement a bounded concurrent queue in Go (no third-party queue libraries; standard library + sync primitives only) that supports: Put(item) blocks when full, TryPut(item, time…
- Concurrent Data Structures
- Mutex And Condvar
- Systems Language Proficiency (Go, Rust, C++)
Concurrent and Parallel Programming - CodeFoundationalNew
Parallelize an Image-Processing Pipeline with Data Parallelism
Receive the current pipeline (Python 3.12, ~600 lines, uses Pillow + ffmpeg), a representative batch (1,000 images averaging 3MB each), and host specs (16 cores, 32GB RAM). Rewr…
- Data Parallelism
- Python Or Javascript
- Multiprocessing
Concurrent and Parallel Programming - CodeBeginnerNew
Implement Async Message-Passing for an IoT Gateway
Receive the current gateway source (Python 3.11, single-threaded paho-mqtt client + a serial HTTP forwarder, ~1,100 lines), a sensor-simulator that fans out 500 mock sensors at …
- Async Programming
- Message Passing
- Asyncio
Concurrent and Parallel Programming 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
- CodeSeniorNew
Build a Lock-Free MPMC Queue for a Trading-Backend Hot Path
Implement Vyukov's bounded MPMC queue in C++20 using atomic operations with explicit memory orderings (relaxed where safe, acquire/release on the enqueue/dequeue handshake). Use…
- Lock Free Algorithms
- Memory Models
- Systems Language Proficiency (Go, Rust, C++)
Advanced Concurrency and Parallel Computing - CodeIntermediateNew
Apply Software Transactional Memory to a Real-Time Auction Book
Implement two variants of the same auction-book API (best-bid/best-ask lookup, place-order, cancel-order, match-orders): (1) baseline with java.util.concurrent locks + a SkipLis…
- Transactional Memory
- Concurrent Data Structures
- Haskell
Advanced Concurrency and Parallel Computing - CodeIntermediateNew
Tune a Multicore Pipeline with NUMA-Aware Sharding
Receive the current worker (Rust, around 8,000 lines, uses rayon for its parallelism), the host (2-socket AMD EPYC 9354, 64 cores total, 384GB DDR5), and a benchmark query workl…
- Parallel Performance
- Numa
- Systems Language Proficiency (Go, Rust, C++)
Advanced Concurrency and Parallel Computing - CodeSeniorNew
Port a CPU Monte-Carlo Simulator to GPU for an Energy Trader
Receive the existing simulator (C++17 + OpenMP, around 5,000 lines), the test book (around 8,000 spread options), and access to an H100 80GB. Port to CUDA: random-number generat…
- Gpu Programming
- Cuda
- Monte Carlo
Advanced Concurrency and Parallel Computing - Browse challenges
Explore role
Marketing Analyst
Plan and measure campaigns that grow the business. Funnel analytics, attribution, segmentation, and the rigorous measurement that lets marketing defend its budget at the leadership table.
- CodeSeniorNew
Scale an HPC MPI Workload Across a Multi-Node Cluster
Receive the MPI weather model (Fortran 2018 + C, ~22,000 lines), 4 weeks of strong-scaling logs (1 to 256 ranks), and access to AWS ParallelCluster with EFA-enabled c7gn instanc…
- Hpc Programming
- Mpi
- Parallel Performance
Advanced Concurrency and Parallel Computing - CodeIntermediateNew
Build a Custom Kubernetes Operator for a Multi-Tenant SaaS
Receive the current Helm + bash setup, a description of the per-tenant resources to manage, and the cluster details (EKS 1.29, Strimzi for Kafka). Design a TenantPipeline CRD wi…
- Kubernetes Operators
- Crds
- Kubebuilder
Container Orchestration with Kubernetes - CodeIntermediateNew
Build a Hybrid Recommendation System for an Indie Streaming Catalog
Use the provided 6-month anonymized event log (around 320M play events, 1.4M unique users in the held-out cohort), audio embeddings (256-d), and track metadata. Implement (1) an…
- Recommendation Systems
- Collaborative Filtering
- Content Based Recommendation
Data Mining and Information Retrieval - AnalysisBeginnerNew
Cluster a Mid-Market SaaS Customer Base for Account-Tier Re-segmentation
Pull 12 months of usage signals from the warehouse: feature adoption depth, session frequency, integration counts, ticket volume, NPS (Net Promoter Score), seat utilization. Sta…
- Clustering
- K Means
- Hdbscan
Data Mining and Information Retrieval Build a verifiable portfolio.
Submissions become evidence. Reviewers with shipping experience score against a rubric; the result becomes a credential anyone can verify.
Why Ewance
- 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 - CodeSeniorNew
Implement an LSM-Tree-Based Storage Engine Prototype
Implement the engine in Rust. Components: WAL, memtable (skip list), SSTables on disk with bloom filters and sparse index, two compaction strategies (size-tiered, leveled). Cove…
- Lsm Tree
- Storage Engine
- Systems Language Proficiency (Go, Rust, C++)
Advanced Database Systems - CodeSeniorNew
Implement Raft Consensus for a Self-Hosted Feature-Flag Service
Implement the core Raft algorithm (leader election, log replication, snapshotting) from the original Ongaro & Ousterhout paper. Use an embedded key-value store (BoltDB or sled) …
- Raft Consensus
- Go Programming
- Grpc
Distributed Systems - AnalysisSeniorNew
Diagnose Clock Skew in a HFT Order Matching System
Receive anonymized PTP grandmaster + slave logs (nanosecond resolution, 30 days, 3 cabinets) plus a synthetic order-flow generator. Identify the drift pattern (likely candidate:…
- Logical Clocks
- Ptp Time Sync
- Cpp Programming
Distributed Systems - 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 - AnalysisSeniorNew
Diagnose a Hard-Real-Time Failure in an Automotive ECU
Receive anonymized AUTOSAR runnable + task traces (CSV + Vector CANalyzer .blf), 8 hours covering 3 failure events. Identify timing budget per task and runnable. Reproduce on th…
- Autosar
- Real Time Debugging
- Can Bus Analysis
Embedded Systems Engineering - DesignBeginnerNew
Build a PlatformIO CI Pipeline for a Multi-Board Firmware Team
Use GitHub Actions + PlatformIO. Build matrix across the 6 boards. Run native unit tests + QEMU-based emulation tests for boards that QEMU supports. Set up a self-hosted runner …
- Platformio
- Github Actions
- Embedded Ci
Embedded Systems Engineering - 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
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.



















































































