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
Min-Cost Max-Flow for Cloud Workload Placement
Receive 30 days of anonymized placement requests (workload CPU/memory shape, affinity rules), zone capacity per day, and cross-zone bandwidth costs. Model the placement as a min…
- Network Flows
- Algorithm Analysis
- Graph Algorithms
Advanced Algorithms - ResearchSeniorNew
Approximation Algorithm for an SRE On-Call Roster
Formulate the roster as a constrained multi-week assignment problem. Show it's NP-hard via reduction. Design a deterministic constant-factor approximation (likely candidate: an …
- Approximation Algorithms
- Linear Programming
- Np Completeness
Advanced Algorithms - DesignSeniorNew
Design an End-to-End Encrypted Messaging Protocol
Read the Signal protocol specifications (X3DH, Double Ratchet) and the team's current architecture (server-stored unencrypted messages). Design an E2EE protocol covering: identi…
- Applied Cryptography
- Protocol Design
- Systems Language Proficiency (Go, Rust, C++)
Applied Cryptography - CodeSeniorNew
Implement Threshold Signatures for a Multi-Sig Custody Service
Read the FROST IETF draft (draft-irtf-cfrg-frost) and the underlying Schnorr signature scheme on the secp256k1 curve. Implement the FROST distributed key generation (DKG) and 3-…
- Applied Cryptography
- Threshold Signatures
- Systems Language Proficiency (Go, Rust, C++)
Applied Cryptography 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
Implement a Proof-of-Stake Consensus Mechanism in Rust
Read the Casper FFG paper (Buterin + Griffith, 2017) and design a simplified PoS implementation in Rust: 21 validators, 32-slot epochs, two-phase finality (justify, then finaliz…
- Consensus Algorithms
- Blockchain Protocols
- Systems Language Proficiency (Go, Rust, C++)
Blockchain and Decentralized Systems Engineering - DesignSeniorNew
Multi-Region Active-Active Architecture for a Gaming Backend
Read the current architecture (single-region: ECS + RDS Aurora + Redis + S3) and traffic mix (around 60 percent APAC, 25 percent NA, 15 percent EU). Design a 3-region active-act…
- Multi Region Architecture
- AWS Or Azure
- Terraform
Cloud Computing - CodeSeniorNew
Design a Polyhedral Loop-Tiling Strategy for a Tensor DSL
Study the DSL's IR (provided, MLIR-based with linalg-style ops). Choose a tiling strategy (rectangular tiling with cost-modeled tile sizes is the safe baseline; full polyhedral …
- Polyhedral Analysis
- Loop Tiling
- Mlir
Advanced Compilers and Program Optimization - 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 - 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
Physically-Based Path Tracer for a Product Visualization Studio
Build a path tracer in C++ with: ray-triangle and ray-sphere intersection on a BVH (bounding volume hierarchy), Lambertian diffuse and Cook-Torrance GGX specular BRDFs, multiple…
- Physically Based Rendering
- Path Tracing
- Shading And Lighting
Advanced Computer Graphics - CodeSeniorNew
Real-Time Global Illumination for an Indie Game
Survey 3 candidate GI techniques: voxel cone tracing (VXGI-style), screen-space GI (SSGI), and irradiance probe volumes. Pick one and justify based on quality/perf trade-offs fo…
- Physically Based Rendering
- Global Illumination
- Gpu Pipeline
Advanced Computer Graphics - CodeSeniorNew
Build a Kernel-Module Sandbox for an Untrusted Code Service
Receive the current Docker-based sandbox configuration, post-incident reports for both escapes, and the runtime requirements for Python and C++ (compilers, package availability,…
- Sandboxing
- Seccomp Bpf
- Gvisor
Computer Systems Security - 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 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
Cache-Optimize a Graph-Analytics Kernel for a Social Platform
Receive the existing kernel (C++ + OpenMP, around 1,200 lines), the 1.8B-edge graph (CSR format, around 14GB), and target hardware (dual-socket AMD EPYC 9354, 384GB DDR5, 256MB …
- Cache Optimization
- Graph Algorithms
- Memory Hierarchy
Performance Engineering of Software Systems - CodeSeniorNew
Profile and Tame a P99-Latency Tail for an Ad-Auction Service
Receive the bidder source (Go, around 22,000 lines), production traces (eBPF + flame graphs from 30 minutes of peak traffic), and the host config (NUMA-2 socket, 96 cores, 384GB…
- Performance Optimization
- Ebpf
- Systems Language Proficiency (Go, Rust, C++)
Performance Engineering of Software Systems - 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 - 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 - 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 - 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 - 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 - 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 - CodeSeniorNew
Diagnose Memory Corruption in a Trading-Firm Order Gateway
Read the 8k-line allocator + order-pool code (provided), plus 3 production crash dumps and 14 hours of pre-crash telemetry. Hypothesize root cause (likely candidates: use-after-…
- Cpp Programming
- Manual Memory Management
- Pointers
Imperative and Low-Level Programming - 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
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.



















































































