PortfolioSoftware Development

Software Development

Programming-focused tasks: finding and fixing bugs, designing small APIs, writing clean specs, and thinking about edge cases the way a working engineer does.

API Design

Design a small, minimal REST API for a real scenario. Tests resource modelling, scope judgment, and how you handle edge cases.

BeginnerIntermediateAdvanced
Open topic

Asynchronous Processing

Manage long-running tasks and message queues. Tests event loops, worker threads, and distributed task queues (like RabbitMQ or BullMQ).

BeginnerIntermediateAdvanced
Open topic

Authentication & Authorization

Secure user identities and permissions. Tests JWT lifecycles, OAuth flows, and Role-Based Access Control (RBAC).

BeginnerIntermediateAdvanced
Open topic

Backend Performance Optimization

Speed up slow applications. Tests profiling, caching strategies (Redis), and mitigating N+1 query problems.

BeginnerIntermediateAdvanced
Open topic

CI/CD Pipeline Setup

Design automated deployment workflows. Tests DevOps fundamentals, multi-environment setups, and zero-downtime deployment strategies.

BeginnerIntermediateAdvanced
Open topic

Code Refactoring

Modernize and clean up legacy codebases. Tests SOLID principles, identifying code smells, and safely migrating logic.

BeginnerIntermediateAdvanced
Open topic

Containerization & Orchestration

Deploy applications reliably at scale. Tests Docker best practices, multi-container Compose setups, and Kubernetes fundamentals.

BeginnerIntermediateAdvanced
Open topic

Database Modeling

Design robust relational schemas. Tests normalization, understanding of indexes, and planning for complex data relationships.

BeginnerIntermediateAdvanced
Open topic

Debug & Fix

Diagnose a real-looking bug, fix it, and explain the root cause in plain English. Tests debugging, code craft, and technical communication.

BeginnerIntermediateAdvanced
Open topic

Quality Assurance & Bug Reporting

Think like a tester, not a developer. Tests manual test case design, structured bug reporting, exploratory test charters, regression planning, and the bridge from manual to automated testing.

BeginnerIntermediateAdvanced
Open topic