Computer & Information Sciences
Information Systems Challenges
Real information-systems challenges on Ewance — model data, integrate systems, and align technology with how an organisation actually runs. Solve them to build a portfolio of verified, recruiter-checkable proof you can do the work — not just describe it.
Recommended challenges
- 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 - CodeSeniorNew
Heterogeneous Scheduling Policy for a Big.LITTLE Mobile SoC
Read the existing scheduler's energy model (provided). Design an improved policy using one or more of: per-task IPC-aware placement, exponential moving average load smoothing to…
- Multicore Architecture
- Scheduling
- Energy Modeling
Advanced Computer Architecture - 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
- Rust
Advanced Concurrency and Parallel Computing - DesignBeginnerNew
Choose a Sidecar Cache Store for a Hotel-Search API
Using the captured workload trace and the platform requirements brief in the provided materials, design a proposal that selects one of Redis, KeyDB, or DragonflyDB as the sideca…
- Nosql
- Redis
- Benchmarking
Open coursework 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
- CodeBeginnerNew
Build an I/O Benchmarking Harness for an Edge Storage Appliance
Receive the appliance specs (4x 7.68TB Gen4 NVMe, ZFS, Linux kernel 5.15), the 3 target workload profiles (4KB random read at QD32, 1MB sequential write at QD8, mixed 70/30 read…
- Io Benchmarking
- Fio
- System Calls
Computer Systems and Organization - CodeFoundationalNew
Parallelize an Image-Processing Pipeline with Data Parallelism
Your analysis task is to take the serial pipeline module and its configuration (provided as 'serial-pipeline-module'), run it against the representative image batch described in…
- Data Parallelism
- Python
- Multiprocessing
Open coursework - DesignBeginnerNew
Sketch a Custom Gaussian-Blur Accelerator for a Smart-Camera Chip
Using the provided C reference implementation of the 5x5 Gaussian blur, work out a hardware datapath that produces one finished output pixel every clock cycle by sliding a 5x5 w…
- Hardware Accelerators
- Datapath Design
- Performance Modeling
Open coursework - CodeSeniorNew
Build a Distributed Shared Memory Layer Over RDMA for Risk Engines
Build a Distributed Shared Memory library in C++ that exposes a small region interface — allocate a shared region, read from it, write to it, and free it — starting from the pro…
- Distributed Systems
- Rdma
- Consistency Models
Open coursework - 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.
- 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
Open coursework - AnalysisIntermediateNew
Diagnose a Memory-Hierarchy Bottleneck in a Trading-System Hot Path
Receive the normalizer source (around 4,000 lines of C++17), a replay harness that feeds 30 minutes of recorded market data, and host-machine specifications (Intel Xeon Gold 634…
- Memory Hierarchy
- Performance Profiling
- Perf
Open coursework - CodeBeginnerNew
Diagnose and Fix a Deadlock in a Multi-Threaded Payments Service
Receive the service source (Java 21 + Spring Boot, around 30,000 lines), 4 thread dumps from production deadlocks, and a load harness that reproduces the bug roughly 1 in 50 run…
- Deadlock Analysis
- Locks And Monitors
- Java
Concurrent and Parallel Programming - CodeBeginnerNew
Reverse-Engineer a Stripped Binary to Restore Linking Symbols
Receive the stripped shared object (Linux ELF, x86-64, ~280KB), a crash dump with 12 frames of indecipherable addresses, and 4 years of partial git history with some related (bu…
- Reverse Engineering
- Linking And Loading
- Machine Code
Open coursework 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
- CodeSeniorNew
Vectorize a Risk-Calculation Engine for a Mid-Cap Bank
Receive the existing pricer (C++17, scalar, around 600 lines), 2 weeks of representative input data (around 50M paths), the validation harness, and access to an Intel Ice Lake-S…
- Vectorization
- Avx 512
- Simd
Performance Engineering of Software Systems - DesignFoundationalNew
Redesign a Vet-Clinic SaaS Database to Third Normal Form
Using the current schema dump and the eight most-common reporting queries provided to you, design a replacement database structure for VetLedger. First, produce an entity-relati…
- Data Modeling
- Normalization
- SQL
Open coursework - CodeIntermediateNew
Tame Lock Contention on a Shared Property-Manager CRM Database
Working only from the four provided materials, produce a fix-and-prove package. Start with the recorded lock snapshots (lock_snapshots) and the environment case file (db_environ…
- Concurrency Control
- Lock Contention
- Postgresql
Open coursework - AnalysisIntermediateNew
Build a Performance Model for a Molecular-Dynamics Job
Build an analytical performance model covering: compute time per step (function of atom count + cutoff + interaction type), inter-rank communication cost (function of decomposit…
- Performance Modeling
- Gromacs
- Benchmark Design
Open coursework - 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
Open coursework - AnalysisSeniorNew
Memory Consistency Model Audit of a Lock-Free Queue
Read the SPSC queue source (around 200 lines of C++). For each atomic operation, classify the required ordering and verify the chosen memory_order is sufficient under both x86-T…
- Memory Consistency
- Concurrency
- Lock Free Programming
Advanced Computer Architecture - 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
Out-of-Order Execution Microbenchmark Suite
Design and implement 6 microbenchmarks: ROB capacity probe (varying chain length), load-store queue probe, branch mispredict cost probe, ILP saturation probe, store-to-load forw…
- Out Of Order Execution
- Performance Counters
- Benchmarking
Advanced Computer Architecture - DesignIntermediateNew
Cut a 42-Minute Trino Query to Under Five Minutes
Using the slow query, the EXPLAIN ANALYZE readout, the Iceberg table schemas, and the 30-day execution-metrics dataset provided, design an optimization proposal that cuts the cr…
- Trino
- SQL Optimization
- Iceberg
Open coursework - 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
Open coursework - AnalysisIntermediateNew
Cache Coherence Protocol Comparison on a Multicore Simulator
Stand up gem5's Ruby coherence framework with both MESI and MOESI protocols on a 16-core configuration. Run the 6-benchmark suite (provided): producer-consumer queue, false-shar…
- Cache Coherence
- Multicore Architecture
- Simulation
Advanced Computer Architecture - AnalysisSeniorNew
Diagnose and Fix Query-Planner Misestimates in a FinTech Warehouse
For each of the 6 queries, capture EXPLAIN (ANALYZE, BUFFERS) and compare estimated vs actual rows at each node. Identify the misestimate source per query (single-column stats s…
- Query Optimization
- Postgresql Planner
- Extended Statistics
Advanced Database 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.



















































































