Toolbox
Introduction
My main development language is Java, but I also work sometimes with C# and rarely with C++(Qt).
If it comes to frameworks I prefer Spring over Java Enterprise Edition, because it is lightweight and implements new trends very fast. This is also my experience after implementing around 20 Spring (also Spring Boot) applications and two huge JEE applications.
I’m currently looking into Kotlin as language and also in connection with Spring Boot 2 for server side development.
Go to the Curriculum Vitae page if you want to see qualifications/jobs/education.
Specific knowledge in following domains
- Affiliate networks
- Digital Signage - software solutions for installations with a few thousand devices
- E-commerce - development of custom software solutions
- Insurance companies - development of custom software solutions
- Payment providers / APIs
General
- RESTful web services
- HTML - Basic
- CSS - Basic
- JavaScript - Basic
- XML
- JSON
- SQL
- Web services
Java Standards
- Java SE 8/9
- Java EE 6 with EJB 3
- JSF 2.2 with Primefaces
- JPA 2.1
- JAX-RS - RESTful web services
- JAX-WS - SOAP web services
- and most likely a few others we use unknowingly
Spring
- Spring Framework
- Spring Boot
- Spring Data JPA
- Spring Security
- Spring Social
- Spring Social Facebook
- Spring MVC
- Spring + Thymeleaf
Testing
- JUnit 4/5 – JUnit is a simple framework to write repeatable tests
- TestNG - Also a testing framework for unit-, functional-, end-to-end-, integration-testing aso.
- Mockito – Mocking framework for unit tests in Java
- AssertJ – Fluent assertions for Java
- REST-assured – A framework for testing REST APIs and validate their responses
Build tools
- Gradle - enables building of applications of multiples types and languages
- Maven - managed by the Apache Foundation
Databases
- PostgreSQL – A open source object-relational database system. (My preferred DB)
- MySQL - Also an open source database which is easy to use
- mongoDB - NoSQL database for data where not all aspects of ACID are needed
Servers
- Nginx - used for delivery of static content and as a reverse proxy for Java applications
- Tomcat - for deployment of Java applications, also as embedded servlet container
- Undertow - as embedded servlet container, faster than Tomcat and with lower footprint
- JBoss - used for Java EE applications
Cloud
- MongoDB Atlas - Automation of clusters/users/databases/security setup and VPC peering with AWS infrastructure by API
- Automatic setup of AWS infrastructure with CloudFormation and tools like autostacker24 (Infrastructure As Code)
- Planning and setup of the following AWS infrastructure
- AWS Elastic Load Balancer (ELB)
- AWS Elastic Compute 2 (EC2)
- AWS Relational Database Service (RDS)
- AWS Simple Storage Service (S3)
- AWS Elastic Beanstalk (EB)
- AWS Route 53
Portal software
- Liferay 7 GA1/GA2/GA3, Web-Services with OSGI, Manipulation
Project management
- Scrum
- Kanban
- Atlassian Jira
- Atlassian Conflunece