Computer Science
Testing & QA Challenges
Testing & QA challenges put you behind the safety net that lets software ship with confidence. You'll develop skills in Software Testing, Unit Testing, and Automated Testing, build End-to-end testing flows, and read Coverage Reports to find the gaps that matter before users do.
From there you'll handle the harder edges — Test architecture, Test pyramid discipline, Contract testing, and Load Testing — alongside Static Analysis, AI-assisted test generation, and regulated practices like ISO 17025 calibration and CAPA workflows. Each challenge you solve earns a verified credential you can share with recruiters.
Recommended Challenges
- CodeBeginnerNew
Add Constant Folding and Dead Code Elimination to a Toy Compiler
Fork the repo, read the IR specification (3-address code, register-based, documented in /docs/ir.md). Implement constant folding as an IR-to-IR pass: any operation on literal op…
- Intermediate Representation
- Constant Folding
- Dead Code Elimination
Compiler Construction - CodeBeginnerNew
Build a Source-to-Source Migration Tool for a Legacy API
Use Python's libcst (concrete syntax tree library) to parse customer code while preserving formatting. For each of the 14 transformations, write a CST visitor that matches the v…
- Abstract Syntax Trees
- Source To Source Transformation
- Python Or Javascript
Compiler Construction - AnalysisIntermediateNew
Frequent-Itemset Mining on a Grocery Retailer's Basket History
Load 18 months of basket-level transaction data (Parquet, around 92 GB) into a Spark cluster. Run FP-growth at support thresholds tuned per category (food vs household vs fresh)…
- Frequent Itemset Mining
- Fp Growth
- Apache Spark
Data Mining and Information Retrieval - DesignSeniorNew
Migrate a 600K-LOC Monolith to a Modular Monolith
Run static dependency analysis on the monolith (using Packwerk + custom Ruby AST scripts, both available) to surface the current implicit modules and the worst cross-module depe…
- Large Scale Codebases
- Modular Monolith
- Static Analysis
Advanced Software Engineering 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
- AnalysisIntermediateNew
Diagnose Modern Transport-Protocol Performance for an OTT Streamer
Receive the current delivery architecture (HTTP/2 origin + CDN), 4 weeks of Conviva-style QoE (quality of experience) metrics, and access to a synthetic-client harness (Linux + …
- Quic Http3
- Network Measurement
- Transport Protocols
Advanced Computer Networks - AnalysisSeniorNew
Cost-Quality Prompt Optimization at Scale
You receive 2,000 labeled code snippets (human rater consensus score 1-5) and budget for at most 8,000 API calls across the optimization run. Run a factorial sweep of 3 prompt s…
- Prompt Optimization
- Cost Quality Tradeoff
- Experimental Design
Prompt Engineering - CodeIntermediateNew
Build a Hybrid Recommender for a Niche Consumer-AI Music App
You receive listening events (around 240 million plays) plus a content embedding per track (audio + curator tags). Build a collaborative filtering model (ALS or implicit-feedbac…
- Recommender Systems
- Collaborative Filtering
- Content Based Filtering
Data Mining and Knowledge Discovery - CodeIntermediateNew
Code Review and Refactoring of a Legacy E-Commerce Module
You are given a codebase (Java/Spring Boot) of the order module. Perform a static analysis, document issues (e.g., god classes, tight coupling), and write a refactoring proposal…
- Code Review
- Refactoring
- Python Or Javascript
Software Engineering and Quality Assurance - 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
Abstract-Interpretation-Based Configuration Validator for a SaaS Platform
Define an abstract domain capturing relations between configuration fields (e.g. 'if billing.plan = enterprise then features.audit_log = true'). Implement an abstract-interpreta…
- Abstract Interpretation
- Static Analysis
- Rust Programming
Program Analysis - CodeIntermediateNew
Build a CodeQL Query Pack to Catch Logging-of-PII
Use CodeQL to write queries for Java and Python that detect data flow from PII sources (request parameters, database columns marked PII, user-profile fields) into logging sinks …
- Static Analysis
- Codeql
- Data Flow Analysis
Program Analysis - AnalysisFoundationalNew
Optimize Ad Spend for Munich D2C Cosmetics Brand
You are given a CSV dataset with 10,000 rows of ad performance data including date, campaign, audience segment, creative type, impressions, clicks, conversions, and spend. Your …
- A/B Testing
- Regression Analysis
- Data Cleaning
Marketing Analytics - CodeSeniorNew
Build a Symbolic-Execution-Based Test Generator for a Library
Pick KLEE for the symbolic-execution engine. Build LLVM bitcode for the library's C99 build target. Define symbolic inputs for the public parsing API (date strings up to 32 char…
- Symbolic Execution
- Klee
- Test Generation
Program Analysis 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
- CodeBeginnerNew
Design a Domain Model for a Library Loan System (Java)
Implement, in Java 21, an Item type hierarchy (Book, AudioBook, Periodical, EquipmentLoan — each with sub-type-specific rules), Member with eligibility logic, Loan as an aggrega…
- Python Or Javascript
- Oo Design
- Domain Modeling
Object-Oriented Programming and Design - AnalysisIntermediateNew
Apply the SQALE Method to a Telecom OSS Codebase
Configure SonarQube's quality profiles to match the SQALE model's 8 characteristics (testability, reliability, changeability, efficiency, security, maintainability, portability,…
- Sqale Method
- Technical Debt
- Code Quality
Technical Debt Management - CodeBeginnerNew
Design and Implement a C++ Telemetry Aggregator With Inheritance
Implement a TelemetrySource abstract base class with virtual sample() and timestamp() methods, 6 concrete subclasses (one per sensor family), and a TelemetryBus that polymorphic…
- Systems Language Proficiency (Go, Rust, C++)
- Inheritance
- Polymorphism
Object-Oriented Programming and Design - CodeIntermediateNew
Debug a Race Condition in a Real-Time Collaboration Service
Build a deterministic load-test harness (k6 or Playwright) that reproduces the corruption within 3 attempts on a clean local stack. Capture traces with OpenTelemetry to localize…
- Debugging
- Concurrency
- Load Testing
Software Construction - CodeIntermediateNew
Build a Dataflow-Based Dead-Code Detector for a Python Monorepo
Build a Python tool using libcst (or ast + jedi) that constructs a call graph across the monorepo. Account for indirect references (entry points in setup.py / pyproject.toml, dy…
- Dataflow Analysis
- Ast
- Call Graph
Program Analysis - AnalysisBeginnerNew
Code-Smell Triage Workshop for a Hiring-Platform Backend
Run static analysis (SonarQube + a custom ruleset for domain-specific smells) on the four most-touched services. Score each smell on the 22-item Fowler catalog by occurrence cou…
- Code Smells
- Static Analysis
- Refactoring Prioritization
Refactoring and Code Smell Detection - CodeBeginnerNew
Build a Plugin-Based Notification Framework With Observer + Factory
Implement, in Java 21: an EventBus that supports typed subscriptions, a NotificationChannel interface with concrete subtypes (Push, Email, InApp, SMS), an AbstractChannelFactory…
- Python Or Javascript
- Design Patterns
- Oo Design
Object-Oriented Programming and Design - AnalysisIntermediateNew
A/B Testing for a 40-Person SaaS Scale-up Moving to Enterprise
You are a data analyst at TaskFlow. You are given the raw A/B test data (visitor logs, conversions, and downstream sales data). Your task is to perform a rigorous analysis: chec…
- A/B Testing
- Statistical Analysis
- Bayesian Methods
Data Science for Business - CodeSeniorNew
Detect Use-After-Free with Pointer Analysis in a C++ Codebase
Build the codebase with compilation database (compile_commands.json). Write a custom Clang static-analyzer checker (or extend an existing one) that flags resource-handle uses af…
- Pointer Analysis
- Static Analysis
- Use After Free
Program Analysis - CodeIntermediateNew
Stand Up Contract Testing for a Microservices Backend
Inventory the 18 services and pick the 6 producer-consumer pairs with the most staging breakages in the last 90 days. Stand up a Pact broker (self-hosted or PactFlow trial). For…
- Contract Testing
- Pact
- Microservices Patterns
Software Testing and Quality Assurance - AnalysisBeginnerNew
Right-Size a Real-Time Recommendation Serving Cluster
You receive 7 days of request-level telemetry (timestamp, latency, error code, pod) plus the existing Horizontal Pod Autoscaler (HPA) and node-group configs. Analyze traffic pat…
- Model Serving
- Kubernetes Orchestration
- Autoscaling
Machine Learning at Scale - CodeIntermediateNew
Containerized Model Inference on Kubernetes for a Fintech
You receive a pre-trained credit-risk model (a LightGBM model file) and a sample request payload. Containerize a FastAPI inference service, deploy to EKS or GKE (a single-zone c…
- Kubernetes Orchestration
- Containerization
- Autoscaling
Cloud Computing for Data and ML
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.



















































































