Career

I was born in 1996 in Istanbul and since I have been interested in computers since my childhood, I studied software and then I have constantly improved myself in this field and I have done many projects besides these developments. Among my goals is to work with good teams and to create good projects for the future.

Information about the things I have done in the places where I work and some of the projects I have done individually will be briefly segmented below.

Some of my individual projects

Algorithm Studies and Some Case Study

Programming Languages
  1. PHP (Laravel / Symfony) - 5/5
  2. C# (WPF&WinForm&ASP.NET) - 5/3
  3. JQuery, Angular - 5/4
  4. Linux Shell - 5/3
  5. Dockerfile, Docker Compose - 5/3
  6. Java, Python, Dart - 5/2
  7. Java&Kotlin(Android) & Flutter - 5/2
Which Operating Systems I used

My preference is Linux or macos but windows is fine too.

Software Principles & Pattern Design Articles I've Written
Software Testing
  • TDD (Test Driven Development)
  • BDD (Behavior Driven Development)
  • ATDD (Acceptance Test Driven Development)
Software Development Processes
  • SDLC (Software Development Life Cycle)
  • Agile Development
  • CI (Continuous Integration) / CD (Continuous Delivery) - Jenkins
Databases
  • PostgreSQL
  • Mysql
  • Microsoft SQL Server
NoSQL Databases
  • MongoDB
  • Apache Cassandra

Software Virtualization
Full Text Search Engine
  • Elasticsearch
  • Sphinx
Message Brokers && Message Queue (MQ)
  • RabbitMQ
  • Apache Kafka
Caching Tools

    Curious / Interested
    • Microservices
    • Jenkins
    • GraphQL
    • GCP - Google Cloud Platform
    • AWS - Amazon Web Services 
    LINKS
    Githubhttps://github.com/muratcakmaksoftware/
    Medium: https://medium.com/@murat-cakmak
    Aktif olan mobil uygulamalarıma bakmanız için Tıklayın
    Stack Overflow Tıklayın
    CodeGrepper Tıklayın

    Work Experiences

    Helios Digital Solutions
    09.2014 - 06.2015 (10 Months)
    Stajyer

    Job Description: Software and technical support as a high school intern.
    Detail
    • Repair of ATM components, T.V and Mini computers and installation of operating systems and software.



    3SGRUP
    06.2016 - 08.2016 (3 Months)
    Stajyer

    Job DescriptionDeveloping Mobile and Web Applications as a university intern.
    Detail
    • Mobile application developed to follow the problems of customer relations in ticket style mobile application.
    • It was more related to the development of wordpress and customer-specific websites.



    Mediapia It Consulting
    02.2018 - 05.2018 (4 Months)
    PHP Developer

    Job Description: Development on Angular & PHP and restful.
    Detail:
    • I made my own business tracking software from scratch, similar to Asana or Trello.



    Magosa Naval Command (Military Service)
    2018 - 2019 (1 Year)

    I completed my duty as a Guard Sergeant in Cyprus / Magosa.
    While doing my duty (I was not a printer), I additionally wrote a Watch Program with Visual Basic using the Form interface of Microsoft Access. Repetitive workload and some problems were prevented.


    Hizmet Merkezim
    01.2020 - 04.2021 (1 Year/ 4 Months)
    Full Stack Developer

    Job Description: As a Full Stack Developer, developing existing websites written in Laravel and PHP languages.
    Detail: Fixing a lot of bugs in the software and closing the big gap of deficiencies.

    • Monitors that check whether the daily workflow is done correctly.
    • Monitors that follow the personnel and show their statistics.
    • Controlling phone traffic and showing missed calls on the monitor and in-depth analysis of traffic.
    • Control software for barcode reading of warehouse materials and counting of vehicles.
    • Services are available in the system and when the staff wants to assign the service to the master, it shows the vehicles of the nearest masters in the field with their routes. Time and km information is also included. In the analysis section, the routes until the service time are shown on the map.
    • Warning the screen of vehicles exceeding a certain speed and warning the master.
    • Writing advertisement sites and apart from these, hizmetmerkezim.com and istanbulalperenocaklari.org were made as wordpress.
    • There is a project I wrote with Laravel from scratch as an accident report name. In this project, everything is processed in the timed background (Cron job), for example, the word is searched for the news section in google and links are taken in the results section of google and those links are visited and analyzed and presented to the staff.
    • Writing the program with WinForm to backup the ready-made accounting program to the NAS device connected to SQL Server.
    • Adjustment and support of masters' tablets. In-office technical support and solutions.
    • Firewall device configurations and smart switch settings.



    Jengal Yazılım
    05.2021 - 03.2022 (11 Months)
    PHP Developer

    Job Description: Development of existing projects and refactoring of existing projects, documentation and publishing of live projects..
    Detail:
    • Improvements to the Dopinger project.
    • Warning for the use of unwanted words in the Dopinger contact form (contact) and temporary ban in case of repetition.
    • Since Kubernetes is used in the Dopinger project, code should be written according to pods. In case there are more than one pod, for example, in the Queue system, two different identical queues are created and pull the same database and perform operations, but this will cause errors.
    • A similar scenario occurs when Html Cache files are kept locally, such as when they need to be deleted from both pods.
    • In Database Cache, since Redis is used, there is no problem even if it has different pods because it pulls from a common point.
    • Playing a role in providing scenario constructions for such situations.
    • Adding the necessary libraries in Docker and adapting them to the package system.
    • Writing the Media module from scratch using GCS in the Dopinger project.
      • Creating thumbnails of that image when an image is uploaded. In case the images used in the project content are deleted, the places used are detected and the user is informed.
      • Since Restrict is used, it is ensured that the image is prevented from being deleted without deleting the image from the places used, thus preventing the formation of broken image links.
      • All these operations are done in the job and are subject to the queue system. In the event of an error, no one can perform an operation in the relevant folder or file, thus preventing the formation of file or database complexity.
      • In Cloud Storage systems, folders are virtual folders. It is important to remember that there is a virtualized folder logic in GCS. Therefore, in operations such as folder rename, copy or move, codes such as copy or move the folder do not work, so you need to proceed accordingly, such as moving or copying the files inside.
      • In a single bucket, separations are made to accommodate the files of more than one project. Within the project folder, they are kept separately under the originals (original images) and thumbnails (images minimized according to the theme) folders, thus preventing confusion.
      • Writing the Media Sync Cronjob: The purpose of this cronjob is to compare CDN with Database and Database with CDN. This ensures synchronization.
      • Main features: Upload, Rename, Move, Cut, Delete and Create Folder APIs are written to support multiple operations)
    • Revisions I made in the Dopinger project
      • Making the filing logic kept in GCS functional by bringing it to a common point and regular form, and bringing this common point to a common point in the codes related to the project.
      • Bringing the language structure to a single point and standardizing the data structure.
      • Providing CORS configurations.
      • Removing things that are not used in the project and things from the past and making the project directories common with the other project.
      • Adding the stubs required for the Repository Design Pattern and ensuring that these stubs are added according to the modules.
      • Switching from localization json to array and setting up the usage structure
    • Refactoring of existing SM projects by switching to new laravel project from scratch.
      • Writing Permissions system according to existing databases. No packages are used. Permissions system is written in a very detailed way and everything up to Middleware is written from scratch. Because it has a unified structure with RDP. For example, in a select query, data comes according to the columns that the user is authorized. When a record is made, there are many specific situations such as the user can record in the columns that the user is authorized.
      • Making stubs for Repository Design Pattern.
      • Making the language language to control from a common point.
      • Making the structure that will provide returns to the frontend side according to the common data model.
      • Making dynamic structures to provide returns according to authorizations in datatables.
      • Ensuring the management of all errors in Handler.
      • Transferring the features in the old project by refactoring according to the new project.



    CUZDAN Elektronik Para ve Ödeme Hizmetleri
    04.2021 - 05.2022 (2 Months)
    PHP Developer

    Job Description: Development of existing finance projects.
    Detail: Improvement of existing features and development of new features of SOA / Microservices based project.
    • Development of a feature for document upload, classification and management.
    • Making corrections to existing features.


    IDEASOFT
    08.2022 - currently working
    Full Stack Developer

    Comments

    BUNLARADA BAKMAK İSTERMİSİN ?

    PC Remote Control Wifi PRO Android (Kotlin) & C# WPF

    Vocabulary Memorization App for ANDROID&REALM

    LCD PANO - Raspberry Pi 3 Php,Jquery Ajax,Mysql