Hi, I’m a full-stack software engineer in Ljubljana.
I always try to do my work with engineering principles, plan in advance, split into parts, prioritize, decouple and test. Although there is no limit of learning and the entire stack nowadays is too deep and wide for a single person, I would like to know as many things as possible, and enjoy learning. This is why I read a lot about recent trends and techs, such as devops, containers, serverless, machine learning. One can use any knowledge at any point in his life.
Backend Development12+ years
My backend experience is mostly based on php, and I am still actively coding in php7. I enjoy writing object-oriented, readable, and maintainable code. I often avoid reinventing the wheel unless it is really neccesary, so I usually use frameworks in combination with well written composer libraries to accomplish my tasks. I used zend framework and phalcon for a long time, and learning laravel and zend-expressive recently. I am also quite interested in async php and swoole project which brings coroutine functionality to php.
Frontend Development13+ years
Database Design9+ years
I have been using mysql since 5.1, and now embracing 8.x. I have designed and optimized multi-tenant saas databases, from query/index optimizations to kernel tuning and high availibility. I managed 300+ databases per node in a replicated environment with read-write split, which made me experience lots of database issues and os-level problems as well as their solutions. Although I am not a database specialist nor a dba, I am quite interested in database technologies. I think a database is the most important part of today’s software, and I believe every developer should know how it works and how to use it properly, even if there are other people who deal with it. Baside mysql, I also use nosql databases such as mongodb, redis and firebase. As I am interested, I regularly read database blogs and keep up with new trends.
Software Engineer & Consultant
January 2015 - Present
Moving on as a remote coder
Currently, I work from home as a remote software engineer, consultant and sometimes freelancer. When I am not working, I deal with my hobbie projects, arduino, contribute to open source and improve my coding skills by practicing algorithms.
Lead Software Developer
June 2008 - Present
Solving problems of medium to large businesses by creating ad-hoc solutions within a smart business intelligence platform
I have been responsible for the core development of KivaCRM cloud based PaaS/SaaS product, its BI/CRM tools and primary mobile apps as well as leading a team of few people.
I have been developing the primary web app since the beginning with extjs frontend, and php backend. I developed various services including websocket based real-time notification system, automated workflow system, email/sms marketing services, task/event management, reporting/analytics and so on. I created advanced reports & analytics platform from highly relational datasets in mysql to provide advanced BI experience. I’ve learned lots of tech stacks during development, some of which are zend and phalcon php frameworks, gearman job queues, nodejs, socket.io, firebase, sphinxsearch etc.
I developed multiple side projects/plugins, such as facebook lead integrations, microsoft office addins and 3rd party integrations. During development I have learned lots of 3rd party APIs such as facebook graph api, ms graph api, ms com library for office addins etc.
I also developed few hybrid mobile apps written in extjs/sencha-touch and framework7, built natively with cordova/phonegap.
Freelance Web Developer
June 2005 - June 2008
Stepping into the world of coding as a young student
This was the time I started using my fresh coding skills in real-world scenarios. I did typical freelance projects such as building company websites, ad portals, adding small features or fixing bugs in legacy projects. During this period, I created my first open source project, -an ajax library for php- phplivex when concepts like ajax just became popular. I stopped developing it a few years later with the adoption of jquery and similar libraries.
Istanbul Technical University
BSc Control Engineering
2008 - 2013
Established in 1773, ITU (http://global.itu.edu.tr) is one of the oldest universities in Turkey, and is mostly known for its engineering studies.
During my study, I learned control theory and its applications in real world problems. I wrote PLC programs in ladder and procedural languages to control electromechanical systems. Although it is not directly connected to my occupation, I’ve learned theories and practical skills that helped my programming career. I believe that embracing engineering discipline and control theory made my coding skills and algorithms much better.