Software Engineer & Software Architect

Building systems that evolve without entropy | Event-Driven Architecture | Business Workflow Development | AWS Cloud practitioner

Building Software That Evolves Without Entropy

I design and build software systems that continue to evolve and improve without drifting into entropy, collapsing under complexity, or slowing to a crawl. Through event-driven architecture, domain-driven design, and clean architectural principles, I create systems that remain flexible, robust, maintainable, testable, and scalable as your business grows.
  • Event-Driven & Event-Centric Architecture
    Leveraging event-driven architecture, CQRS, and event sourcing to build systems that are naturally decoupled, scalable, and maintainable. Events become the source of truth, enabling systems to evolve independently while maintaining consistency.
  • Business-Driven, Not Data-Driven
    Every architectural decision serves a clear business purpose. While data is readily available for analytics and insights, business objectives drive the architecture. Technology serves the business, not the other way around.
  • Clean Architecture & Hexagonal Design
    Implementing clean architecture, hexagonal architecture, and thin application layers to create systems with clear boundaries. This approach ensures that business logic remains independent of infrastructure, making systems testable, maintainable, and adaptable.
Building Software That [Evolves Without Entropy]{.text-primary}

Architectural Techniques & Practices

I leverage a comprehensive set of techniques and concepts to build flexible, robust, maintainable, testable, and scalable web applications. Each practice serves a specific purpose in creating systems that evolve gracefully.
  • Event-Driven Architecture
    Event-driven architecture, CQRS (Command Query Responsibility Segregation), Event Sourcing, and event-centric design patterns. Building systems where events are first-class citizens, enabling natural decoupling and scalability.
  • Domain-Driven Design
    Domain-Driven Design (DDD) with bounded contexts, aggregates, and ubiquitous language. Aligning software architecture with business domains to create systems that reflect real-world complexity.
  • Clean & Hexagonal Architecture
    Clean Architecture, Hexagonal Architecture (Ports & Adapters), and thin application layers. Creating clear boundaries between business logic and infrastructure, ensuring testability and maintainability.
  • SOLID Principles & Design
    SOLID principles, design patterns, and architectural patterns. Writing code that is maintainable, extensible, and follows best practices for long-term success.
  • Test & Behavior-Driven Development
    Test-Driven Development (TDD) and Behavior-Driven Development (BDD). Writing tests first to drive design and ensure quality, with a focus on behavior specification and acceptance criteria.
  • AWS Cloud & DevOps
    Strong AWS cloud experience with a focus on cost efficiency. CI/CD pipelines, Infrastructure as Code with AWS CDK and OpenTofu, automation, containerization, serverless architectures, and Site Reliability Engineering (SRE) practices.

Professional Experience

Building and leading technical initiatives with a focus on sustainable architecture, cost efficiency, and business-driven development.
    Software Engineer

    Software Engineer

    Currently working as a Software Engineer at the largest energy retailer in the Netherlands. Leading cloud infrastructure initiatives on AWS with a strong focus on cost efficiency. Implementing CI/CD pipelines, infrastructure automation with AWS CDK and OpenTofu, and ensuring systems remain scalable and maintainable as the business grows.

    Software Architect

    Software Architect

    Designing and implementing event-driven architectures using CQRS, event sourcing, and domain-driven design. Creating systems that evolve without entropy through clean architecture, hexagonal design, and thin application layers. Ensuring all architectural decisions are business-driven while leveraging data for insights.

    Technical Leadership

    Technical Leadership

    Leading teams in adopting TDD, BDD, SOLID principles, and clean code practices. Building systems that are testable, maintainable, and scalable. Focusing on automation, continuous improvement, and ensuring software continues to evolve without collapsing under complexity.

Featured Projects & Initiatives

Projects that demonstrate my approach to building systems that evolve gracefully, leveraging event-driven architecture, clean design, and cost-efficient cloud solutions.
    Event-Driven Platform with Hexagonal Architecture

    Event-Driven Platform with Hexagonal Architecture

    Designed and implemented an event-driven microservices platform for energy retail operations using CQRS and Event Sourcing, built on hexagonal architecture (ports & adapters) with a thin application layer. The system processes millions of events daily with high reliability and low latency. The framework enforces clean boundaries between business logic and infrastructure, making systems highly testable and maintainable. Used TDD and BDD throughout development, ensuring the system continues to evolve without entropy as business requirements change.

    Event SourcingCQRSDomain-Driven DesignHexagonal ArchitectureAWSOpenTofuTypeScriptApache KafkaTDDBDDSOLID Principles
    Cost-Optimized AWS Infrastructure

    Cost-Optimized AWS Infrastructure

    Led the design and implementation of a cost-efficient cloud infrastructure on AWS, reducing operational costs by over 40% while improving scalability and reliability. Implemented Infrastructure as Code with AWS CDK and OpenTofu, automated scaling, and serverless architectures where appropriate. The system maintains high performance while keeping costs predictable and manageable.

    AWSAWS CDKOpenTofuServerlessCI/CDCost OptimizationInfrastructure as Code
    Arts and Crafts [open source]{.text-primary .italic}

    Arts and Crafts open source

    Open source: "Arts and Crafts" packages for consistent, modular coding across languages, enabling robust, scalable, and testable codebases. Supports Event-Driven Architecture, Domain-Driven Design, CQRS, Vertical Slices, Event Sourcing, and various testing approaches (e.g., Fakes, Scenario Testing).

    TypeScriptRustEvent-Driven ArchitectureDomain-Driven DesignCQRSEvent SourcingOpen Source

Let's Build Something Great

Interested in building software that evolves without entropy? Looking for a software architect who combines event-driven architecture, clean design, and cost-efficient cloud solutions? Let's discuss how we can create systems that grow with your business.