Ilia Barkov
Software Engineer
Team Leader
Architect
Linux/MacOS
23 Years of Experience

ILIA BARKOV @ ReturnPro

Enterprise Scale-out Architect / SEO Expert

We develop HA B2B/B2C marketplaces with advanced selling business tools like Auctions and WMS

More about me

Business objectives & Software life cycle

Planning & Estimation

BI Demands / Planning

Business process research,
UML Diagrams, Agile,
Atlassian tracking

Flow

Process Flow

Git flow, QA flow, Jira flow, GitLab, GoGS, Zendesk, Agile / Waterfall

Software Architecture

Software Architecture

Distributed NoSQL/RDBs, Queues, ESB, SaaS/PaaS, Clustered caching, AWS, Cloud, Computer Science, Algorithms

Services Architecture

Service Architecture

Business objectives decomposition, DDD, CQRS, Event sourcing, 2PC, Circuit Breaker, AutoDiscovery/Consul

Development

Development

PHP 5-7-8, Python, Go, node.js, bash, jQuery, HTML5, CSS3, Laravel, WooCommerce, ELK, Manticore, Aerospike, NSQ, RabbitMQ

Continuous Integration

QA & CI / CD

GitLab CI, Code review, Big Θ, Codestyle, PSR, PHPUnit, Auto tests, QA tests, Drone.io, Docker, Kubernetes

Load impact & Highload

Load impact & Highload

GCP, k8s, balancers, DNS Load balancer (Round robin), Memcached Router, Redis

Monitoring / Logging

Monitoring & Logging

Thanos, Zabbix, Grafana, NewRelic, Prometheus, Sentry, ELK

Monitoring / Logging

Release & Deploy

Release strategy, Kubernetes, Drone.io, Clouds

"It always seems impossible until it's done"

Mastered w/o AI

Code Lines w/o AI

2,082,975

Code Size Created w/o AI ~

~183 Mb

Personal Projects

>35

Working Hours

107,274

Experience

June 2005 - Jan 2007

Web sites development

Freelance

CRM, online shops, modeling agency website, small scripts, PSD cut, etc

Jan 2007 - Dec 2007

Web development studio

Pyrogroup (RBC "Media World")

Community module development (PHP), PostgreSQL scheme, setup, vacuum, etc

Jan 2008 - Jul 2010

Team leader

DealItLive.com

B2B video auctions platform. Server side development, interviews and management

Jul 2010 - Feb 2011

Server side php developer

MANGOPlay (VK.com flash games)

Backend game mechanics development

Experience

Feb 2011 - Aug 2014

Web sites development & SEO Expert

Freelance

Web-nets, parsers, websites creation automation, monitoring and cloning tools

Aug 2014 - Dec 2014

Senior PHP Developer

MegaKupon

Backend development, fixes, releases, servers setup, mailing server setup and management

Mar 2015 - Current

Senior/ TL -> Architect / SEO Expert

ReturnPro

B2B/B2C marketplaces development and support

Development

GO / PHP

Frameworks / Microservices

HTML5 / CSS3 / JQuery / React

Python, Node.js, bash, helm

DataBases / Queues / Caching

MySQL, PostgreSQL, MariaDB

MongoDB, ElasticSearch, Aerospike, Manticore

RabbitMQ, Apache Kafka, NSQ, Redis

Memcached cluster, Redis, Varnish

Services, CI / CD

Git, Git Flow, GitLab, Gogs

Docker, Kubernetes, Drone.io, GitLab CI, Consul

Kibana, Logstash, logrotate, Newrelic, Sentry, Thanos

Code

- PHP 4, 5.6 + GD, caching, db, etc modules
- PHP 7.0 - 7.4, 8, SPL, APCu, OPcodes, OPCache
- Laravel, Phalcon, ReactPHP, WooCommerce (eCom)
- ODM/ORM (Sokil, Phalcon, Doctrine)
- Profiling: XDebug, xhprof, KCachegrind, BlackFire
- PHPUnit unit/integration tests
- JavaScript, jQuery
- HTML 5.0, CSS 3, Flexbox, Micro, Bootstrap
- Angular JS basics + ReactJS
- Json, JsonScheme, Markdown gen (+MsgPack)
- PSR and best practices updating
- SOLID, patterns, Robert Martin "Clean code"
- Thomas Cormen "Introduction to Algorithms"

RDB, NoSQL, AMQP, Caching engines

- MySQL slave/master master/master, utf8mb4
- Percona Tools
- PostgreSQL, json indexing, vacuum
- MongoDB, shards, events, transactions
- Redis, clustering, Predis queue
- Memcached clustering ( FB Mcrouter )
- Aerospike
- ElasticSearch shards, mapping and stemming
- Manticore Search
- RabbitMQ, NSQ
- Apache Kafka
- ACID, 2PC, CAP, eventually consistency
- Martin Fowler books

Services, CI / CD, Metrix

- AWS Common (EC2, S3, SQS)
- Algolia (Elastic search engine)
- Composer, pear, apt, etc
- Docker + docker-compose
- Kubernetes, helm charts
- Consul
- Nginx + plugins, balance loading, upstreams
- Git, Subversion, Git Flow
- GitLab CI, Runner, DinD
- Gogs + Drone.IO
- Payment and antifraud systems integration
- Kibana, Logstash, Elastic
- Newrelic, Prometheus, Sentry

Data

- Lots of parsers via php/python/webkit
- Data enrichement, mapping, merge
- Affiliate programs and automatization
- BigData understanding
- SKU update: 1 million per day
- Hashing and strings algorithms
- Email tracking and Click Maps
- Data/Event/Sequenses diagrams
- Cluster storages, NAS, Cloud, git-lfs

System

- Mac OS / Server from 2009
- Linux Ubuntu/Centos from 2007
- Linux performance optimize
- Bash scripting
- Sysdig
- Cron, flock, daemons, selfchecks, supervisor
- Logrotate
- Postfix + OpenDKIM
- Core Debug + Python frame decoding

Other

- Python 2x, Tornado, pyspider
- Python 3x, transfomers, AI
- Agile/Scrum/Kanban/Jira
- SRS (tech specs docs / calculations)
- GoLang
- Confluence
- Google/Yandex SEO exp, snippets, microdata
- UML
- Martin Fowler "Enterprise architecture patterns"
- "Refactoring", "Continuous integration"