Software Engineering
Backend Engineer
If you like the kind of work a Backend Engineer does, every challenge here gives you a chance to do that work on a real industry brief.
- CodeAdvancedNew
Randomized Sketch Algorithm for Stream Cardinality
Read the HLL paper (Flajolet et al., 2007) and a sample of 30 minutes of customer trace IDs (around 80M events). Implement HLL from scratch in Go (no library imports). Run bench…
- Randomized Algorithms
- Sketching
- Algorithm Analysis
Advanced Algorithms - CodeAdvancedNew
Apply Hexagonal Architecture to a Payments Microservice
Design the settlement domain in pure Kotlin (no Spring imports, no framework annotations). Define ports for: payment-network adapter (one inbound per network — SEPA, Faster Paym…
- Hexagonal Architecture
- Ports And Adapters
- Kotlin Programming
Domain-Driven Design - CodeAdvancedNew
Build an Event-Sourced Inventory System for a Warehouse
Design the event model: 12-15 events covering the warehouse lifecycle. Implement using EventStoreDB (or Kafka + a snapshotting projection layer) in Go or C#. Build at least 3 re…
- Event Sourcing
- Cqrs
- Eventstoredb
Event-Driven Architecture - CodeAdvancedNew
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
Software Construction Practice your coursework on real scenarios.
Every challenge is shaped from real industry context — not generic exercises. The work mirrors what your degree prepares you for.
Why Ewance
- CodeAdvancedNew
Build a Streaming Pipeline for Real-Time Fraud Detection
Receive 30 days of anonymized card-transaction events (around 240M events total), the team's existing batch features (cardholder behavior summaries), and a pre-trained fraud-sco…
- Stream Processing
- Kafka
- Flink
Big Data and Data-Intensive Systems - CodeAdvancedNew
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 - CodeAdvancedNew
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 - CodeAdvancedNew
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 - 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.
- CodeAdvancedNew
Parallelize a Monte Carlo Risk Engine for a Quant Hedge Fund
Profile the existing engine (C++17, single-threaded). Identify the parallelism axis (per-path independence is the obvious one — but watch for the global RNG bottleneck). Impleme…
- Parallel Algorithms
- Shared Memory
- Work Stealing
Parallel and Distributed Algorithms - CodeAdvancedNew
Implement Bulk Synchronous Parallel PageRank on a 1.5B-Edge Graph
Choose either Apache Spark + GraphX (Pregel API) or a vanilla MPI + C++ implementation. Run 25 iterations of PageRank on the 1.5B-edge graph (graph file format provided: CSR par…
- Parallel Algorithms
- Bsp
- Graph Algorithms
Parallel and Distributed Algorithms - CodeAdvancedNew
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 - CodeAdvancedNew
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 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
- CodeAdvancedNew
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 - CodeAdvancedNew
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 - CodeAdvancedNew
Add Idempotency Keys to a Payment Webhook System
Read the current Go webhook-sender code and 30 days of duplicate-delivery incident logs. Design the idempotency scheme: server-generated key per event (UUID v7 — time-ordered), …
- Api Design
- Idempotency
- Webhooks
API Design and GraphQL - CodeAdvancedNew
Property-Based Testing for a SEPA Payments Library
Read the SEPA Pain.001 XSD (XML Schema Definition) and pick 5 invariants the parser MUST preserve (e.g., 'sum of transactions equals control sum', 'IBAN passes mod-97 check', 'c…
- Property Based Testing
- Fuzz Testing
- Go
Software Testing and Quality Assurance - CodeAdvancedNew
Build a BM25 + Embeddings Hybrid Search for a Legal-Tech Document Portal
Stand up an OpenSearch cluster with BM25 indexing on the 2.4M-document corpus. Generate dense embeddings (you choose the model; justify cost and quality trade-offs) and index th…
- Information Retrieval
- Bm25
- Vector Search
Data Mining and Information Retrieval - CodeAdvancedNew
Design a Lock-Free Concurrent Queue for an Event Bus
Implement an MPSC (multi-producer single-consumer) ring-buffer queue in Go using atomic operations only — no mutexes. Prove correctness with the Go race detector across 8 produc…
- Concurrent Data Structures
- Lock Free Programming
- Go
Data Structures - CodeAdvancedNew
Design a Change-Data-Capture Pipeline for an E-Commerce Reseller
Receive the MySQL schema (220 tables), 7 days of binlog samples, and the data team's freshness + correctness requirements. Design the CDC pipeline: Debezium for MySQL binlog cap…
- Change Data Capture
- Debezium
- Kafka
Big Data and Data-Intensive Systems - CodeAdvancedNew
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 - CodeAdvancedNew
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 - CodeAdvancedNew
Build a User-Space File System with FUSE for a Storage Startup
Build a FUSE driver (your choice of Rust + fuser crate or Go + bazil/fuse) that proxies POSIX operations to the startup's existing S3-compatible REST API (mock provided). Suppor…
- File Systems
- Fuse
- Rust Programming
Operating Systems - CodeAdvancedNew
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
Software Testing and Quality Assurance - CodeAdvancedNew
Multi-Tenant SaaS Backend with Postgres Row Security
Design the multi-tenant schema: shared tables with a tenant_id column, indexed appropriately. Write a forward + backward migration (using Drizzle or Prisma). Implement Postgres …
- Multi Tenant Architecture
- Postgresql
- Row Level Security
Web Application Development - CodeAdvancedNew
Multi-Tenant Schema Migration for a Series-B HR SaaS
Design a 4-phase migration: (1) add new columns + tables, dual-write on every workflow mutation, (2) backfill 3.4 TB in chunks of around 50k rows per minute with throttling and …
- Multi Tenant Architecture
- Schema Migration
- Dual Write
Engineering Software as a Service - CodeAdvancedNew
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 - CodeAdvancedNew
Implement a Persistent Immutable List for a Collaborative-Editing Startup
Implement in Python (or TypeScript / Kotlin). Build a persistent immutable list with operations: get, set, append, pop, slice, concat. Use structural sharing (32-way vector trie…
- Data Abstraction
- Recursion
- Persistent Data Structures
Programming Abstractions - CodeAdvancedNew
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 - CodeAdvancedNew
Forecasting Model for Online-Game Daily Active Users
Build forecasts at 14-day horizon per region using: (1) classical baseline — SARIMA or Prophet; (2) ML approach — gradient-boosted regressor on engineered features (day-of-week,…
- Supervised Learning
- Time Series Forecasting
- Python Programming
Machine Learning (CS Elective) - CodeAdvancedNew
Build a GraphQL Federation Schema for an E-Commerce Platform
Receive the existing 22 REST endpoints' OpenAPI specs and a list of 5 priority subgraphs. Design a federated GraphQL schema using Apollo Federation v2 directives (@key, @externa…
- Graphql
- Graphql Federation
- Api Design
API Design and GraphQL
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 roles you may want to explore
Browse all roles →Software Engineering
Frontend Engineer
Software Engineering
Full-Stack Engineer
Software Engineering
Mobile Engineer
Software Engineering
Software Engineer
US$163,883
Builds the software products and platforms a company runs on — ships code, debugs production, mentors junior engineers, and pushes back on bad specs.
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.
Skills and disciplines shown on this page are derived from the Ewance challenge catalogue. When the median annual salary is available for this role via Adzuna, it will be shown above with the sample size and country.



















































































