Computer Science
Programming Fundamentals Challenges
Programming Fundamentals challenges put you inside the work of writing code that is correct, readable and fast. You'll build core skills in functions & data structures, object-oriented design and design patterns, work in Python or JavaScript, and learn to do code reading and refactoring the way teams expect.
From there you'll tackle the harder edges — algorithm analysis, complexity analysis, graph algorithms and generics & type systems — pushing into performance engineering, low-latency programming patterns and systems-language proficiency (Go, Rust, C++). Each challenge you solve earns a verified credential you can share with recruiters.
- 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 - CodeIntermediateNew
Forecast Intraday FX Volatility for a London Liquidity Desk
You receive 18 months of tick-level mid-quote data for six FX pairs plus a calendar of scheduled macro events. Resample to 1-minute bars, engineer realized-volatility features, …
- Time Series Forecasting
- Feature Engineering
- Model Validation
AI and Quantitative Finance - CodeIntermediateNew
Detect Change Points in a Trading Platform's Latency Telemetry
You receive 90 days of per-millisecond latency telemetry across 12 services, plus an incident log of 14 known regressions and 22 known false-alarm-class events. Implement and tu…
- Change Point Detection
- Anomaly Detection
- Time Series Analysis
Time Series Analysis and Forecasting - DesignIntermediateNew
Design a Small Domain-Specific Language for Invoice Rules
Design a DSL grammar (BNF) covering: boolean conditions (and / or / not), comparison operators, customer-attribute references, line-attribute references, and action expressions …
- Abstraction
- Recursion
- Domain Specific Language
Programming Abstractions 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
- CodeBeginnerNew
Prototype a Multimodal Visual-Question-Answering Demo
You will use a small open-source vision-language model (e.g., LLaVA-1.5-7B or PaliGemma) and prompt-engineer it for the warehouse-VQA task. Build a Gradio web demo. Construct a …
- Vision Language Models
- Multimodal Perception
- Prompt Patterns
Machine Perception - AnalysisBeginnerNew
Profile and Optimize a Virtual-Memory-Heavy Image Pipeline
Receive the Go pipeline source, a representative batch (1,200 photos averaging 12MB each, with 30 outliers over 80MB), and host specs (4-core, 16GB RAM, Linux kernel 5.15). Run …
- Virtual Memory
- Performance Profiling
- Memory Hierarchy
Computer Systems and Organization - CodeIntermediateNew
Hierarchical Plans for an Aerospace Maintenance Crew Scheduler
You receive a synthetic week of 80 work orders with hierarchical decompositions, technician certifications, and shared-tool constraints. Implement an HTN planner (PyHOP or HDDL …
- Htn Planning
- Domain Modeling
- Constraint Handling
Automated Planning - CodeIntermediateNew
Refactor a Reckless Inadvertent Debt Hotspot
Read the class + git blame to map its responsibilities. Write characterization tests (using approval testing) until you can change behaviour without surprise — target at least 7…
- Refactoring
- Mikado Method
- Characterization Testing
Technical Debt Management - Browse challenges
Explore role
Pricing Strategist
Set the price that captures value without leaving sales on the table. Demand modelling, willingness-to-pay research, and the disciplined experimentation that turns pricing into a competitive advantage.
- CodeIntermediateNew
Property-Based Testing for a SEPA Payments Library
Read the SEPA Pain.001 XSD (XML Schema Definition) and pick 5 invariants the parser MUST preserve (e.g., 'sum of transactions equals control sum', 'IBAN passes mod-97 check', 'c…
- Property Based Testing
- Fuzz Testing
- Systems Language Proficiency (Go, Rust, C++)
Software Testing and Quality Assurance - CodeBeginnerNew
Image Search for a DTC Furniture Retailer's App
Use a pretrained vision-embedding model (CLIP ViT-B/32 or DINOv2-small). Index a catalog of around 1,500 furniture images. Curate a small evaluation set of around 50 user-style …
- Image Embeddings
- Vision Transformers
- Image Search
Computer Vision (Undergraduate) - CodeIntermediateNew
Refactor a God-Object Order Service with Strategy + Command
Read OrderService and the last 18 months of bug tickets touching it. Author a 5-page design document showing the current class diagram, the target Strategy-per-order-type + Comm…
- Design Patterns
- Refactoring
- Strategy Pattern
Software Design and Design Patterns - AnalysisIntermediateNew
Penetration-Test the TLS Configuration of an Edge Fleet
Receive read-only access to a 50-node representative sample (anonymized). Scan with testssl.sh + Qualys SSL Labs (where reachable) + a custom Go tool you write to test specific …
- Tls
- Applied Cryptography
- Penetration Testing
Applied Cryptography Get recognized by recruiters and employers.
Credentials are blockchain-anchored via LearnCoin — tamper-evident, portable, link-shareable on LinkedIn and beyond.
Why Ewance
- CodeIntermediateNew
Design Error Recovery for a Friendly Compiler
Read the existing parser (recursive-descent, in Rust). Design and implement a panic-mode error recovery strategy with synchronization tokens (statement boundary, end of block, s…
- Error Recovery
- Recursive Descent Parsing
- Diagnostic Design
Compiler Construction - AnalysisIntermediateNew
Mutation Testing on a Critical Pricing Service
Run PIT against the pricing service to get a baseline mutation score per class. Identify the 5 classes with the largest gap between line coverage and mutation score (these are t…
- Mutation Testing
- Python Or Javascript
- Junit
Software Testing and Quality Assurance - 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 - CodeIntermediateNew
Localize a Mobile Robot with Particle-Filter SLAM
You receive 4 ROS bags from real customer plants, each containing 2D LiDAR scans, wheel odometry, and ground-truth poses (from a motion-capture cell used only for evaluation). I…
- State Estimation
- Particle Filter
- Slam
Advanced Robotics - CodeIntermediateNew
Teach a Warehouse Cobot from Operator Demonstrations
You receive a simulated UR5e cobot in PyBullet, plus 12 example demonstrations of two kitting sequences. Implement Dynamic Movement Primitives (DMPs — a classic LfD technique th…
- Learning From Demonstration
- Dynamic Movement Primitives
- Human Robot Interaction
Human-Robot Interaction - CodeSeniorNew
Multilingual RAG for a European Customer-Support Knowledge Base
You receive 6,000 documents in 4 languages (mix of FAQs, parts catalogs, repair procedures) plus 120 labeled queries (30 per language) with gold source documents. Build a multil…
- Multilingual RAG
- Cross Lingual Retrieval
- Multilingual Embeddings
Retrieval-Augmented Generation - CodeBeginnerNew
Knowledge-Graph Recommender for a Niche Online Bookstore
Model the catalog as a knowledge graph (nodes: books, authors, genres, themes, eras, awards; edges: wrote, in-genre, has-theme, won, similar-to). Use Neo4j or a simple Python in…
- Knowledge Representation
- Knowledge Graphs
- Python Or Javascript
Introduction to Artificial Intelligence (CS Elective) - AnalysisBeginnerNew
Explain a Credit-Risk Model with SHAP for a Fintech
You receive a trained XGBoost credit-risk model (binary default prediction), the training feature schema (38 features), and a held-out 10,000-sample test set with labels. Comput…
- Shap
- Interpretability
- Fairness Analysis
Explainable and Interpretable AI - CodeBeginnerNew
Design a Race-Free Cache for a Read-Heavy Service
Implement a thread-safe LRU-bounded cache in Java (or Go — your choice, defend it) with: read-write lock or copy-on-write semantics, get-or-load pattern with single-flight to de…
- Concurrent Data Structures
- Race Conditions
- Single Flight
Concurrent and Parallel Programming - CodeIntermediateNew
Run a Monte Carlo Tree Search Strategy for a Robotics Pick-and-Place Task
You receive a simulator of the pick-and-place task: a bin with 10 randomly-placed parts, an action space of which part to pick next, and a reward = parts picked per minute with …
- Monte Carlo Tree Search
- Planning
- Simulation
Decision Making Under Uncertainty - AnalysisIntermediateNew
Evaluate an Agent Suite on the SWE-Bench-Style Coding Benchmark
You receive a sandboxed set of 50 small repo-modification tasks (test-passing as the success signal). Run 3 open-source agent frameworks (e.g., OpenHands, SWE-agent, and Aider) …
- Ai Agents
- Agent Evaluation
- Benchmarking
AI Agents and LLM-Based Agents - CodeIntermediateNew
Safety-Critical Test Harness for an AV Planner
Use CARLA (open-source AV simulator) and encode 10 representative safety scenarios across 3 categories (cut-in, pedestrian emergence, signalized-intersection right-of-way). Writ…
- Simulation
- Scenario Testing
- Safety Evaluation
AI for Autonomous Vehicles
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.
Related skill families
Browse all skillsIndustry 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.



















































































