Emre Gozen, Developer in Istanbul, Turkey
Emre is available for hire
Hire Emre

Emre Gozen

Verified Expert  in Engineering

Back-end Developer

Location
Istanbul, Turkey
Toptal Member Since
June 4, 2020

Emre is a seasoned software engineer with a demonstrated history of working on complex projects—focusing on Java, React, DevOps, and containerized runtimes. However, he's also developed SOAP and REST web services for several years. Emre's worked on transformation projects where he converted monolithic apps to cloud-ready microservices along with creating the CI/CD pipelines. For his own projects, Emre has deployed apps on AWS EC2, Elastic Beanstalk, and used CloudWatch for centralized logging.

Portfolio

Volvo Car
Java, Spring Boot, Apache Kafka, Kafka Streams, Schemas, Event Sourcing...
Caravelo
Java, Vue, REST, SOAP, API Integration, Integration, Payment APIs...
ASELSAN
Java 8, React, Redux, Kubernetes, Red Hat OpenShift, Spring Boot, Hibernate...

Experience

Availability

Part-time

Preferred Environment

Git, MacOS, IntelliJ IDEA, WebStorm

The most amazing...

...project was serving as the technical project leader for a digital transformation project for a well known airline; I learned a great deal about microservices.

Work Experience

Senior Java and Node.js Developer

2022 - PRESENT
Volvo Car
  • Developed a set of microservices responsible for managing the subscription backbone for the Volvo Car company.
  • Built a Node.js project for back-end and front-end services.
  • Used GitHub Actions to ensure code quality, create the binary, and run the application on the Kubernetes environment.
  • Contributed to the event-sourcing infrastructure of microservice applications, using Kafka as the main storage of subscription-related data by leveraging Kafka Streams.
  • Created Kafka Connect tasks to synchronize the PostgreSQL database using Kafka topics.
Technologies: Java, Spring Boot, Apache Kafka, Kafka Streams, Schemas, Event Sourcing, Event-driven Programming, GitHub Actions, Node.js, TypeScript

Senior Back-end Developer | DevOps

2021 - 2022
Caravelo
  • Implemented and maintained RESTful web services with the HK2 framework for the company's core application, which is responsible for the lifecycle of subscriber accounts and tickets.
  • Integrated several payment solution providers (Adyen, Bluefin, and Redsys) and developed payment plugins for the Kill Bill platform (Killbill.io).
  • Created pipelines (including the Canary strategy) for mission-critical apps, using AWS EC2, AWS ECS, AWS CodeDeploy, and Amazon CloudFront for GitLab CI.
  • Developed a full-stack application for customer management services using Vue and Java web services.
Technologies: Java, Vue, REST, SOAP, API Integration, Integration, Payment APIs, Adyen Payments, Bluefin Payments, Kill Bill, PostgreSQL, Swagger

Senior Full-stack Developer | Architect

2020 - 2021
ASELSAN
  • Developed a microservice-based application for a SCADA solution with a Spring Boot framework to provide back-end services.
  • Built a front-end application for a SCADA solution with a React framework using Redux functions.
  • Managed a Kubernetes and Red Hat OpenShift platform for the development and maintenance of the solution using predefined operators.
  • Architected the microservice and a DDD (domain-driven design)-based distributed solution which provides a highly available-and-resilient service for the energy sector.
  • Implemented IoT protocols like DNP3, Modbus, or IEC for the communication between SCADA system and RTU (remote terminal unit) devices.
  • Developed and maintained a Helm chart for a robust and automated operational workflow.
Technologies: Java 8, React, Redux, Kubernetes, Red Hat OpenShift, Spring Boot, Hibernate, Liquibase, PostgreSQL, C4 Model, SCADA, Industrial Internet of Things (IIoT), DNP3, Modbus Protocol, IEC 62304, Elasticsearch, RabbitMQ, Domain-driven Design (DDD), Helm

Senior Back-end Developer

2020 - 2020
National Consumer Panel (via Toptal)
  • Oversaw the development activities for the companies' web service applications which were built with Java using Spring and Hibernate frameworks.
  • Maintained the application with bug fixes and configuration management for a GitLab codebase.
  • Executed a database script for a data migration and development purposes using DBeaver.
  • Deployed a package on a WebSphere 8 application server.
Technologies: Java, IBM WebSphere, Spring, Hibernate, Web Services, JAX-RS, GitLab

Senior Back-end Developer

2020 - 2020
CashCloud, Inc. (via Toptal)
  • Developed a RESTful integration on the Java Dropwizard project to connect with a new bank service.
  • Created an admin endpoint to manage SSL certifications on the fly.
  • Enhanced the company's AWS IAM usage to give people the correct permissions with their created roles.
Technologies: Microservices Architecture, Git, Web Services, Dropwizard, Amazon EC2, AWS IAM, AWS Elastic Beanstalk, Amazon Web Services (AWS), Java

Experienced Software Developer | Technical Team Leader

2017 - 2020
Turkish Airlines
  • Led the middleware web-services team of 12 engineers which implemented the comprehensive heap dump/thread dump analyses using MAT, Dynatrace, and Java Flight Recorder to detect memory leaks and class loader leaks.
  • Oversaw a digital transformation project which involved converting a backbone monolithic web service application to microservices with the Spring Boot 2 framework and a migration from WebLogic to Redhat OpenShift.
  • Enriched a CI/CD pipeline to increase operational quality by adding a binary build, Docker image creation, regression tests, and deployment to Redhat OpenShift with zero downtime.
  • Created an in-house service virtualization tool for robust CI/CD pipelines. It was a Spring Boot project and supported HTTP, JDBC, and IBM MQ protocols.
  • Built an abnormality detection system that analyzed error increase rates and detected abnormalities. We used the Spring Cloud Data Flow Kubernetes framework and combined RNN (recurrent neural network) and standard deviation for better performance.
Technologies: Microservices Architecture, log4j, Oracle WebLogic Application Server, Git, Agile Software Development, Web Services, Spring, Microservices, Dynatrace, IBM MQ, WebLogic, JUnit, Couchbase, Kubernetes, OpenShift, Hibernate, Spring Boot, Java

Senior Back-end Developer

2018 - 2019
Freelance
  • Developed a set of microservices to provide RESTful ticket and reservation lifecycle methods with the Spring Boot framework and deployed on AWS EC2 and Elastic Beanstalk.
  • Created high coverage unit tests to ensure code quality.
  • Built a pipeline to create application binaries from a GitLab source and then deployed to AWS EC2 and Beanstalk environments.
Technologies: log4j, Git, Web Services, Spring, MySQL, Hibernate, Spring Boot, AWS Elastic Beanstalk, Amazon Web Services (AWS), Java

Java Software Developer

2013 - 2017
Turkish Airlines
  • Built a backbone middleware web-services project used by sales channels like website and mobile applications. The main integration was with a reservation system using IBM MQ 8. It was deployed to WebLogic 12c with a custom Jenkins deployer plugin.
  • Composed enhanced unit tests for microservices with JUnit, REST Assured, Wiremock, and Spring Boot capabilities.
  • Developed a front-end application with the JSF framework and Spring/Hibernate frameworks. The pages were used by analysts and business teams.
Technologies: Web Services, JAX-RS, JAX-WS, IBM MQ, WebLogic, JUnit, Hibernate, Spring Boot, Java

Software Quality Engineer

2012 - 2013
Turkcell
  • Carried out full lifecycle tests for Turkcell's billing rating charging mediation systems.
  • Developed JUnit tests for billing and agency applications.
  • Created quality reports for billing and agency applications.
Technologies: SoapUI, JUnit, Java

Part-time Software Developer

2010 - 2011
Bosch and Siemens Home Appliances
  • Developed ASP.NET pages for call center operations.
  • Created and maintained SSRS (SQL Server Reporting Service) reports with complex SQL queries.
  • Contributed to the development stages of .NET back-end components.
Technologies: JavaScript, SQL Server Reporting Services (SSRS), SQL, ASP.NET, C#

SCADA System Solution

I contributed to the development and architecture of a supervisory control and data acquisition (SCADA) system for the industrial IoT market.

The back end was designed to contain distributed microservices that were loosely coupled and communicate using RabbitMQ with domain events for specified DDD (domain-driven design). The front end was developed using React framework with Redux functions to provide application scale prop storage.

To communicate with remote terminal units (RTU), sector standard protocols like DNP3, Modbus, and IEC were implemented and used. Kubernetes 1.20 and Red Hat OpenShift 4.6 were used for both development and production environments. Helm charts were used for CI/CD processes to automate operational works.

Application Modernization Project

I worked as a technical team leader and developer of a project that aimed to convert monolithic applications into microservices. This required re-platforming applications from WebLogic 12c to the RedHat OpenShift 4 Container Platform.

We used new robust CI/CD pipelines for the application lifecycle and test purposes. Spring Boot 2 framework and its side dependencies were used for new microservices. This project was viewed as an exemplary effort for the rest of the company to modernize the entire department's applications.

Gateway Microservice for an Airline Reservation System

This project involved the development of a Spring Boot 2 application that constructed a bridge between other microservices and the airline reservation system.

I was the only developer. HTTP (RESTful) and custom TCP protocols were supported. Stateful tokens were stored on Couchbase for better performance. The application connected the airline reservation system via IBM MQ 8. RedHat OpenShift 4 was used for the runtime. I created a Jenkins pipeline for CI/CD operations and all deployments were automatically done by Git Hooks with no downtime.

The system was designed for handling a massive RPS load from different applications.

Turkish Airlines | Main Backbone Middleware Reservation Web Services Project

I contributed to the development of a Java application with JAX-WS and JAX-RS endpoints. The app provided major sales channel operations (e.g., websites, mobile applications, agencies) such as before-after tickets, payments, check-ins, and reissuing. It was developed with Spring and Hibernate frameworks and Maven was used for dependency control. Deployments were done with Jenkins pipelines and Oracle WebLogic 12c was used for runtime. I also integrated with many other systems with SOAP, Rest, IBM MQ, and TCP protocols.

Service Virtualization Tool

A Spring Boot microservice that virtualizes other applications' dependencies for robust CI/CD flows with scenario-based records. It simply worked between two applications, listened to traffic, and simulated real systems when the CI/CD flow was working. The application was designed especially for stateful flows, where the sequence was important for response messages. An Oracle database was used for storing input and output messages.

Anomality Detection System

This complete system consists of several microservices for detecting errors, which were abnormally increasing during a specific amount of time in the application logs from Elasticsearch and the database. It was designed for catching unnoticed production errors which are crucial for sales operations. Spring Cloud Data Flow for Kubernetes was used as the engine of the system. Custom microservices were developed for analyzing errors with standard deviation and RNN (recurrent neural network) algorithms. The design was patented with the Turkish Patent Authority (TR 2019/02123).

Agency Ticket Sale Back End

I developed a set of back-end microservices for an agency website that was integrated with another service provider to sell tickets from multiple airlines. Spring Boot was used for microservices. Calendar service and other ticketing services were designed for fault-tolerant structure. AWS EC2 and BeansTalk were used for the runtime. To collect applications' logs and illustration, AWS Beanstalk and Kibana were used.

Ticket and Reservation Microservice

I developed a Spring Boot application that manages the lifecycle of tickets and reservations of an airline. There were CRUD operations for electronic documents like display and cancel. A pipeline for Jenkins was created to build, test, and deploy the application. The package could be running on both RedHat OpenShift with environment variables and WebLogic 12c with system variables.

Passenger Profile and Preference Microservice

I developed a Spring Boot 2 application that contains profile and SSR (special service request) operations for the airline. Meal, baggage, identity request, and profile creation integrations were operated with SOAP and REST endpoints. Jenkins pipelines were used to manage the application lifecycle. RedHat OpenShift was used for the runtime.

Price Calculations Microservice

I implemented a microservice that contains pricing features and integrations for an airline including sensitive ticketing pricing calculations, currency conversion, and stateful logic. Jenkins pipelines were created for building, testing, and deploying application to runtime and RedHat OpenShift was used as the runtime platform.

Toptal React Academy Graduate

The Toptal React Academy is an exclusive learning program that teaches the React framework to select members of the Toptal network. After a month of study, all graduates are tasked with completing a 30-40 hour final project to build and deliver a React app from scratch. The above is a walkthrough of my final project.
2007 - 2012

Bachelor's Degree in Computer Engineering

Istanbul Technical University - Istanbul, Turkey

JANUARY 2021 - PRESENT

Toptal React Academy Graduate

Toptal, LLC

Libraries/APIs

JAX-WS, JAX-RS, Jenkins Pipeline, React, Liquibase, Vue, Node.js

Tools

Apache Maven, Git, Dynatrace, Docker Compose, IBM MQ, Amazon EBS, Amazon CloudWatch, SoapUI, AWS IAM, GitLab, RabbitMQ, Helm, Jenkins, IntelliJ IDEA, WebStorm, Adyen Payments, Kafka Streams

Frameworks

Spring, Spring Boot, Hibernate, Swagger, JUnit, ASP.NET, Dropwizard, Redux, C4 Model

Languages

SQL, Java, YAML, C#, JavaScript, Java 8, TypeScript

Paradigms

Agile Software Development, Microservices Architecture, Microservices, Continuous Integration (CI), Continuous Delivery (CD), REST, Event Sourcing, Event-driven Programming

Platforms

Kubernetes, Eclipse, Red Hat OpenShift, Docker, Amazon EC2, Amazon Web Services (AWS), MacOS, OpenShift, AWS Elastic Beanstalk, IBM WebSphere, Apache Kafka

Storage

Oracle 12c, NoSQL, MySQL, Couchbase, SQL Server Reporting Services (SSRS), PostgreSQL, Elasticsearch

Other

log4j, Web Services, API Integration, Memory Leaks, Class Loader Leaks, Oracle WebLogic Application Server, Recurrent Neural Networks (RNNs), Amazon Route 53, WebLogic, SCADA, Industrial Internet of Things (IIoT), DNP3, Modbus Protocol, IEC 62304, Domain-driven Design (DDD), SOAP, Integration, Payment APIs, Bluefin Payments, Kill Bill, Schemas, GitHub Actions, Software Engineering

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring