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
- CodeIntermediateNew
Implement Federated Learning for a Government Statistics Office
Use Flower as the FL framework. Simulate 8 municipalities each with a partition of a synthetic wage dataset (provided, 1M rows, EU-Labour-Force-Survey schema). Train a gradient-…
- Federated Learning
- Differential Privacy
- Python Programming
Privacy-Enhancing Technologies - CodeIntermediateNew
Build a CodeQL Query Pack to Catch Logging of Personal Data
Using the provided personal-data source and logging-sink specification, write CodeQL data-flow queries for Java and Python that detect personal data travelling from a source (re…
- Static Analysis
- Codeql
- Data Flow Analysis
Open coursework - CodeIntermediateNew
Find the Dead Code Hiding in a Python Monorepo
Build a dataflow- and call-graph-based dead-code detector in Python (using libcst, or the standard ast module together with jedi) and prove it on the materials provided. Run it …
- Dataflow Analysis
- Ast
- Call Graph
Open coursework - CodeIntermediateNew
Build a Shareable Immutable List for a Real-Time Document Editor
Using the provided API specification (persistent-list-spec) and the starter module (immutable-list-starter), implement a persistent immutable list supporting get, set, append, p…
- Data Abstraction
- Recursion
- Persistent Data Structures
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
- DesignIntermediateNew
Design an Invoice-Rules Mini-Language for Non-Technical Users
Design a rule mini-language whose grammar (written in Backus-Naur Form, the standard notation for describing grammars) covers boolean logic (and / or / not), comparison operator…
- Abstraction
- Recursion
- Domain Specific Language
Open coursework - CodeIntermediateNew
Bloom Filter Cache to Cut Origin Load at a CDN Edge
Given a target false-positive rate of 1 percent at 200 million keys per shard, compute the optimal bit-array size (m) and hash-function count (k) using the canonical formulas. I…
- Bloom Filters
- Probabilistic Data Structures
- Hash Functions
Randomized Algorithms - CodeIntermediateNew
MinHash Similarity Sketch for a Job-Board Deduplication Pipeline
Implement a MinHash signature generator (128 permutations) over shingled job-posting text (5-gram word shingles). Build an LSH banding index (16 bands of 8 hashes each) tuned fo…
- Minhash
- Locality Sensitive Hashing
- Probabilistic Data Structures
Randomized Algorithms - AnalysisIntermediateNew
Randomized Load Balancer with the Power of Two Choices
Simulate four placement policies on a 24-hour anonymized connection-establishment trace (around 4.1 billion events): (1) random-1, (2) round-robin, (3) P2C with instantaneous lo…
- Power Of Two Choices
- Load Balancing
- Randomized Algorithms
Open coursework - 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.
- CodeIntermediateNew
Reservoir Sampling for a Privacy-Preserving Telemetry Pipeline
Implement Vitter's Algorithm R (and the faster Algorithm L for bonus credit) producing a 90M-event uniform sample per day from a stream of 18B. Add per-key stratification (so lo…
- Reservoir Sampling
- Randomized Algorithms
- Streaming Systems
Open coursework - CodeIntermediateNew
Apply the Mikado Method to Untangle a Tax-Engine Class
Starting from the live codebase (Java 17, 73 percent line coverage), write a failing test that asserts the desired end state ('TaxCalculator is decomposed into per-country strat…
- Mikado Method
- Refactoring
- Strategy Pattern
Refactoring and Code Smell Detection - CodeIntermediateNew
Strangler-Fig Migration of a Monolithic Order Service
Stand up an HTTP facade in front of the monolith (Nginx or a small Go proxy) that routes by URL pattern. Slice 1: extract the order-status read endpoint, dual-write nothing, rou…
- Strangler Fig Pattern
- Refactoring
- Legacy Modernization
Refactoring and Code Smell Detection - CodeIntermediateNew
Stream-Process a 64-Microphone Array to Locate Bearing Faults in Real Time
Using the provided fixture generator and array-geometry spec, implement an overlap-add streaming pipeline that consumes 64 channels in 1,024-sample frames with 50 percent overla…
- Fft
- Signal Processing
- Beamforming
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
- AnalysisIntermediateNew
Capacity Planning Model for a Black-Friday Traffic Surge
Pull 18 months of per-service request rate + utilization from Prometheus. Forecast BFCM traffic per service using a baseline + multiplicative seasonal model (Prophet or statsmod…
- Capacity Planning
- Forecasting
- Autoscaling
Site Reliability Engineering - ResearchIntermediateNew
Design an Empirical Study of Pull Request Review Throughput
Using the provided pull request dataset and the stakeholder brief, design and run an empirical software-engineering study on review throughput. State three falsifiable hypothese…
- Empirical Software Engineering
- Software Analytics
- Statistical Analysis
Open coursework - CodeIntermediateNew
Ship an Engineering-Health Dashboard for an 18-Team Org
Using the four sample data extracts (pull-request events, Linear work-item history, PagerDuty incidents, and the quarterly developer-experience survey) and the organization brie…
- Software Analytics
- Dora Metrics
- Space Framework
Open coursework - AnalysisIntermediateNew
Diagnose a Failed Microservices Migration at a Travel Platform
Using only the four supplied materials — the interview transcript excerpts (voyalink-interview-transcripts), the decision and incident artifact corpus (voyalink-artifact-corpus)…
- Industrial Case Study
- Qualitative Research
- Software Architecture
Open coursework - AnalysisIntermediateNew
Reverse-Engineer a 22-Year-Old COBOL Batch Pipeline
Use SonarQube + cobol-language tooling + JCL parsers to extract job dependencies and data-flow across the 140 jobs. Build a job-dependency graph (Graphviz). Run impact analysis:…
- Reverse Engineering
- Legacy Systems
- Dependency Analysis
Software Evolution and Maintenance - CodeIntermediateNew
Refactor a Big-Ball-of-Mud Java Servlet Application
Week 1: install JUnit 5 + Testcontainers harness, write characterization tests for the 2 target workflows (PolicyIssue + ClaimSubmit) reaching at least 80 percent branch coverag…
- Refactoring
- Characterization Testing
- Legacy Systems
Software Evolution and Maintenance - CodeIntermediateNew
Strangler-Fig Modernization of a Healthcare Reporting Service
Audit the report categories (around 14) and pick operating-theater utilization for the pilot extraction (high volume, moderate complexity, low regulatory blast-radius). Design t…
- Strangler Fig
- Legacy Systems
- Feature Flags
Open coursework - DesignIntermediateNew
Build a Quality Metrics Program for a Medical-Device Software Team
Read the team's QMS (Quality Management System) documents and the IEC 62304 software lifecycle requirements. Design a metric catalog of 12-15 metrics covering process (review-co…
- Quality Metrics
- Iec 62304
- Process Improvement
Software Quality and Process Improvement - StrategyIntermediateNew
Roadmap a Defense Software Supplier from CMMI Level 2 to Level 3
Using only the materials provided to you — the de-identified Level 2 appraisal report (M1), the current-state process documentation snapshot (M2), the pilot baseline dataset for…
- Cmmi
- Process Improvement
- Process Models
Open coursework - CodeIntermediateNew
Secure the Software Supply Chain of an Open-Source SDK
Audit the current state: dependency tree, publish process, GitHub Actions workflows, signing posture. Generate an SBOM (CycloneDX format) using Syft. Run OpenSSF Scorecard and t…
- Supply Chain Security
- Slsa
- Sbom
Open coursework - AnalysisIntermediateNew
Secure-by-Design Review of a Microservices Auth Subsystem
Read the 18-page proposed auth-service design (Next.js BFF, FastAPI auth-service, Postgres for sessions + refresh, Redis for short-lived tokens, integration with Auth0 for OIDC)…
- Secure Design
- OWASP Asvs
- Oauth2
Software Security - CodeIntermediateNew
Real-Time Collaboration Whiteboard with WebSockets
Design the board state model (sticky notes + cursor positions) and pick a conflict-resolution approach (last-write-wins for v1, or operational-transform if scoping allows). Buil…
- Websockets
- React
- Nodejs
Open coursework
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.



















































































