Skip to main content
Mateusz Miszczak

Case Studies

Case Studies

Selected production areas I worked on across fintech applications.

  1. 01Realtime · Fintech

    Realtime fintech interfaces

    Frontend Engineer
    Partner panel
    Fintech
    PROBLEM

    The internal admin panel lacked a coherent view of customer accounts. Portfolio data, asset prices and transaction history were scattered across separate screens with no way to navigate between levels or initiate trading actions directly from a customer's portfolio.

    APPROACH

    Built a multi-level portfolio view with animated account drawers, asset detail panels showing price and transaction history, and transaction tables with type filtering. Portfolio values, asset prices and table contents are synchronized through WebSockets so the data always reflects the current market state.

    RESULT

    Users can now navigate from a customer's full portfolio down to a specific asset and launch buy or sell flows directly from the asset detail panel, with wallet and asset pre-filled. All data updates in realtime without any manual refresh.

    • React
    • TypeScript
    • Redux Toolkit
    • React Query
    • REST API
    • WebSockets
  2. 02Financial Flows

    Multi-step financial flows

    Frontend Engineer
    Trading
    SEPA
    PROBLEM

    Users needed to execute asset trades and bank withdrawals from within the application. Both flows share surface-level UI patterns but have entirely different business logic, validation rules, data models and backend operation states, making a shared implementation impractical.

    APPROACH

    Designed and built two independent three-step flows: an asset buy/sell trading modal and a bank withdrawal system, each with its own Zod validation schemas, state machine and error handling. Both react to actual backend confirmations through WebSockets rather than just the initial request response.

    RESULT

    Both flows correctly handle edge cases including failed transactions, intermediate pending states and network interruptions, all driven by live WebSocket events. The intentional separation keeps each flow independently maintainable and testable.

    • React
    • TypeScript
    • React Query
    • REST API
    • WebSockets
    • Zod
  3. 03Admin Systems

    Admin systems and client onboarding

    Frontend Engineer
    Admin panel
    Partner portal
    PROBLEM

    Administrative operations required complex multi-step forms with regulatory compliance requirements. Search across large user datasets was generating excessive API calls due to a missing debounce strategy.

    APPROACH

    Implemented the full user account lifecycle, covering status changes, access control, account closure and account access recovery. For client onboarding, built multi-step forms validated with Zod and integrated structured compliance data. Added a 500 ms debounce to the search input to reduce redundant API calls.

    RESULT

    Search debouncing significantly reduced API load during user lookups. Multi-step onboarding forms with Zod validation prevent invalid submissions and provide clear step-level feedback. The full account lifecycle is covered, including edge states like account access recovery.

    • React
    • TypeScript
    • Redux Toolkit
    • REST API
    • WebSockets
    • Zod
  4. 04Tax & Compliance

    Tax management and document flows

    Frontend Engineer
    Tax
    Compliance
    PROBLEM

    Customers needed to view tax history, select tax years and manage tax document requests, but the UI had no mechanism to stay synchronized with backend operation states during multi-step workflows. Submitting a request gave no accurate feedback on whether it had succeeded.

    APPROACH

    Implemented customer tax history views, tax year selection, tax document tables and complete flows for creating and editing requests. Data and UI states are driven by WebSocket responses so every view accurately reflects the current backend operation state throughout the process.

    RESULT

    The tax request flow handles all intermediate states from submission to backend confirmation without a page refresh. WebSocket-driven updates eliminated the lag between user action and UI feedback, giving customers accurate status at every step.

    • React
    • TypeScript
    • Redux Toolkit
    • React Query
    • WebSockets
    • Zod
  5. 05Marketing & CMS

    Multilingual landing pages and CMS-driven websites

    Frontend Engineer
    Next.js
    Strapi
    Turborepo
    SEO
    Analytics
    PROBLEM

    Two multilingual marketing websites needed to be maintained and developed inside a shared Turborepo ecosystem. Both used CMS-managed content, cookie consent, Google Analytics, responsive layouts and a consistent structure across multiple locales. One website had to be built from scratch, while the second needed ongoing development without duplicating shared frontend logic.

    APPROACH

    Built one multilingual Next.js marketing website from scratch and continued developing another existing website within the same Turborepo ecosystem. Worked with CMS-driven content from Strapi, implementing responsive landing sections, subpages, animated layouts and locale-aware frontend rendering. Extracted cookie consent and Google Analytics into a shared Turborepo package consumed by both applications through a single import and configuration object. Focused on clean information architecture, semantic markup, reusable sections, responsive behavior, maintainable components and production-ready implementation.

    RESULT

    Both marketing websites now share a reusable cookie and analytics layer with no duplicated consent logic across the monorepo. One website was delivered from scratch with multiple subpages, animated sections and CMS-managed multilingual content, while the second continues to be extended using the same shared frontend architecture. The setup makes it easier to add new landing sections, update CMS-driven content across locales and keep marketing pages consistent, performant and maintainable.

    • React
    • Next.js
    • TypeScript
    • Strapi CMS
    • Turborepo
    • Tailwind CSS
    • Framer Motion
    • Google Analytics
    • Cookie Consent
    • SEO
    • Responsive UI
Case Studies | Mateusz Miszczak