Hi, I’m Yves
I am currently supporting the German administration with digitalization as a senior full-stack software developer at SINC. Previously I led software development teams at Pamyra and Spreadshirt.
Tech stack
Greenfield, utopian product
What technologies would I use if I were to start a greenfield product today?
Backend
- Monolith first, then Self-Contained Systems as baseline architecture
- Kotlin, my favorite JVM language
- Dropwizard, Spring Boot or Micronaut as service / application framework
- Jdbi or jOOQ as data access layer on top of JDBC
- Liquibase for database schema management
- PostgreSQL as database
- Elasticsearch, if (fulltext) search is actually required
- kafka or RabbitMQ as message broker
- Keycloak for identity and access management
- Testcontainers as essential tool for integration tests
- Ruby for (one-time) scripts and tooling
Frontend
- SSR as default, SPA if required
- HUGO or Jekyll for static pages (Jamstack approach looks promising)
- TypeScript plus React or Svelte for (dynamic) applications
- SCSS, styled components as default (BEM as fallback)
- strapi as (headless) CMS
- playwright for integration/system tests
Tooling
- Ubuntu or any other Linux which I installed myself on the laptop I’ve selected myself
- IntelliJ IDEA
- gitlab as code hosting and CI platform
- Grafana and Prometheus for metrics and graphs
- Airbyte, dbt and Metabase as a baseline business intelligence/reporting stack
- OpenSearch for logs
- HAProxy for load balancing and routing
- Fastly or Cloudflare as CDNs
- git as distributed version control with a git-flow or GitHub Flow approach
- Postman
Things I am productive with
We are not living in a perfect world. I would be absolutely fine if the stack includes one or more of the following technologies or frameworks. Depending on the problem, some of these might also be my preferred solution.
Stuff, I’d like to avoid
Learned my lessons, every one of these technologies/frameworks actually deserve an article on why I would like to avoid it.
- Project Lombok
- Hibernate ORM, probably most of JPA
- Vaadin or GWT
- I have not yet seen an application which was developed using Angular with proper state management
- Java below version 17
- Eclipse
- Microsoft Windows