Niels Falk

Software craftsman, Kotlin- and Java specialist

I'm an intrinsic motivated Software-engineer, driven by a passion for researching technology and producing value with code.

My determination to constantly evolve my skills are also reflected in my other hobbies like kitesurfing, unicycling and playing the guitar.

 

My understanding of well engineered Software

Code usually is read more often than written. To save time and money it is essential to write code simple, clean, precise and efficient. Patterns can help, but common sense should always be valued higher than dogmas. Small commits, fast iteration, CI/CD and fast feedback help to find wrong paths as soon as possible.

I'm totally into the principals of Software-Craftmenship and Extreme Programming like CI, TDD, ATDD and Pairprogramming. The right amount and scope of tests enable refactorings without bringing functionality at risk. Integrationtest are a must-have. Performance requirements should already be verified in early project stages with measurements.

Opensource

Some of my playground projects worth mentioning.

Given When Then

A JUnit based TestDSl. So the beautiful and highly expressive specification language of the Spockframework is available in Kotlin IntelliJ screenshot of a givenWhenThen Specification Get more insides on GitHub

ktor-swagger

ktor-swagger is a library that allowed you to integrate the swaggerUi with ktor applications.

So slightly extended Ktor-Server-Code like this ... Ktor server app with ktor-swagger extension

Generates the SwaggerUi SwaggerUi

Unfortunately it is no longer maintained. Feel free to continue on GitHub. But today I'd recommend to write the swagger.yaml first and generate server and clients with openapi-generator-cli. Or get rid of Swagger and use Kotlin Multiplatform to share code between Server and Clients instead.

relay-pi

relay-pi was a fun project to control my lamps with kotlin and a raspberry py. lamps controlled by a raspberry py

Experience

I have experience with the following technologies:

Kotlin, Java, Ktor, Kotlin Coroutines, Spring Boot, Spring Integration, Webflux, Jakarta EE / Java EE, CDI (Weld), EJB, JSF, JMS, BouncyCastle, Swagger, Kotlin Serialization, Jackson, gson, Kmongo, Morphia, Spring Data, JPA, EclipseLink, Hibernate, Liquibase, TeamCity, Gitlab pipelines, Bamboo, Jenkins, IntelliJ, Docker, Tomcat, Jetty, Netty, Glassfish, Payara, jBoss wildfy, docToolchain, Prometheus, Grafana, MongoDb, PostgreSQL, Oracle DB, AWS, S3, Elastic Beanstalk, SNS, SQS, JUnit, kotest, Spock, Geb, Testcontainers, Cucumber, Wiremock, REST Assured, Strikt, Kluent, Mockk, Mockito, HTML, javascript, bootstrap, jQuery, Android, Mapbox, Espresso, Robolectric, Flutter

The level of experience and topicality are varied. Please contact me for details or for my full profile.

Contakt

Niels Falk

Email: niels@nielsfalk.de
Mobil: +49 1577 7755957

Heidefalterweg 10
12683 Berlin Germany

GitHub
Xing
LinkedIn


impressum