Khaled Souf

Khaled Souf

CTO & co-founder @ Togethrust (regulated fintech) | Fractional CTO for Fintech | 18+ years, 5 countries | Paris

Paris, France

Actions

CTO and co-founder of Togethrust, a French-regulated fintech digitizing savings circles for diaspora communities. I also help fintech startups and banks ship better software, faster, as a Fractional CTO 18+ years across France, Switzerland, Canada, UAE and Tunisia. Ex-BNP Paribas, Société Générale, Lightspeed. Speaking: DDD, TDD, legacy code, engineering leadership, AI-assisted development.

Area of Expertise

  • Information & Communications Technology

Topics

  • computers technology agile programming
  • Automation Technology
  • Building tech team
  • Developer Technologies

How DDD Context Mapping patterns make us more autonomous

(This is a hands-on lab with limited capacity based on Java & TypeScript)

Everyone of us has already worked on a new app connected to a legacy app and encountered challenging ways to preserve the new app autonomy.

The Workshop is a Refactoring Kata that tries to resolve this problem by using some DDD Strategic Pattern and OOP.

We work on a new app (LMBF) which is dependent on an old app (Shared Objects).
The LMBF app is Downstream of the old app.
The LMBF app depends on the Shared Objects app and we can not modify it.
So, The LMBF app is polluted by the Shared Objects app.
The aim of this Kata is to get freedom back to the LMBF app.

We start by isolating the logic of the Shared Objects app (ACL Pattern) and at some point we discover that another team is working on another app (Other App) which depends on the Shared Objects app.
In a second time, we discover that they share some logic in how they call the Shared Objects app and that’s where we introduce the Open Host Service pattern.

We will also talk about other Strategic Patterns on DDD :
- Customer/Supplier
- Separate Way
- ...

DDD concepts to the rescue of Naming

Naming is one of the hardest things to do when coding. It's a team activity and helps us to make the code more readable and comprehensible. When you try to make code readable there are some existing rules but are they compatible with DDD ?

DDD and Naming share a common goal of helping communication between team members. In this Talk we will explain some concepts like Bounded Context, Supple Design and Naming as a Process (@arlobelshee) to achieve this goal.

Microservices: What I Wish I Had Known

Everyone talks about microservices' benefits. Almost nobody warns you about the side effects. This talk covers the unknown costs of microservices architecture through real experiences from failed and successful implementations: distributed data headaches, operational overhead, team topology mismatches, and the monolith you should sometimes keep. You'll leave knowing when to embrace microservices and when to run away.

45 min talk. Delivered at Alpes Craft 2023 (Grenoble, France). Available in French and English. Target audience: intermediate developers, architects, tech leads.

Event Storming to the Rescue of Legacy Code

Legacy code's biggest problem isn't the code. It's the lost business knowledge buried inside it. In this session, we use Event Storming to extract that knowledge and map the domain before touching a single line. You'll learn how to run a session with domain experts and developers, identify bounded contexts hiding in the monolith, and turn the resulting map into a safe, prioritized refactoring plan.

45 min talk. Delivered at multiple conferences. Available in French and English. Target audience: intermediate developers and architects working with legacy systems.

Legacy Code: First Aid Kit

A hands-on workshop of practical techniques to work safely with code that has no tests and no documentation. We cover characterization tests to pin down current behavior, finding seams, and dependency-breaking techniques to make untestable code testable the essential toolkit before any refactoring. Participants leave with techniques they can apply to their own codebase the next morning.

Hands-on workshop, half day to 1 day. Delivered at Code Thursday (Switzerland). Requires laptops with a working dev environment. Available in French and English. All levels.

GenAI & Coding Tools

AI coding tools are changing development workflows but which ones actually help, and how do you integrate them without losing engineering discipline? This session surveys the current landscape of AI-assisted development, then goes live: building a GenAI chatbot trained on custom data, demonstrated end to end.

Meetup talk with live demo. Delivered at Code Thursday Sion 2024 (with 56K.Cloud & AWS). Requires internet connection for live demo. Available in French and English. All levels.

Event Storming Workshop: Collaborative Domain Discovery

A full-day facilitated workshop where developers and domain experts build a shared understanding of the business domain with sticky notes, not diagrams. We surface domain events, commands, aggregates, and the conflicts and hotspots nobody talks about in meetings. The output: a shared domain model, candidate bounded contexts, and a common language between business and tech.

1-day workshop. Requires a large wall and sticky notes (or a Miro board for remote). Works best with a mix of domain experts and developers, 8–20 participants. Available in French and English. All levels.

Domain-Driven Design Europe 2022 Sessionize Event

June 2022 Amsterdam, The Netherlands

Khaled Souf

CTO & co-founder @ Togethrust (regulated fintech) | Fractional CTO for Fintech | 18+ years, 5 countries | Paris

Paris, France

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top