Resume

My interest in computers started long ago when I was 12, in secondary school, learning gwbasic on IBM PS/1 machines in programming classes. Soon after, in high school, I learned C, Pascal, Assembly languages and microprocessor architecture (Z80) and micro-controllers (PICs).

My favourite programming language is Python. I have more than 10 years experience in Python. I have built many kinds of web applications, system daemons, automation tools in Python. I have completed many projects using well known Python web frameworks, such as Django, Flask, Tornado, Falcon.

Besides Python or any other programming languages, web applications require a holistic know-how which is composed of many programming languages, protocols and conventions, such as html, javascript, css, tcp/ip and http protocols, websockets, rest, soap and etc. Since 2002, especially as a freelancer, I have worked for numerous projects which required different subsets of these technologies.

I use GNU/Linux (Arch) on my laptop pc and I am able to manage Linux systems and tune various kinds of services on it. I can write Bash shell scripts. I am familiar with virtualization, containerization concepts and actively use them in development, testing and production environments.

During the last 4 years in an R&D company, I worked as lead developer and project manager and I had a chance to improve my management skills. Eventually, after those many years, I learned why the essentials of computer science and engineering are so important, like data structures, algorithmic thinking, design patterns, differences of object oriented and functional programming patterns and system architectures.

I am an enthusiast and contributor of Open Source and Free Software projects. I preferably follow the development and management patterns of Free and Open Source principles.

experience

  • Freelance Developer

    SEPTEMBER 2018 - CURRENT

    I am working on a couple of projects and looking for new ones for 2019. Some of my latest works:

    • [Active] Cloud & Edge Seamless connectivity research proejct.

      We are working on to create mesh networks among huge amount of mobile devices with many connectivity issues.

      Kubernetes Service Mesh (Envoy) Golang

    • Rainkube: is Tokyo based RainLab’s brand new Kubernetes / Container Cluster Management solution which is less and less complex than its competitors. It is a quick to start, easy to manage k8s management platform for developers or devops teams.

      This is my first NodeJS project. Despite the project’s complexity, it is easy to work with RainLab’s helpful and experienced folks.

      NodeJS Kubernetes Docker Gitlab CI

    • Speaking Club: is a Brighton based instructional community, consists of professional English teachers and learners. This project consists of a web application, Mattermost server, push server, web / mobile clients and some integration tools between all these services.

      Python Vue Mattermost Redis Kubernetes

    • Image Analysis: is a set of tools to collect, store and transfer data to be analysed from production lines to big data platforms for a Japanese automotive company.

      Python Apache Kafka HTTP2 MQTT IoT

    • Beiran: is a tool for replacing distribution layer of package management systems like docker / k8s images and layers, apt archives, npm packages etc. It is a GPL v3 licensed open source project. Please see Beiran project page here.

      Python P2P Netwok Docker APT Kubernetes

    • Redmine Customization: Desingning, optimizing and implementing workflows on well known project management tool Redmine and developing required small customizations for an advertising agency and printing house.

      Redmine Business Analysis Workflows

  • Zetaops AS, Urla — Lead Developer and Project Manager

    OCTOBER 2014 - JULY 2018

    It was an R&D company, I led and manage 2 different projects, University Automation (Academic ERP) and a Messaging Platform including real time online chat, push notifications, sms messages. Key technologies that we produced or used:

    • We developed a BPMN driven web framework, named zengine, to develop workflow based application on top of it.

    • We developed django es que Object Relational Mapper tool, pyoko for Riak KV which is a distributed, highly available key value storage and it was our main database solution.

    • We used Redis for caching, Redis and Rabbit MQ for messaging among microservices.

    • Microservice Architecture was one of our key features. I designed these architectures by splitting or reducing features, sharing jobs between services and planning job queues.

    • For a while I did devops and Buildbot, Chef, Ansible, Pyresttest, pylint were key technologies for our CI / CD operations.

  • Freelance Developer

    JUNE 2002 - OCTOBER 2014

    Some kind of projects and applications that I have experience:

    • Content Management Systems

      Designing data architecture of any kind of content and creating online web sites for news portals, event / organization portals, enterprise contents, product and service catalogs etc.

    • B2B (business to business) systems and online payment integrations

      Developing B2B portals for companies which have resellers and distributors and virtual pos (debit / credit cards) or other 3rd party (paypal, ) integrations for payment.

    • B2C and ERP integrated B2C

      Developing online stores and integration with ERP systems. (generally soap / rest, or provided API in whatever language ERP is.)

    • Barter Trade automation for B2B

      Barter trade is a kind of B2B model with a broker to ease process and provide trust between peer companies. Designing workflows and developing barter automation.

    • Mobile Applications

      Online learning and tests applications.

other skills and experience

  • Linux System and Service Management Experience

    • Debian, Ubuntu, CoreOS and CentOS (installation / configuration)
    • Nginx, Apache, HaProxy web server and proxy management
    • Openstack / Openstack API (installation, manage with python client, automate with chef knife client, ansible)
    • Docker containers and Kubernetes
    • Consul, Etcd, fleet, confd, registrator on CoreOs to manage distributed and highly available containerized environment.
    • Buildbot Continuous Integration Framework to automate CI and CD
    • Chef / Ansible
  • Code and Project Management Tools

    • Redmine / Redmine API
    • Git / Git workflows
    • Github, Github API - Gitlab, Gitlab CI
    • Buildbot CI and Jenkins
  • Documentation Tools

    • reStructured Text
    • Python Sphinx
    • Markdown
    • Latex
    • PUML / UML

education

  • 1995 – 1999 Tuzla Anatolian High School, Department of Computer
  • 1999 – 2002 University of Dokuz Eylül, Department of Computer Education and Instructional Technology, İzmir. dropped out 3. class
  • 2007 – 2011 University of Anadolu, Economy, Economy Faculty

languages

  • Turkish (Native)
  • English (Advanced)
  • Spanish (Intermediate)

interests and activities

  • Linux and free software communities
  • Member of Linux Users Association(LKD) /Turkey
  • Co-founder of Alternative Informatics Association /Turkey
  • Co-founder of the first HackerSpace in Turkey.
  • Member of Zirve Mountaineering Association
  • Mountaineering, hiking, trekking, cycling