About Me

I'm a full-stack software engineer specializing in enterprise Java development, AWS cloud architecture, and AI integration. Based in Munich, building sophisticated systems that solve real-world problems.

Professional Journey

My background is unconventional. I spent several years in digital agencies and creative roles—project management, conceptual development, and client-facing work. This taught me something crucial: great engineering isn't just about technical excellence. It's about understanding business problems, making pragmatic decisions, and shipping value.

A few years ago, I made the transition to serious software development. Since then, I've built deep expertise in Java/Spring Boot, Test-Driven Development, clean architecture patterns, and AWS services. But that hybrid background matters—it means I think about problems from both engineering and business perspectives.

Today, my sweet spot is taking complex business problems and architecting sophisticated technical solutions. Whether it's AI chatbots, fraud detection systems, or biometric authentication—I enjoy the full spectrum: from initial architecture decisions to deployment and optimization.

What I Care About

  • Code Quality: TDD, clean architecture, readable code. Technical debt compounds; I minimize it.
  • Testing: 85%+ coverage is standard. I test behavior, not implementation details.
  • Understanding Tools: I don't just use frameworks. I understand why they exist and when to use alternatives.
  • Problem-First Thinking: The best code solves real problems. Pretty architecture solving imaginary problems is waste.
  • Continuous Learning: AWS services, AI models, security patterns—the tech landscape changes. I stay current.

Technical Expertise

Languages & Frameworks

  • Java 17+: Core language expertise
  • Spring Boot: Building scalable web applications
  • Spring Security: Authentication & authorization patterns
  • Spring Data: Database integration with Hibernate/JPA
  • TypeScript: CDK, modern web development

AWS Services

  • EC2, App Runner: Application deployment
  • S3, CloudFront: Static hosting & CDN
  • RDS: Managed PostgreSQL databases
  • Bedrock, Textract, Rekognition: AI services
  • Lambda, API Gateway: Serverless patterns

Databases & Data

  • PostgreSQL: Relational database design
  • Hibernate ORM: Object-relational mapping
  • SQL: Complex queries, optimization
  • Data modeling: Schema design for scalability

DevOps & Tools

  • Docker: Containerization & Docker Compose
  • AWS CDK: Infrastructure as Code (TypeScript)
  • Git: Version control & branching strategies
  • CI/CD: GitHub Actions, automated testing
  • Monitoring: CloudWatch, structured logging

Certifications

  • AWS Certified Solutions Architect: Associate level
  • AWS Certified Developer: Associate level
  • AWS Certified SysOps Administrator: Associate level

My Development Philosophy

Test-Driven Development

I write tests before code. This isn't dogmatism—it's pragmatism. Tests are my safety net for refactoring and my documentation for future developers.

Clean Architecture

Systems designed with clear separation of concerns. Business logic independent from frameworks. Easy to test, easy to understand, easy to modify.

Pragmatic Over Perfect

The best code is code that's shipped. I make conscious trade-offs between perfection and delivery. Sometimes 80% is the right answer.

Learning from Mistakes

Every archived project (like FaceAuth) taught me something valuable. I share these learnings openly. Growth comes from understanding what didn't work.

Beyond Code

Languages: I'm multilingual—German, English, French, Vietnamese. Language learning mirrors programming in interesting ways. Both require pattern recognition and consistent practice.

Writing: I believe in explaining technical concepts clearly. If you can't explain it simply, you don't understand it deeply enough. This website is part of that philosophy.

Problem-Solving: Whether technical or business challenges, I enjoy the puzzle. Debugging a database query is the same satisfaction as solving a design problem—finding the root cause and eliminating it.

Let's Connect

Interested in discussing enterprise architecture, AWS strategies, or AI integration challenges?