Skip to content
View sudavz's full-sized avatar
👻
Focusing
👻
Focusing

Block or report sudavz

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
sudavz/README.md

David Suarez

Backend Software Engineer

Designing backend systems, APIs, and data workflows with clean architecture and domain-driven design.



Core Stack

  • Languages: TypeScript, Javascript, Python, Java.
  • Frameworks & Protocols: NestJS, Express, Apollo GraphQL, REST.
  • Databases & Queues: PostgreSQL, Redis, BullMQ, TypeORM, Prisma.
  • Tooling & Infrastructure: Docker, Docker Compose, Linux, Git, Jest.

Engineering Approach

  • Domain-Driven Design: Keeping core business logic isolated from frameworks, databases, and external delivery mechanisms.
  • Clean Architecture: Structuring systems into decoupled, testable layers with strict dependency flow.
  • Event-Driven Architecture: Using asynchronous queues and event streams (Redis, BullMQ) to separate background jobs from request-response cycles.
  • Testing: Verifying system behavior through comprehensive unit, integration, and contract tests before shipping to production.

Philosophy

  • KISS (Keep It Simple): Designing with the minimum architectural complexity required to solve the actual technical problem.
  • YAGNI (You Aren't Gonna Need It): Resisting speculative abstractions, premature patterns, and unneeded infrastructure layers.
  • DRY (Don't Repeat Yourself): Ensuring single sources of truth for business logic without sacrificing module decoupling.
  • Open Source: Prioritizing open standards, standard libraries, and community-driven tooling.

Pinned Loading

  1. criteria criteria Public

    Criteria is a TypeScript library that implements the Criteria pattern to specify, validate, and transport complex search, filtering, and pagination intent across application layers.

    TypeScript 1

  2. conway-s-game-of-life conway-s-game-of-life Public

    Conway's Game of Life simulation in Python and Pygame with generational heatmaps.

    Python

  3. programming-challenges programming-challenges Public

    In this repository you will find my solutions to some programming problems using different programming languages.

    TypeScript 1

  4. antichess-minimax-ai antichess-minimax-ai Public

    This project is an implementation of Suicide Chess, a variation of standard chess, using the Minimax algorithm enhanced with Alpha-Beta pruning.

    Python

  5. huffman-compression-algorithm huffman-compression-algorithm Public

    Python implementation of Huffman coding with text encoding, decoding, binary tree generation, compression metrics, and tests.

    Python

  6. social-network-backend social-network-backend Public

    Social network REST API built with Node.js, Express, and TypeScript using Hexagonal Architecture, native MongoDB, and Redis cache.

    TypeScript