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
Canary Deployments via Mesh Traffic Splitting for a Streaming Platform
Set up Flagger with Istio as the traffic provider. Define a canary policy for the playback-API service: 5 percent → 25 percent → 50 percent → 100 percent with 5-minute bake at e…
- Istio
- Flagger
- Canary Deployment
Service Mesh and Microservices Networking - CodeSeniorNew
Envoy WASM Filter for Per-Tenant Rate Limiting
Implement the filter in Rust using the proxy-wasm-rust-sdk. The filter computes a (tenant_id, endpoint, method) key, calls a Redis token-bucket service via a sidecar HTTP client…
- Envoy
- Wasm
- Rust Programming
Service Mesh and Microservices Networking - CodeBeginnerNew
Observability Injection: Distributed Tracing via Sidecars
Enable Envoy tracing with the OpenTelemetry tracer in Istio MeshConfig. Configure a Tempo backend with a Grafana frontend. Verify W3C tracecontext propagation across all 26 serv…
- Distributed Tracing
- Opentelemetry
- Envoy
Open coursework - StrategyBeginnerNew
Toil Audit + Automation Sprint for a Platform Team
Week 1-2: every team member logs every toil instance for 10 working days (timestamp, category, duration). Categorize using the Google SRE toil taxonomy (manual, repetitive, auto…
- Toil Reduction
- Automation
- Reliability Engineering
Open coursework 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
- 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 - DesignBeginnerNew
Refresh a Decade of Tangled Architecture Documentation
Using the platform architecture dossier and the documentation inventory provided, propose and produce a consolidated architecture documentation set. First, audit the existing pa…
- Architecture Documentation
- C4 Model
- Arc42
Open coursework - AnalysisSeniorNew
Spike Three Multiplayer Backend Patterns and Recommend One
Using the gameplay-shape specification, the starter server module, and the simulated player-input traces provided to you, implement minimal but faithful versions of all three ne…
- Realtime Systems
- Architecture Spike
- Networking Patterns
Open coursework - CodeBeginnerNew
Add a Test Harness to an Untested Open-Source CLI
Fork the repo (test mirror provided), set up Vitest with coverage and a CI workflow that fails under 75 percent on the targeted modules. Write characterization tests first (asse…
- Unit Testing
- Integration Testing
- Test Coverage
Software Construction - Browse challenges
Explore role
Strategy Analyst
Frame the business question, model the options, build the recommendation. From market sizing to competitive analysis, this role is where strategy consulting meets in-house decision-making.
- CodeIntermediateNew
Specification-First Refactor of a Payments Module
Read the module, the last 12 months of incidents touching it, and the existing tests. Write a 6-page specification using a precondition / postcondition / invariant format per pu…
- Specifications
- Refactoring
- Characterization Testing
Open coursework - 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
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 - CodeBeginnerNew
Apply SOLID Principles to a Notifications Subsystem
Read Notifier and the last 6 months of incidents touching it. Write a 4-page design document mapping each of the 5 SOLID principles to a specific change in the subsystem (Single…
- Solid Principles
- Design Patterns
- Refactoring
Software Design and Design Patterns Get recognized by recruiters and employers.
Credentials are blockchain-anchored via LearnCoin — tamper-evident, portable, link-shareable on LinkedIn and beyond.
Why Ewance
- CodeIntermediateNew
Repository + Unit-of-Work Refactor on an EF Core Codebase
Read the data-access patterns across the 5 bounded contexts (Payroll, Timesheets, Benefits, Org, Reporting) and tag the 12 worst N+1 incidents from the last quarter's traces. Au…
- Repository Pattern
- Unit Of Work
- Design Patterns
Software Design and Design Patterns - ResearchFoundationalNew
Requirements Discovery for a Restaurant Inventory App
Conduct 5 semi-structured interviews (45 minutes each) across line cook, kitchen manager, bar manager, store manager, and group operations. Synthesize findings into 5 user perso…
- Requirements Engineering
- User Interviews
- Use Case Modeling
Software Engineering Foundations - DesignBeginnerNew
Design the Architecture for a Library Management System
Read the 30-page replacement RFP. Author a 15-page architecture document covering the C4 model levels 1-3 (context, container, component) for the new system: web app, mobile app…
- Software Architecture
- C4 Model
- Data Modeling
Open coursework - CodeBeginnerNew
Build and Ship a Bug-Tracker MVP with Full CI/CD
Week 1: write a 1-page SRS + Figma wireframes for 5 screens (login, bug list, bug detail, file bug, dashboard). Week 2-3: implement with Next.js + Supabase + Tailwind, with unit…
- Full Stack Development
- Requirements Engineering
- Ci Cd
Software Engineering Foundations - StrategyBeginnerNew
Maintenance Plan for a Donated NGO Web Platform
Run an inventory: dependencies (with known-CVE check), secret exposure, test coverage, deploy process, observability, and on-call. Author a 12-month maintenance plan covering pr…
- Software Maintenance
- Dependency Management
- Security Hardening
Software Engineering Foundations - 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 - 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 - 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
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.



















































































