Professional Experience

Technical Coach

Rush Street Interactive

Jan 2022 - Present
Remote

I work with teams to help them become more agile, with a particular focus on the technical aspects. I teach and mentor skills like Test-Driven Development, Refactoring and Iterative & Incremental Design. I help teams get control of Technical Debt and write better automated tests.

Skills: Pair Programming, Code Refactoring, Test-Driven Development, Clean Coding

Senior Java Developer

Multilogin

Mar 2021 - Dec 2021
Remote

Implementing what's needed, from Bitbucket pipelines and GitHub actions to Java in desktop clients and microservices in the cloud: Java 11, Spring Boot, Micronaut, AWS S3, MySQL, Testcontainers, LocalStack.

Skills: Pair Programming, Code Refactoring, Test-Driven Development, Clean Coding

Software Engineer

Proekspert AS

Nov 2017 - Feb 2021
Tallinn, Estonia

Implementing Spring Boot & Vert.x based microservices: Java 11, deployed to Kubernetes as backend for a mobile application together with my mentee. Supporting a team with a Spring monolith: WildFly, Liquibase, SOAP, JSP. Promoting technical excellence & facilitating weekly learning sessions, teaching at Proekspert summer school.

Technologies: Java 11, Spring, Spring Boot, Vert.x, SOAP, REST, OracleDB, WildFly, Docker, ELK, Grafana, Swagger, Jenkins

Skills: Pair Programming, Code Refactoring, Test-Driven Development, Clean Coding

Software Engineer

Fortumo

Feb 2015 - Oct 2017
Tallinn, Estonia

Implementing microservices for mobile payment systems on top of Java & AWS. Leading internal training activities (clean code, automated testing).

Technologies: Java 8, microservices, RabbitMQ, PostgreSQL, Amazon RDS, Jetty, AWS EC2, AWS Lambda, ELK, TeamCity, Node.js, DynamoDB

Skills: Pair Programming, Code Refactoring

Android Developer

Fortumo

Jun 2013 - Feb 2015
Tallinn, Estonia

Android application development for mobile payment solutions.

Open Source Contributions

ApprovalTests.Java

Co-maintainer

May 2020 - Present
Project Repository

Co-maintaining the Java implementation of ApprovalTests, a testing library that simplifies the assertion of complex data structures by comparing against approved reference files.

Education

  • Master of Science (M.Sc.), Business Informatics, University of Mannheim
    2009 - 2013
  • Bachelor of Science (B.Sc.), Business Informatics, University of Mannheim
    2006 - 2009

Technical Skills

  • Languages: Java, JavaScript, Node.js
  • Frameworks: Spring, Spring Boot, Vert.x, Micronaut
  • Cloud & Infrastructure: AWS (EC2, Lambda, S3, RDS), Kubernetes, Docker
  • Databases: PostgreSQL, MySQL, OracleDB, DynamoDB
  • Tools & Practices: Test-Driven Development, Refactoring, Clean Code, Pair Programming, CI/CD, Jenkins, TeamCity, GitHub Actions, Bitbucket Pipelines
  • Monitoring: ELK Stack, Grafana
  • Message Queues: RabbitMQ
  • Testing: Testcontainers, LocalStack, ApprovalTests