avatar

Hallo,
my name is Christian Gahlert30yo and I am a Freelance Software Developer

About Me

Self-taught and highly motivated software developer with a deep technical knowledge who is searching for an innovative and fast moving tech company.

Education

  • 2014

    Certified Scrum Product Owner training

  • 2013

    Gradle Expert training

  • 2013

    B. Sc. in Business Informatics

    I finished my Bachelors degree in Business Informatics at the DHBW Karlsruhe, Germany in a work-study program after three years.

  • 2012

    Foreign exchange student in the United States

    I completed a semester abroad at California State University, San Marcos, CA. It lasted 5 1/2 months.

  • 2010
  • 2009
  • 2008

    Finished school education

    In 2008 I finished my school education by gaining the German Abitur which qualifies for university admission at the Eduard Spranger Gymnasium, Filderstadt, Germany.

Experiences

EnBW AG
since 04/2018
Freelancer
Senior Backend Developer & Devops Engineer
  • Worked in a team of frontend and backend developers using Scrum.
  • Worked as lead architect and developer for a completely new microservice based application with Spring Boot (+MsSQL) and Angular for visualizing energy meter data for B2B customers.
  • Created a new OAuth2 service based on Spring Boot as a Single Sign On solution for multiple applications running in the same microservice based environment.
  • Created a highly optimized database solution using MsSQL to be able to quickly aggregate huge amounts of data on demand.
    Also created a highly customizable alarm feature that enables customer to get SMS/E-Mail alerts when certain thresholds in the energy meter data gets exceeded.
  • Created a Gradle based build that uses Docker to locally build and start the microservice environment.
  • Created new Continuous Integration and Continuous Delivery pipelines in Azure Devops (VSTS) including a new configuration management solution.
  • Deployment and operation of a production Kubernetes Cluster in the Azure Cloud.
  • Integrated Azure Application Insights into the Spring Boot application and added multiple monitoring solutions to ensure service health.
Technologies used: Java, Spring, Spring Boot, Docker, Kubernetes, Azure Cloud, MsSQL, Gradle, Git, Azure Devops (VSTS), JUnit, Mockito, AssertJ, Nginx, Redis, Angular 5+, Typescript, Protractor, Mustache, Swagger, Spring Boot Admin, Liquibase
Novazer GmbH
since 04/2018
Founder
CEO
  • Founded the Novazer GmbH in February 2018 to continue my freelancing work through the company.
  • Held multiple Java trainings for trainees including e.g. Java Basic, Java EE, Java Advanced, ...
  • Created a Wordpress plugin in PHP to show an X-Mas calendar with custom requirements.
1&1 Mail and Media GmbH
04/2017 - 03/2018
Freelancer
Senior Software Developer
  • Worked as a Java-Developer in an agile team that migrated from Scrum to Kanban.
  • Implemented Business Requirements in a large Activiti BPMN based workflow platform, to process customer orders. In order to process an order, the platform had to orchestrate numerous webservices internal and external to the company.
  • Held multiple tech talks and introductions about new technologies and workflows.
  • Participated in the conceptual work for moving to a Kubernetes cluster in the CI/CD project. Evaluated multiple technologies like GoCD and Spinnaker.
  • Introduced Gitlab CI as a replacement for Jenkins. Trained team members and completed the initial foundation work.
  • Dockerized multiple infrastructure applications like Rundeck.
  • Replaced manual management scripts for operations with a reusable Ansible playbook rolling out containers by defining them in a Docker Compose file.
  • Migrated multiple applications to Spring Boot and created a Cloud Native infrastructure including Vault, Zuul, Zipkin, Turbine, Spring Boot Admin and Consul. Helped as a driving force moving the first application into production using the new stack.
Technologies used: Java 1.8, Spring, Spring Boot, Docker, Kubernetes, PostgresSQL, Maven, Git, Gitlab CI, Jenkins, JUnit, Jira, Nginx, Spinnaker, Rundeck, Activiti BPMN, Zuul, Turbine, Zipkin, Vault, Ansible
ISB AG
04/2016 - 03/2017
Freelancer
Software Developer Java
  • Worked in a Scrum team working on eGovernment projects for the Ministry of Foreign Affairs (Auswärtiges Amt).
  • Wrote a parser for Selenium IDE tests in order to execute them via Webdriver.
  • Debugged production issues for a legacy applicaton based on an ActiveMQ Network of Brokers with ~200 brokers.
  • Designed and implemented a strategy to easily manage all test environments using Docker Swarm. Created multiple Bash-Scripts, Jenkins-Jobs and Commandline-Java-Programs for easier management of the environments.
  • Dockerized multiple legacy applications for easier setup of test environments.
  • Implemented customer requirements in a web application based on Apache Wicket, Spring, Apache Camel and Hibernate.
  • Implemented customer requirements in multiple legacy applications based on JDK 1.5, EJB 2.1 and PostgresSQL.
  • Migrated a large Vaadin 6 application to Vaadin 7.
  • Implemented multiple End-2-End Tests using Gradle, Docker, Webdriver, Groovy and Spock and trained teammates to use it.
  • Participated in the creation of offers for the client’s client.
  • Helped debug multiple production issues at the client’s client.
  • Created multiple Nagios plugins and configuration templates for monitoring the ActiveMQ Network of Brokers in production.
Technologies used: Java (1.5, 1.8), Spring, Docker, Docker Swarm, PostgresSQL, Gradle, Maven, Ant, Selenium, Webdriver, Apache Camel, ActiveMQ (4 & 5), Windows Server, Debian, Subversion, Eclipse, EJB 2.1, JUnit, Jenkins, Jira, Liquibase, Spock, Groovy, Bash, Nagios
Sophos Technology GmbH
10/2015 - 04/2016
Permanent employee
Software Developer Cloud
  • Worked in a self-organized Scrum team consisting of more than 20 developers. The official team language was English.
  • Developed features and improved test coverage for a distributed Spring MVC application deployed on AWS EC2.
  • Developed features and took part in UX design for an AngularJS application with ES6.
  • Reduced the Spring MVC application’s Gradle based build time by 50%.
  • Trained new team members in Java and JavaScript development.
Technologies used: Java, Spring, Groovy, Bamboo, Jira, Git, Gitflow, Twitter Bootstrap 3, AngularJS, Grunt, Bowser, ES6, REST, SOA, IntelliJ IDEA, OS X, AWS, Docker, MongoDB, Redis, Memcached, HTML5, CSS3, SASS, Gradle, Selenium, JUnit, Karma, JSP, JSON, Ajax
Fiducia IT AG
10/2013 - 09/2015
Permanent employee
Build and Release Engineer
  • Joined a distributed team that just started the transition to Scrum.
  • Installation and administration of Jenkins with more than 30 Buildslaves. Developed multiple plugins to support the build process.
  • Migrated from a large proprietary Build System based on Ant, PHP and Shell to a Gradle based solution. This system is used to compile and build more than 2.600 single modules that form a single banking system.
  • Migrated a legacy web application based on PHP/jQuery/raw SQLs to a Vaadin/Spring/Hibernate based solution. Lead architect and developer for the Vaadin based solution.
  • Technical architecture of the Build Process for the transition to Continuous Deployment.
  • Administration of the company’s central Subversion repositories in a high a vailability environment.
  • Gave trainings and conference talks about the new Build System.
  • Email and phone support for all of the above.
Technologies used: Java, Guice, Spring, Groovy, Jenkins-Plugin-Development, Jira, Gradle-Plugin-Development, Subversion, Vaadin, jQuery, REST, SOA, Eclipse-Plugin-Development, Docker, MySQL, Oracle DB, DB2, HTML5, CSS3, PHP, Shell, Bash, Sonar, Selenium, Spock, JUnit, JSON, Ajax
Private Startup
06/2013 - 12/2016
Founder
Entrepreneur / Developer
  • Sort of a social network focused on contact exchange. I still struggle to find the right partners to join/support my work.
  • Created a REST-API based on Java/Resteasy/MongoDB with OAuth 2.
  • Experimented to use NodeJS/MongoDB for the API and created a complete working example.
  • Created an AngularJS web application styled with Bootstrap 3 including multiple advanced pages to edit data via the API.
  • Created a native Android Application to synchronize data from the API to the phone book.
  • Automated the build including Jenkins and Gradle (Java, Android, NodeJS, Grunt) with automatic deployment on AWS (continuous deployment).
Technologies used: Java, MongoDB, Resteasy, Jira, Gradle, Git, Github, Twitter Bootstrap 3, Guice, AngularJS, NodeJS, Grunt, Bower, REST, SOA, AWS, HTML5, CSS3, SASS, Android development, JUnit, JSON, Ajax
Fiducia IT AG
09/2010 - 09/2013
Student / Intern
Student (work-study program)
  • Created a mobile payment app for Android as a prototype. Presented and explained the mobile payment process with this prototype at the Fiducia client fair COM13 to bank employees as well as bank managers.
  • Single-handedly designed, created and ran a Vaadin-Touchkit mobile app to rate talks at a conference in 2012. Responsible to maintain and run this app annually since.
  • Lead architect and lead developer in a team of 20 students to create a Vaadin web application to calculate financial models.
Technologies used: Java, Spring, Vaadin, Vaadin-Touchkit, Maven, Subversion, jQuery, REST, MySQL, HTML5, CSS3, PHP, Zend Framework 2, Android development, Vaadin Touchkit, JUnit, JSP, JSON, Ajax
Krumedia GmbH
07/2009 - 07/2010
Permanent employee
Web Developer
  • Created a complete market portal for finding and providing handcraft single-handedly with the help of a designer. (Almost unchanged at www.handwerkerfinden.com)
Technologies used: PHP, jQuery, CSS, HTML, Zend Framework 1, JSON, Ajax
Dassault Systemes
05/2008 - 05/2009
Freelancer
Contractor
  • Created a system to increase CRM data quality semi automatically.
  • Eliminated over 4.900 duplicate customer records.
Technologies used: PHP, MySQL, Visual Basic

Skills

Agile / Scrum
Visualize complex problems and architectures
Explain technical problems to non-technical audience
Test Driven Development
Giving talks and trainings
Software Development
Web Development
Software Architecture
Server Administration
Full Stack Development

Technologies

ActiveMQ
Android development
AngularJS
Angular 2+
Ant
Ansible
Apache Camel
AWS Cloud Services
Azure Cloud Services
Bamboo
Bash / Shell
Bower
CSS3
Docker
Docker Swarm
Eclipse
ES6
Git / Github / Gitlab / Azure Devops
Gitflow / Feature branching
Gradle
Groovy
Grunt
Guice
HTML5
IntelliJ IDEA
Java
Jenkins
Jira
jUnit / Mockito / AssertJ
jQuery
Karma
Kubernetes
Linux
Liquibase
Maven
Memcached
MongoDB
MsSQL (SQLServer)
MySQL
Nagios
Netbeans
Nexus
Nginx
NodeJS
Oracle DB
PhoneGAP/Cordova
PHP
Redis
REST
Resteasy
Rundeck
SASS/LESS
Selenium IDE
Sonar
Spinnaker
Spock
Spring
Spring Boot
Subversion
Twitter Bootstrap 2 & 3
Typescript
Vaadin
Vaadin Touchkit
Vault
Webdriver
Zend Framework 1 & 2
 
User
Professional
Expert

Languages

German
English
French