Let's Build Something That Matters
Partner with a senior software engineer for domain discovery, architecture consulting, legacy modernization, and team enablement. Business-first, pragmatic solutions.
I believe great software starts with understanding the problem, not jumping to solutions. My approach combines domain exploration techniques like Event Storming and Domain-Driven Design with pragmatic engineering to deliver software that truly serves your business.
My Philosophy
Technology is a means to an end, not the goal itself. Before writing any code or choosing any framework, I focus on deeply understanding your business domain, the problems you're solving, and the value you're creating. This business-first mindset leads to solutions that are not only technically sound but also aligned with your strategic goals.
How I Can Help
Domain Discovery & Event Storming
I facilitate workshops that explore your business domain, uncover hidden complexity, and align teams around a shared understanding. Event Storming sessions help identify bounded contexts, domain events, and system boundaries—before any code is written.
Architecture Consulting
Strategic architecture reviews and design sessions. I help you make informed decisions about system boundaries, integration patterns, and modernization paths—always grounded in your business context and constraints.
Legacy Modernization
Safe, incremental strategies for untangling legacy systems. I specialize in identifying seams, decoupling dependencies, and creating migration paths that minimize risk while delivering continuous value. Legacy is not a problem to fix—it's an asset to evolve.
Team Enablement & Workshops
Hands-on workshops on DDD, Clean Architecture, Kotlin, and engineering best practices. I focus on knowledge transfer so your team can own and evolve the solutions independently.
How We Work Together
- Discovery call — Understanding your context, challenges, and goals
- Domain exploration — Event Storming or other collaborative modeling sessions
- Solution design — Architecture and approach tailored to your constraints
- Iterative delivery — Regular check-ins, adjustments, and knowledge sharing
- Handover — Documentation, training, and ensuring your team is self-sufficient
Frequently Asked Questions
What is Event Storming and why do you use it?
Event Storming is a collaborative workshop format for exploring complex business domains. It brings together developers, domain experts, and stakeholders to visualize the flow of events in your system. I use it because it rapidly builds shared understanding, uncovers hidden assumptions, and identifies boundaries—all before writing any code.
Do I need to know DDD to work with you?
Not at all. Domain-Driven Design provides useful concepts and vocabulary, but my goal is to solve your problems, not to impose a methodology. I'll introduce DDD concepts where they add value and keep things pragmatic throughout.
What technologies do you specialize in?
I specialize in Kotlin, Java, and Spring Boot on the JVM. However, I've found that most architectural challenges and business problems are technology-agnostic. The principles of good design, domain modeling, and system decomposition apply regardless of the tech stack.
Can you help with our legacy system?
Absolutely—this is where I thrive. Legacy systems often power core business value, so I approach modernization with respect and care. I'll help you identify safe extraction points, create incremental migration strategies, and ensure the transition is low-risk and value-driven.
Do you work remotely?
Yes, I collaborate with clients across Europe and beyond. I'm based in Poland (CET timezone) and flexible with meeting schedules. For workshops like Event Storming, I can work both remotely (using digital tools like Miro) or on-site, depending on your preference.
What does a typical engagement look like?
It varies based on your needs. It might be a focused 2-day Event Storming workshop, a multi-week architecture review, or ongoing advisory support. We'll define the scope together during our initial conversation, ensuring the engagement delivers clear value.
How do you charge for your services?
I typically work on a day-rate or project basis, depending on the engagement type. Discovery calls are free—let's talk about your situation and I'll provide a transparent proposal with clear deliverables.
Ready to explore your domain?
Let's start with a discovery call to understand your challenges and see how I can help.
Schedule a Call