BK

BERK KULAKSIZ

Senior Software Engineer, Architect

Name:BERK KULAKSIZ
Date of birth:02 Mart 1995
Email:iletisim@berkkulaksiz.com
I am well experienced in software engineering and have intensive knowledge of architectural design, best practices, and implementation. Full software development life cycle, coding standards, reviews, unit testing, DDD, micro-service, DevOps, full-stack development, and native mobile application development are under my expertise.

WORK EXPERIENCES

September 2021 - present

Tikla Gelsin

Senior Software Engineer, Architect
December 2019 - September 2021

FUPS

Senior Software Engineer, Architect

I work in a startup company that aims to enter the market with pioneering innovations in the finance sector. I am a member of the team that develops mobile applications in the company. I am software architect responsible for Android application development.

 

I have developed a library of which I am the inventor, with an unusual architectural design approach (a blend of design patterns such as MVC, MVVM, Factory Method, Builder, Adapter, Facade, DTO and so on) in the Android application. When we translate the work of this library into Turkish, it is actually the user interface development work on dynamic screens.

 

The programming language and libraries we prefer to use in the Android application are as follows, respectively.

 

  1. Programming Language: Kotlin (%100)
  2. Network API Call: Retrofit RESTful API Call
  3. JSON Serialization & Deserialization: Moshi Adapter
  4. Local Database: Realm Database
  5. Error State Analysis: Crashlytics
  6. Logging: SLF4J
  7. Activity & Fragment Navigation: Android JetPack Navigation Component
  8. Image Download: Glide Image Downloading Library
  9. Image Resizing: uCrop
  10. Animation: Lottie
  11. Dependency Injection: Dagger2
  12. Real Time Communication: Smack XMPP Client library & STOMP
  13. Visualizing Data: MPAndroidChart

 

The architectural understanding of the Android application has a hybrid architecture that blends the design patterns I mentioned above. In terms of UI development on dynamic screens, an iOS Developer has the same logic in terms of usage/coding as if she/he were developing an iOS application without any foreignness. I have experienced that this has a positive effect on development time.

January 2019 - December 2019

KocDigital

Software Development Engineer

IoT Platform 360

Manufacturing Execution System, Predictive Maintenance, Assembly Management are consolidated into one software ın IoT platform which is named Platform 360. So, different modules came together and become a product in itself. SDK is prepared and with it, we enabled our tenants’ software engineers to make customized solutions and new integrations by supplying data from the product.

 

Predictive Maintenance

 

Generating a big data by periodically retrieving data from the sensors used in mining equipment. To understand the generated big data and provide specific reports to the end user. Using “Artificial Intelligence Algorithms” with the data received from the sensors and inform the authorized person or persons before any failure occurs in the device.

 

This project was built on “Monolithic Architecture” structure and developed Web Application and Web API Application by using approaches such as .NET Core technology, MVC design pattern and Entity Framework Code First.

February 2018 - December 2018

KoçSistem

C++ Qt Software Development Engineer

Pixage 4

 

In Business Solutions Department, I had worked in Pixage team for developing cross platform digital signage solution application with using C++ programming language and using Qt Framework. Application is basis on RTC Server (Real Time Communication Server) and APIs (Application Program Interface) using C++ WebSocket communication. On the other hand, project is based on “Monolithic Architecture” and I have had made improvements based on SOLID principles for that architecture design. Also, project is converted to modern C++ standards (C++11, C++14 ve C++17) by myself.

 


 

Assembly Management – Ford Factory (Golcuk) Project
IOTP360 Assembly Management – Ethiopia DEFY Project

 

I contributed to gathering the data of the “Production / Assembly” operations in the “Production / Assembly stations” of the factories and form a big data structure. I developed software which is providing structured screens to understand the generated big data and provide specific reports to the end-user. This software is used by different companies of Koç Holding.

 

One of the other objectives of the project is to increase the quality of the “Production / Assembly” line, inform the operators of any failure situation with HMIs, and prevent stopping the line stops.

 

This project is based on a “Monolithic Architecture” structure and developed by using approaches such as .NET Core technology, MVC design template, and Entity Framework Code First: Web Application, Desktop Application, HMI Application, and Web API application.

June 2014 - December 2017

Freelance

Software Engineer

EDUCATION INFORMATION

September 2015 - June 2018

Beykent University

Software Engineer

University (Bachelor Degree) – Beykent University- (Formal Education)

Faculty Of Engineering And Architecture, Software Engineering (English)

GPA: 3,49 / 4,00

September 2013 - June 2015

Maltepe University

Computer Programmer

University (Associate Degree) September 2013- June 2015 Maltepe University- (Formal Education)

Faculty Of Vocational Education, Computer Technology and Programming  (Turkish) – Scholarship Success (% 50)

GPA: 3,49 / 4,00

FOREIGN LANGUAGE

May 2015 - present

English Language

Upper-Intermediate

Reading       –  B1
Writing        –  B1
Listening     –  B1
Speaking     –  B1
Grammar    –  B1

EDUCATION CERTIFICATION INFORMATION

March 2016 - present

Android Programming

Android Mobile Application Developer

Education institution : C and System Programmers Association
Education start date : 17 November 2015
Education end date : 22 March 2016
Duration of education : 100 hours
Instructor : Aykut TASDELEN

 

 

February 2016 - present

Intel 80X86 ve ARM Symbolic Machine Language

Symbolic Machine Language Programmer

Education institution : C and System Programmers Association
Education start date : 03 February 2016
Education end date : 17 April 2017
Duration of education : 150 hours
Instructor :  Kaan ASLAN

 

May 2015 - present

System Programming and Advanced C Applications I

Embeded System Programmer

Education institution : C and System Programmers Association
Education start date : 16 May 2015
Education end date : 28 May 2016
Duration of education : 180 hours
Instructor :  Kaan ASLAN

 

 

March 2015 - present

C++ and Object Oriented Programming Language

C++ Programmer

Education institution : C and System Programmers Association
Education start date : 07 Jult 2014
Education end date :18 March 2015
Duration of education : 160 hours
Instructor : Necati ERGIN

 

November 2014 - present

C Programming Language

C Programmer

Education institution : C and System Programmers Association
Education start date : 20 April 2014
Education end date :08 November 2014
Duration of education : 160 hours
Instructor : Necati ERGIN

January 2014 - present

Introduction to Programming

Education institution : C and System Programmers Association
Education start date : 11 November 2013
Education end date :  25 January 2014
Duration of education : 80 hours
Instructor : Ali Vefa SERCE

May 2016 - present

System Programming and Advanced C Applications II

Embeded System Programmer

Education institution : C and System Programmers Association
Education start date : 29 May 2016
Education end date : 27 April 2017
Duration of education : 180 hours
Instructor :  Kaan ASLAN

 

 

May 2016 - present

Application Development with Qt

Qt Developer

Education institution : C and System Programmers Association
Education start date : 14 May 2016
Education end date : 27 February 2017
Duration of education : 160 hours
Instructor :  Kaan ASLAN

 

September 2018 - present

Advanced C++

C++ Programmer

Education institution : C and System Programmers Association
Education start date : 06 September 2018
Education end date :18 March 2019
Duration of education : 160 hours
Instructor : Necati ERGIN

April 2018 - present

iOS and mac OS X Platforms Application...

iOS and macOS Developer

Education institution : C and System Programmers Association
Education start date : 29 April 2018
Education end date : 29 April 2019
Duration of education : 160 hours
Instructor :  Kaan ASLAN

UML and Design Pattern

Software Architecture

By doing research from domestic and foreign sources, I continue to learn and learn UML schematics and design patterns.

 

UML diagram readability level: 10 points out of 10
The number of design patterns I have learned so far: 13 and more

 

Q: Which design patterns do I have learned?
A: I have learned 13 more of design patterns so far which are : Bridge, Observer, Iterator, Adaptor, Singleton, Factory Method, Abstract Factory, Dependency Injection, Model-View-Controller, Model-View-Presenter, Model-View-ViewModel, Repository, Unit of Work

SCHOLARSHIPS / PROJECTS

June 2014 - present

Virtual Reality and Augmented Reality Turkey...

Project name : Virtual Reality and Augmented Reality Turkey Platform
Project start date : June 2014 – continues today.
In the past, I have taken the web page which I have established with the purpose of promoting the field of technology in Turkey and spreading this technology field one step further, and have entered into the branding process again. My next studies will continue both to promote the Virtual Reality and Augmented Reality technologies I have consulted with software developers and many developer companies who want to work in these areas and I keep doing them.

October 2017 - present

keepdoin PMS

Co-Founder / CEO / Fullstack Web & Mobile Developer

Remote Control Smart Incubator

Project name: Remote Control Smart Incubator

This application is a mobile application that allows to control by providing remote access to sensors and camera on the incubator using TCP / IP Server-Client socket communication.

Restaurant App

Project name : Restaurant App – Android Application
• This app’s purpose is wherever you go, you can see the menu and order quickly on your phone with one and only app. It’s just prototype which was developed by me.
• Developed with Java programming language and utilized Android frameworks such as Retrofit for the RESTful API, Picasso for asynchronous image downloading and caching, Butter Knife and SQLite Room Persistence Library to manage the offline data.

Basic Management System for SAP & EBA

Project name: Basic Management System for SAP&EBA – Android Application
• Developed a management system similar to SAP and EBA.
• Developed with Java programming language and utilized Android frameworks such as Retrofit for the RESTful API, Picasso, Butter Knife and SQLite Room Persistence Library to manage the offline data.

My Campaigns

Proje name: My Campaigns

The purpose of this application is to process the flow of data published in social media using location services and using a system engine structure. As a result of the inferences obtained during this process, users’ instant location of the users according to their information and interest according to the users of the system is to show the campaign information of customers as a notification.

Christmas Gift Lottery

Project name: Christmas Gift Lottery
A simple raffle tool for easy and fast draws for the new year. I used the Kotlin programming language in the development of the Android application.

Kaan Aslan

C and system programmers Association - Chairman of the Board

E-Mail : aslank@csystem.org

Let's keep in touch