Engineering & Technology
Software Engineering Challenges
Real software-engineering projects on Ewance — design, build, and ship features against production-shaped constraints, not toy exercises. Solve them to build a portfolio of verified, recruiter-checkable proof you can do the work — not just describe it.
Recommended challenges
- StrategyIntermediateNew
Decompose a CRM Monolith into Bounded Services
Analyze the monolith using NDepend or similar (provided). Identify the top 4-6 candidate service boundaries based on coupling + business-capability seams (likely: Quotation, Pol…
- Strangler Fig Pattern
- Service Decomposition
- Csharp Programming
Enterprise and Business Software Engineering - 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 - 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 Tangled Order Aggregate at a Logistics Platform
Work in the provided Spring Boot 3 + Java 21 codebase. Identify the true aggregate roots (likely candidates: Order, Shipment, Invoice) and split the god object accordingly. Extr…
- Tactical Ddd
- Aggregate Design
- Java Refactoring
Domain-Driven Design 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
Technical-Debt Quantification for an Acquired SaaS
Run a static-analysis sweep (SonarQube + custom dependency scripts) and a 4-hour structured walkthrough with the acquired team's 3 senior engineers. Categorize debt into: code-q…
- Technical Debt
- Code Analysis
- Estimation
Software Evolution and Maintenance - 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
Software Engineering Foundations - 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
Software Evolution and Maintenance - DesignBeginnerNew
Use-Case Specification for a Marketplace Disputes Workflow
Identify 5 primary use cases (e.g., 'Buyer opens dispute within 7-day window', 'Seller counters with evidence', 'Operations escalates to refund'). For each: actors, precondition…
- Use Cases
- Cockburn Template
- Requirements Specification
Requirements Engineering - 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.
- AnalysisIntermediateNew
Defect-Trend Analysis and Quality Action Plan for an EV Charging Platform
Pull 18 months of defect data from Jira + the field-incident system + customer-service tickets. Categorize defects by component, severity, and root-cause taxonomy. Run statistic…
- Defect Analysis
- Statistical Process Control
- Root Cause Analysis
Software Quality and Process Improvement - StrategyBeginnerNew
IDE-Assisted Refactoring Bootcamp for a Junior Backend Team
Design a 5-day curriculum centered on 10 katas chosen for refactoring-pattern coverage (e.g., Gilded Rose for replace-conditional-with-polymorphism, Tennis kata for extract-meth…
- Refactoring
- Katas
- Ide Tooling
Refactoring and Code Smell Detection - AnalysisIntermediateNew
Empirical Study of PR Review Throughput on a Mid-Sized Monorepo
Pull 8 weeks of PR data from the monorepo (~3,800 PRs across 12 teams) covering open-to-merge time, review-comment count, review-round count, reviewer count, lines changed, and …
- Empirical Software Engineering
- Software Analytics
- Statistical Analysis
Advanced Software Engineering - 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 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
- CodeIntermediateNew
Build an Indexer for an On-Chain DeFi Analytics Product
Receive the 6 protocols' ABIs + the team's required event coverage spec (around 40 event types). Build a TypeScript indexer using viem + Postgres: subscribe to new blocks via We…
- Blockchain Indexing
- Typescript
- Ethereum
Blockchain and Decentralized Systems Engineering - AnalysisBeginnerNew
Author a Ubiquitous-Language Glossary for a Telco Billing Domain
Conduct 12 structured interviews (30 min each) with stakeholders across CRM, billing, AR, customer portal, and finance. Capture each team's terminology for the top 25 domain con…
- Ubiquitous Language
- Context Mapping
- Stakeholder Interviews
Domain-Driven Design - StrategyBeginnerNew
Design a Sustainable Maintainership Model for a Mid-Tier OSS Project
Read the project's last 12 months of issues, PRs, and Discord/Slack archives (anonymized). Identify: top maintainer-burnout signals, the 5 highest-friction issue categories, and…
- Governance Models
- Maintainership
- Issue Triage
Open Source Contribution and Maintainership - StrategyBeginnerNew
Modernize an ERP Customization Strategy via Sidecar Apps
Catalog the 23 customizations by type (workflow, UI extension, integration, report, business logic) and impact on upgrade cycles. For each, propose the right BTP target (CAP ser…
- SAP Btp
- Cap Framework
- Enterprise Architecture
Enterprise and Business Software Engineering - 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 - 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
Design a Saga Orchestrator for a Cross-Border Payments Flow
Model the payment flow as a saga: 6 forward steps + their compensations. Choose between orchestration (Temporal) and choreography (event-driven via Kafka) and defend the choice.…
- Saga Pattern
- Temporal Workflow
- Compensation Logic
Event-Driven Architecture - CodeIntermediateNew
Migrate an Internal Service from REST to gRPC
Receive the existing OpenAPI spec, the Go service code, and 7 days of traffic data. Pick the top 2 RPS-by-method endpoints and design Protocol Buffers (protobuf) message + servi…
- Grpc
- Protobuf
- API Design
API Design and GraphQL - DesignIntermediateNew
Change-Impact Analysis for a Cross-Service API Migration
Pull API logs over 30 days from the API gateway to enumerate all consumers + per-endpoint call volume. Cross-reference with service-catalog ownership to map 23 consumers to team…
- Change Impact Analysis
- API Migration
- Parallel Run
Software Evolution and Maintenance - DesignBeginnerNew
Architecture Decision Records for a Modernization Program
Read 18 weeks of architecture-channel Slack history and 6 architecture-review meeting notes to inventory decisions already made. Backfill 12 ADRs using Michael Nygard's template…
- Architecture Decision Records
- Technical Debt
- Stakeholder Communication
Technical Debt Management - CodeIntermediateNew
Build a Real-Time Fraud-Detection Stream for a Card Issuer
Design the stream topology: authorization events in, customer-feature state (30-day rolling) maintained in state store, scoring function applied per event, fraud-score emitted t…
- Apache Flink
- Kafka Streams
- Stream Processing
Event-Driven Architecture - CodeIntermediateNew
Upstream a Strategic Patch to a Major CNCF Project
Pick a published roadmap area on the chosen project (instructor will sanity-check the choice). Read the project's CONTRIBUTING.md, RFC template, governance model, and the 3 most…
- Oss Contribution
- Rfc Design
- Pr Etiquette
Open Source Contribution and Maintainership
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 fields
View all →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.



















































































