Duhan Cem Karagöz, Developer in Istanbul, Turkey
Duhan is available for hire
Hire Duhan

Duhan Cem Karagöz

Verified Expert  in Engineering

CI/CD Pipelines Developer

Location
Istanbul, Turkey
Toptal Member Since
May 18, 2022

Cem is a DevOps and back-end engineer at IsBank and Siemens. He works on cloud environments and on-premise systems like GCloud and OpenShift. Cem created and maintained applications in different tech stacks like Python, Node.js, and .NET with a get-it-done mentality and task-oriented style. He used Jenkins and Github actions for CI/CD, while Helm is used to deploying and maintaining applications on the cloud.

Portfolio

SoftTech
Gradle, Java, Jenkins, Shared Libraries, CI/CD Pipelines, Helm, Azure, Ansible...
Siemens
Node.js, SQL, Ionic, Capacitor, NestJS, Swift, Java, OPC UA, GitHub, GitLab...
SoftTech
Node.js, Python 3, .NET, Docker, Helm, Prometheus, Grafana, Cloud, OpenShift...

Experience

Availability

Part-time

Preferred Environment

MacOS, Git, GitHub, Visual Studio Code (VS Code), Docker, Jenkins, NestJS, .NET, Google Cloud, Azure

The most amazing...

...thing I've developed is a CI/CD process for cloud environments and a multiplatform application that boosted sales by %1.3 for our clients at Siemens.

Work Experience

DevOps and Back-end Engineer

2022 - PRESENT
SoftTech
  • Developed a microservice to watch and report on systems and cloud components. Checks of testing namespaces.
  • Deployed multiple products based on various microservices working together with Helm scripts to a pre-existing Google Cloud environment for testing and user access.
  • Created a Jenkins plug-in to monitor and report user interactions with jobs and provided services to check user engagement and needs.
  • Created and maintained CI/CD libraries and processes with Jenkins and AzureTFS. Wrote Jenkins shared libraries to develop a standard pipeline for microservice products.
  • Built user acceptance test (UAT), integration testing (INT), and development (DEV) environments on Cloud and on-premise to test, integrate, and evaluate the software used. SonarQube, unit and integration test, and user evaluation were the steps taken.
  • Wrote a declarative pipeline with Groovy and unit tests to test the pipeline.
Technologies: Gradle, Java, Jenkins, Shared Libraries, CI/CD Pipelines, Helm, Azure, Ansible, Grafana, Prometheus, Groovy, Python, APIs, Google Cloud, C#, DevOps, Fintech, Banking & Finance, Architecture

Back-end Engineer

2021 - 2022
Siemens
  • Developed an application on multiple platforms. Used OPC.UA communication protocol on mobile devices to connect to industrial devices for data retrieval and manipulation. Deployed applications to our customers with a private deployment structure.
  • Researched and developed certain libraries for mobile applications with Capacitor and Ionic for communication protocols that did not exist during development.
  • Created plug-ins with native languages of Android and iOS devices in Capacitor to use certain communication protocols, such as DeviceDiscovery and OPC.UA communicator.
  • Tracked applications closed beta process with our clients through Jira, log, and metrics collection through Elasticsearch.
  • Boosted sales of our OPC.UA-supported industrial devices by %1.3.
Technologies: Node.js, SQL, Ionic, Capacitor, NestJS, Swift, Java, OPC UA, GitHub, GitLab, Docker, CI/CD Pipelines, Python, HTTP, APIs, JavaScript, Applied Research, PostgreSQL, Google Cloud, C#, DevOps, Architecture

Back-end Engineer

2019 - 2021
SoftTech
  • Developed an orchestrator for on-premise systems to connect with a microservice architecture.
  • Created Event-driven architecture with a message broker to facilitate events on the microservice system.
  • Built and maintained microservices for SonarQube, TFS, Checkmarx, Gitlab, Github, and other master microservices to collect their information.
  • Measured each developer's created value with Jira, SonarQube, TFS, and Checkmarx to ensure high quality with a good output. Microservices were used to collect the information on developers, and raw values were shown on the board.
  • Created a gamification system with unit tests, API tests, and security concerns to incentivize developers better and improve quality by %7.
  • Developed and maintained software that checks SQL queries, runs them through security checks, and executes them on selected databases with certain backup and rollback methods.
  • Cooperated with the breakdown of monolithic applications into microservice structures for containerization. Created unit tests for coverage and checked the breakdown process.
  • Acted as an in-company teacher and gave multiple classes in git and DevOps.
  • Deployed and monitored 127 microservice applications to different systems, including bare metal, virtual machine, and Kubernetes. Created deployments of YAML and CD processes on TFS and Jenkins.
Technologies: Node.js, Python 3, .NET, Docker, Helm, Prometheus, Grafana, Cloud, OpenShift, Python, HTTP, APIs, JavaScript, Applied Research, PostgreSQL, C#, DevOps, Fintech, Banking & Finance, Architecture

Multiplatform Application for İndustrial Devices

A Node.js and Ionic-based multiplatform application that uses OPC to connect, communicate, and manipulate the devices. For native implementations like Android and iOS, I used their native languages, Java and Swift, in conjunction with Capacitor to interface with the application.

DevOps Control Center and Orchestrator

A microservice-based architecture was used in the project. Node.js, Python, and .NET were the primary languages.

The main goal was to orchestrate the CI/CD project and simplify the steps for developers. There were scalable containers in front of each program, like SonarQube, used in the CI/CD pipeline and had a Python container that managed it via the help of the master written on .NET.

Each step and log were shown on the control center for the developer so it could be fixed faster without looking for error signs on each step. The event-driven architecture was used so the system would communicate through messages and used RabbitMQ to facilitate it.

Jenkins Plugins

Developed Java-based Jenkins plugins.

One is for getting usage data from current jobs in Jenkins with information like times, minutes, and max and average time used. This information is then packed in intervals of three days to be reported to upper management.

CI/CD Pipeline for Fintech Companies

A shared library pipeline is created to facilitate each step of the process. Jenkins shared library is a codebase that can be invoked from a Jenkins file that resides in the Git repository of the project.

We extended the shared library to be used for our pipeline steps. Used Groovy to write each step of the process like build, packaging, uploading to Nexus or Docker repository, creating a testing environment on Google Cloud, creating namespace allocating resources, creating Helm scripts to deploy the application, testing with unit and integration tests, and notifying tester for hands-on testing.
2022 - 2022

Master's Degree in Computer Science

Istanbul Ticaret University - Istanbul, Turkey

2013 - 2019

Bachelor's Degree in Computer Science

Istanbul Technical University - Istanbul, Turkey

MARCH 2019 - MARCH 2022

Test of English as A Foreign Language (TOEFL)

ETS

APRIL 2018 - PRESENT

Software Qaulity and Testing

Turkcell Academy

Frameworks

NestJS, .NET, Flask, Ionic

Tools

Git, Jenkins, GitHub, Helm, PyCharm, Grafana, Capacitor, GitLab, Gradle, Ansible, SonarQube, RabbitMQ, Checkmarx, Cucumber

Paradigms

REST, DevOps, Testing, Event-driven Programming, Microservices

Platforms

Docker, MacOS, Visual Studio Code (VS Code), Azure, OpenShift, Mobile, Kubernetes

Other

CI/CD Pipelines, Cloud, Machine Learning, Neural Networks, Shared Libraries, HTTP, APIs, Fintech, Architecture, Prometheus, OPC UA, English, QA Testing, Message Queues, Groovy Scripting, Applied Research

Languages

Python 3, Python, JavaScript, C#, SQL, Java, Swift, Groovy

Libraries/APIs

Node.js

Storage

PostgreSQL, Google Cloud

Industry Expertise

Banking & Finance

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