Skip to content

About

I am a freelance full-stack software engineer with more than 15 years of professional experience working for international e-commerce companies.

As a solution and application architect, I help clients design, build and maintain their B2B and B2C software systems.

I am adept at using a variety of tools, methodologies, and programming languages. I strongly believe in the original meaning of agile development as expressed in the Agile Manifesto.

I regularly explain, discuss and implement various software designs and software architectures with my clients' team and industry's community members.

I love to share all my knowledge and experience. This is why I also love collaborating with students as a university guest lecturer and watching them grow.

The conception and rapid development of web applications in agile teams are my passion. I love to work with current technologies within an environment of transparency and open communication.

I consider myself to be thoughtful, communicative, pragmatic and target-oriented.


So if you need assistance and a helping hand in developing solid, customer-focused solutions, I'd love to learn more about you and your project! Write to me at mail@jonas-havers.de

Technology Stack

Although I have worked with a variety of technologies in the past, some remain my and my client's favorite tools. I am a huge fan of choosing the right technology for the right job.

Most often, these include the following technologies:

  • Java or Kotlin with the latest Spring Boot version in the backend
  • JavaScript – either current vanilla JS, Vue.js or htmx / Alpine.js – and CSS for the frontend
  • AWS as a cloud service provider
  • MongoDB (DynamoDB/ 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 is usually based on frameworks like Spring Boot (sometimes with Spring Cloud) and common libraries like JUnit Jupiter, WireMock, Testcontainers, ArchUnit, Jacoco, Swagger, Cucumber, RestAssured, Resilience4J, Lombok etc.

My JavaScript backend development stack is based on Node.js and Express with additional packages. The frontends I develop are either built with plain vanilla JavaScript or based on Vue.js, using common tools like Vite, Jest, Cypress, ESLint, Prettier - but it all depends on the requirements of the project.

For CSS, I like to use the utility-first framework Tailwind CSS, but I'm also comfortable with plain CSS or SASS/ SCSS/ LESS (e.g. with BEM / Atomic CSS).

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

Engineering

I believe that following agile principles, independent teams and continuous delivery is the best way to build software products.

As a freelancer, I am regularly a temporary member of one of my clients' software development teams. I work closely together with stakeholders and team members on a daily basis and full-time remote.

I value thoughtful and clean solutions as well as sufficient, pragmatic and team-focused documentation.

Learning

I consider myself a continuous learner. After my daily work for clients, I enjoy reading technical literature and news, listening to audiobooks and podcasts, or doing video courses.

I like to educate myself in topics such as software development, learning and teaching, human psychology and personal development.

In the past, I mainly studied broadly, but now I tend to go into more detail and learn more in relation to current issues and challenges for my work.

For me, it is a matter of course to know all the current developments, tools and trends in our industry.

Teaching

Since 2012, I have been a regular freelance academic trainer at the IBS IT & Business School Oldenburg. Honestly, that sounds longer to me than it feels.

I mentor, guide, support and have fun with students in three different semesters of their bachelor's degree program in business informatics, which I also completed there in 2010.

I want my teaching sessions to be an interactive and collaborative process at eye-level.

In the first and second semesters there are only three appointments of 3 hours each. In the fourth semester, I conduct 36 hours of instruction, practical training and professional mentoring.

Software Development with Java

In the freshman and sophomore semester I teach and mentor students how to use and handle Java programming. That covers procedural, imperative, functional and object-oriented programming.

Web Applications with JavaScript

In the fourth semester, I teach students a JavaScript-based technology stack from scratch, to which I make annual changes. We form six to seven project teams consisting of three to four people with different project roles.

In addition to HTTP and REST as basics for communication in our client-server architecture, we use Git as a file version management system for distributed collaboration. VS Code works as our code editor of choice.

Apart from the basics, I teach advanced fundamentals for the concrete implementation of various software projects such as a community forum, a survey management system, a course booking platform and others.

The commitment and team spirit with which the students give free rein to their creativity is truly amazing! I have seen projects come out of the ground in two to three months that were better and more modern than solutions on the current market!

Until today, the stack consists of vanilla JavaScript and Tailwind CSS on the client side, Node.js with Express, Pug, Mongoose on the server side, MongoDB Atlas as a managed database cluster, and the PaaS providers Heroku or Render as our continuous deployment and operating platform.

Music

I love punk rock with its sub-genres like pop-punk, emo-punk etc. There are a lot of great bands to discover, although I tend to gravitate towards the more famous ones.

In mid-2021, I rediscovered my passion for making music after a five years break. I am a singer. I used to also play bass guitar, but now I focus.


That's it. Reach me on any of the social networks or by email. I would like to hear from you!

– Jonas (mail@jonas-havers.de)