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
- DesignIntermediateNew
Domain-Driven Design Aggregate Redesign for a Lending API
Facilitate a 1-day event-storming workshop with 8 participants from product, engineering, risk, and operations to surface domain events. From the events, identify 3-5 bounded co…
- Domain Driven Design
- Event Storming
- Bounded Contexts
Software Design and Design Patterns - AnalysisIntermediateNew
Build a Technical Debt Register for a Legacy Banking Monolith
Run 8 structured 45-minute engineer interviews (template provided) capturing one debt item per pain point with reproducible evidence. Run SonarQube against the monolith for a qu…
- Technical Debt
- Debt Quadrant
- Code Quality
Technical Debt Management - DesignIntermediateNew
Map Bounded Contexts for a Mid-Cap Insurance Carrier
Facilitate 2 half-day Event Storming sessions with 18 domain experts using Miro. Capture domain events, commands, actors, and policies. Identify 6 to 10 candidate bounded contex…
- Event Storming
- Bounded Contexts
- Context Mapping
Domain-Driven Design - StrategyBeginnerNew
Continuous-Improvement Kata for a SaaS Engineering Org
Read Mike Rother's 'Toyota Kata' framework + 'The Kata Coaching Practice Guide'. Design a lightweight Improvement Kata for the 3 pilot teams: vision (engineering quality), targe…
- Continuous Improvement
- Toyota Kata
- Coaching
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
- 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 - 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 - DesignIntermediateNew
Design a SLSA-Aligned, Signed Release Pipeline for an Apache Project
Working only from the materials provided—the project dossier, the current release-pipeline module, the SLSA v1.0 specification, the slsa-github-generator project, the Sigstore d…
- Supply Chain
- Slsa
- Sigstore
Open coursework - ResearchBeginnerNew
Run a Stakeholder Discovery Program for a Hospital Records Replacement
Using the discovery context and stakeholder roster in the case file, design and run a structured program of 38 interviews (45 minutes each) covering the 28 clinicians, 6 technol…
- Stakeholder Analysis
- Requirements Elicitation
- User Interviews
Open coursework - 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.
- StrategyBeginnerNew
Modernize a Retail SAP Customization Strategy with Sidecar Apps
Work only from the materials provided: the de-identified customization register, the historical upgrade-impact log, and the pricing-approval workflow specification, supported by…
- SAP Btp
- Cap Framework
- Enterprise Architecture
Open coursework - CodeIntermediateNew
Design an Anti-Corruption Layer for a Legacy Hospital EHR
Map the legacy EHR's HL7 v2 message schema (ADT, ORM, ORU segments) to the new platform's domain (Patient, Encounter, Order, Result). Identify the 6-10 anti-patterns in the lega…
- Anti Corruption Layer
- Hl7 Integration
- Domain Modeling
Domain-Driven Design - DesignIntermediateNew
Design an Upstream Contribution to a CNCF Service-Mesh Project
Using the internal fork dossier (case-file) for the business context, the prior rejection feedback, and the targeted roadmap area, design an upstream contribution that a careful…
- Oss Contribution
- Rfc Design
- Pr Etiquette
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 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
Audit and Govern a Frankfurt Bank's Sprawling API Estate
Working only from the materials provided, examine the API estate and reach a defensible governance judgment. Read the situation record (estate-situation-file) to understand how …
- API Governance
- Openapi Spec
- Dora Compliance
Open coursework - CodeSeniorNew
Implement a Proof-of-Stake Consensus Mechanism in Rust
Read the Casper FFG paper (Buterin + Griffith, 2017) and design a simplified PoS implementation in Rust: 21 validators, 32-slot epochs, two-phase finality (justify, then finaliz…
- Consensus Algorithms
- Blockchain Protocols
- Rust
Blockchain and Decentralized Systems Engineering - DesignSeniorNew
Design a Cross-Chain Bridge Protocol with Honest Threat Model
Read the Vitalik 'cross-chain interoperability' essay and survey 3 existing bridge designs (lock-and-mint, atomic-swap, optimistic-rollup-native). Design your protocol around a …
- Blockchain Protocols
- Smart Contracts
- Solidity
Open coursework - 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 - 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 - StrategyBeginnerNew
Strategy Brief on Layer-2 Choice for a Web3 Gaming Studio
Survey the three L2 categories with 2026-current numbers: per-transaction cost at expected game throughput (around 50 TPS sustained, 500 TPS event spikes), finality latency (mat…
- Layer 2 Protocols
- Blockchain Protocols
- Research
Open coursework - StrategyIntermediateNew
Rebuild a Bank's Requirements Baseline for Audit Defense
Working only from the program case file, the current 400-entry requirements spreadsheet, and the auditor's findings note provided to you, produce a judgment and a working baseli…
- Requirements Management
- Traceability
- Governance
Open coursework - CodeIntermediateNew
Bridge a Healthcare Messaging System from RabbitMQ to Kafka
Working from the provided RabbitMQ topology specification and the 30-day message-volume dataset, map each of the 24 queues to a Kafka topic and choose a sound partition key for …
- Kafka
- Rabbitmq
- Message Broker Migration
Open coursework - CodeBeginnerNew
Characterization Tests for an Untested Pricing Engine
Drive the pricing engine with around 800 representative input vectors generated from anonymized production quotes (provided). For each vector, capture the current output as the …
- Characterization Tests
- Approval Testing
- Legacy Code
Refactoring and Code Smell Detection - DesignIntermediateNew
Rate and Reduce Technical Debt in a Telecom OSS Codebase
Design a SQALE-based technical-debt rating and improvement proposal for Lumera Telekom's OSS. Using only the static-analysis findings export, the module inventory and rating gri…
- Sqale Method
- Technical Debt
- Code Quality
Open coursework - DesignIntermediateNew
Event-Driven Architecture for an Order-to-Cash Pipeline
Design an event-driven architecture using a Kafka-like message bus (anonymized: assume a Kafka-compatible event log). Define: 9 event types with Avro schemas, partition strategy…
- Event Driven Architecture
- Kafka
- Saga Pattern
Software Architecture - DesignIntermediateNew
Design a Real-Time Fraud-Scoring Stream for a Card Issuer
Produce a design proposal for a fraud-scoring stream that ingests authorization events, maintains a 30-day rolling feature state per customer, applies a pre-trained scoring mode…
- Apache Flink
- Kafka Streams
- Stream Processing
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.
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.



















































































