Skip to content

About

I am a freelance full-stack software engineer and software architect with over 15 years of experience in international e-commerce. I design, build and maintain B2B and B2C software systems with care, speed, and effectiveness.

Passionate about rapidly engineering web applications within agile teams, I am proficient in a variety of tools, methodologies, and programming languages. I regularly explain, discuss, and implement software designs and software architectures with clients' teams and the software development community to ensure their situative effectiveness.

As a freelancer, I seamlessly integrate into my clients' development teams, collaborating closely with stakeholders and team members remotely on a full-time basis. I foster transparency, flexibility and open communication, advocating for the core values and the original meaning of agile development as outlined in the Agile Manifesto.

I am thoughtful, communicative, pragmatic and target-oriented.

If you need a reliable partner for customer-focused solutions, let’s connect!

Drop a mail

Technology Stack

While I've worked with various technologies, some have become favorites for both my clients and me. The technologies I most often use include:

  • Either Java/ Kotlin with the latest Spring Boot version or JavaScript/ TypeScript with Hono/ Astro in the backend
  • JavaScript/ TypeScript (either modern vanilla JS, htmx/ Alpine.js or React/ Vue.js) for the frontend
  • CSS (preferably with TailwindCSS) for the modern, sleek look
  • AWS (managed by Terraform or the AWS SDK) as a cloud service provider
  • MongoDB (DocumentDB/ MongoDB Atlas) or PostgreSQL (RDS) for data persistence
  • Kafka for distributed event-driven applications

In the past, I've also worked with Scala, Groovy, TypeScript, React, Angular etc.

My Java/ JVM development stack includes frameworks like Spring Boot (sometimes with Spring Cloud) and common libraries such as JUnit Jupiter, WireMock, Testcontainers, ArchUnit, Jacoco, Swagger, Cucumber, RestAssured, Resilience4J, Lombok, and more.

For JavaScript backend development, I use Bun/ Node.js with Astro/ Hono/ Express as the baseline. My frontends are usually built with plain JavaScript or React/ Vue.js, utilizing tools like Vite, Vitest/ Jest, Playwright/ Cypress, ESLint, Prettier, depending on project requirements.

For CSS, I prefer either just modern CSS or Tailwind CSS.

My IDEs and editors of choice are IntelliJ Idea and VSCode.

Engineering

Software engineering is a discipline of empirical and scientific discovery, learning, and design. We practice iteration, feedback, incrementalism, experimentation, and empiricism.

Therefore, I believe that following agile principles, empowering independent teams, and embracing continuous delivery are the best approaches for building software products.

To manage the complexity of evolving systems, we pursue modularity, cohesion, separation of concerns, abstraction, and loose coupling.

Thus, I value thoughtful, clean software solutions and pragmatic documentation to achieve successful outcomes in software engineering.

Learning

I am a continuous learner. After my daily work for clients, I immerse myself technical literature and news, listen to audio books and podcasts, or take video courses.

I focus on software development, learning and teaching methodologies, human psychology, and personal development.

In the past, I studied broadly, but now I delve deeper into current issues and challenges relevant to my work.

Staying updated with the latest developments, tools, and trends in our industry is second nature to me.

Teaching

Since 2012, I have been a regular freelance academic trainer at the IBS IT & Business School Oldenburg. This role has allowed me to mentor and support students across three semesters of their business informatics bachelor's degree program, which I also completed there in 2010.

I strive to make my teaching sessions interactive and collaborative, fostering an environment of mutual learning. In the first and second semesters, I conduct three 3-hour sessions each. In the fourth semester, I lead 36 hours of instruction, practical training, and professional mentoring.

Software Development with Java

From 2012 until 2024, I teached and mentored students in Java programming, covering procedural, imperative, functional, and object-oriented programming in their freshman and sophomore semesters.

Web Applications with JavaScript

In the fourth semester, I teach students a JavaScript-based technology stack from scratch, to which I make annual changes. Students form project teams of three to four members, each assuming different roles.

We cover HTTP and REST for client-server communication, use Git for version control, and VS Code as our preferred code editor.

Beyond the basics, I introduce advanced fundamentals and concepts for building projects like a community forum, a survey management system, and a course booking platform. The creativity and teamwork students exhibit is amazing, often surpassing market solutions within two to three months.

By 2025, the stack included vanilla JavaScript and Tailwind CSS on the client side, Node.js with Express, Pug, and Mongoose on the server side, MongoDB Atlas for the managed database cluster, and Heroku or Render for deployment.

Now it's JavaScript on Bun with Astro, HTMX and MongoDB, hosted on Railway.

Music

To end on a personal note, I'd like to share another passion of mine. I love punk rock and its sub-genres like pop-punk and emo-punk as well as nu metal. While there are many great bands to discover, I often find myself drawn to the more famous ones.

In mid-2021, I rediscovered my passion for making music after a five-year break. I am a singer and used to play bass guitar, but now I focus solely on singing. In 2023, I founded the band Tell All Your Friends as their lead singer.


That's it! Feel free to reach out on social media or via email. I’d love to hear from you!

– Jonas