Resume

About

Passionate full stack web developer. Perfectionist trying to find a balance between quality, deadlines and requirements.

Name ILR CEFR
:ru: Russian 5 C2
:uk: English 3 C1
:kazakhstan: Kazakh 1 A2

Work

  • Petropavl
  • April 2016 - Present
  • 2 years 1 month

Informational and analytical resource about agriculture in Kazakhstan. The customer already had site written in Joomla, but was not satisfied with its work and support. Planned ideas and improvements would be hard to implement using Joomla. Because of that the decision was taken to completely rewrite it using Django and PostgreSQL and make improvements after that.

Website: https://margin.kz/

Position: Web programmer

Technologies:

  • Python
  • Django
  • PostgreSQL
  • Nginx
  • Gunicorn
  • Ubuntu
  • JavaScript
  • jQuery
  • React
  • HTML
  • Bootstrap
  • Sass
  • Gulp
  • Webpack
  • Capistrano

Tasks:

  • Full rewriting of the existing company site based on Joomla in Django from scratch, migrating of all existing data.
  • Configuring web server.
  • Basic SEO related work. Improving urls and redirects setup.
  • Working with design and layout after project's launch.
  • Improving existing functionality (including "News" module).
  • Developing new functionality (including "Agrarian map", "Trading platform", "Subscription", "Stats" modules).

Highlights:

  • Developed a few custom form fields (image crop, location picker, etc.)
  • Added grouping of enterprises by settlements on agrarian map.
  • Implemented moderation for some site's objects.
  • Limited access to some site's functionality using custom permissions and policies.
  • Added e-commerce component - combined modular subscriptions and subscriptions to objects of different types, integrated payment through credit cards (VISA, MasterCard).
  • Organized collecting, editing and viewing of a big amount of statistical data from various sources.

Results:

  • New site was released in May of 2016.
  • Traffic and sales were increased.
  • The site became more comfortable to view because of a new UI and responsive design.
  • Registration and authentication became more user friendly because of adding social auth and extending profile's functionality.
  • Managing content became faster and more comfortable.
  • The site became more secure, pages started to load faster.

Achievements:

  • Programming in Python and Django.
  • Learning ES6 and React.
  • Migration of site and data.
  • Configuring VPS from scratch.
  • Setup of production environment for Django site.
  • Petropavl
  • December 2013 - April 2016
  • 2 years 4 months

FORA company is one of the largest sellers of electronic equipment in Kazakhstan. Has many branches across the country. Backend programming in Yii 1 and Yii 2 PHP frameworks. Frontend programming and some work with layout using JavaScript, jQuery, AngularJS, Bootstrap 2 and 3.

Legal name: Baza MTO, LLC

Website: https://fora.kz/

Position: Web programmer

Technologies:

  • PHP
  • Yii
  • Silex
  • PHPUnit
  • Codeception
  • MySQL
  • PostgreSQL
  • Nginx
  • Apache
  • PHP-FPM
  • memcached
  • Redis
  • RabbitMQ
  • Ubuntu
  • Debian
  • JavaScript
  • jQuery
  • AngularJS
  • HTML
  • CSS
  • Bootstrap
  • Sass
  • Grunt
  • Deployer
  • Jira

Tasks:

  • Support and improvement of main public company site - fora.kz (e-commerce). It was built with Yii 1, then was rewritten in Yii 2 (upgrade to newer version was fully completed only after my leaving). API part was written using Silex.
  • Work on public company job service - job.fora.kz (development from scratch, support). Built with Yii 2.
  • Work on internal ERP system - development from scratch according to company specifics and needs. Built with Yii 2 and PostgreSQL. Modules development and support. Synchronization with 1C. System was introduced and required for usage for every employee.
  • Work on other internal projects intended to automate and optimize work of employees inside the company (including guarantee and repair service, advertising).
  • Writing wiki documentation and tutorials for employees about how to use company's internal web services.
  • Consulting of employees about problems and usage of company's internal web services.
  • Participating in testing and choosing candidates for web developer position.
  • Teach and control new junior developers.
  • Rewriting legacy code, upgrading to newer versions of used technologies.

Highlights:

  • Developed "Testing" module for ERP system which was intented to periodically check professional suitability and knowledge of employees from different departments. It can handle pretty complex types of tests, filling data is possible with either easy-to-use GUI (AngularJS based) or importing Excel file using yii2-excel extension which I developed during work on this module. Test passing also involves a lot of JavaScript for better UX. Detailed statistics is avalable for inspectors.
  • Implemented subordination graph for ERP system to be able to get each employee's chiefs and subordinates based on data in 1C. The structure couldn't be presented as tree (employee could have multiple chiefs, relations were set using different factors - departments, geographical location, etc.). This graph then was integrated into permission system to regulate access of different employees to specific parts of the application.
  • Implemented "Procedural Tasks" module for ERP system for setting and tracking periodical tasks for employees.
  • Implemented deferred tasks functionality to run tasks for specific employye(s) at specific date and time. Such tasks include setting of auto remarks and sending notifications. Used Redis and Supervisor. This took off a lot of additional load from the server (cron was used before) and tasks began to run more precisely and in due time.
  • Created component for building complex forms (multiple related formsets with dynamic number of additional forms in it) and used it in few projects.
  • Developed model life cycle component, used it mostly in guarantee and repair service project.
  • Implemented algorithm of calculating business days in given date range and used it for statistics in fora.kz site.
  • Automated deploy of the projects using Deployer.

Results:

  • fora.kz helped to increase sales and company's income.
  • With appearing of job.fora.kz the number of sent resume was increased.
  • With distribution of internal projects many processes inside of the company was optimized and work of employees became more automated.
  • After adding tracking of working hours and adding remarks system in ERP (which affects salary) working discipline became better, number of cases of coming late was reduced. Encouragements system helped employees to be more motivated.
  • After creating subordination graph and presenting new permissions system in ERP some flaws were found in company structure and the structure was redesigned to be more optimal.
  • ERP helped people to stay more informed, better know and communicate with each other (especially with branches).

Achievements:

  • Reached completely new level in work with PHP - learned OOP, MVC, some design patterns, frameworks Yii 1 and Yii 2, PHPDoc, PSR. Development on the latest versions at that time (5.6), with usage of their features.
  • Improved working with layout skills, started to use Sass, CSS frameworks - Bootstrap 2 and 3, Grunt for building project assets.
  • Improved JavaScript and jQuery skills, used AngularJS and some libraries for solving certain tasks.
  • Started to use more convenient development tools intended to ease setup and work in development environment, such as Vagrant and Puppet (with PuPHPet).
  • Started to use Git and GitHub.
  • Usage of Jira tracking system, Agile methodology (Scrum).
  • Have got Debian and Ubuntu OS administration skills, improved related software configuring skills.
  • Have faced with PostgreSQL RDBMS, used some unique features of it in developed projects.
  • Started to test written PHP code using PHPUnit and Codeception.
  • Developed few extensions for Yii 2 and used it in company projects.
  • Started to contribute to StackOverflow, earned "yii2" tag gold badge and became top user by "yii2" tag.
  • Usage of wide set of auxiliary libraries and components.
  • Petropavl
  • November 2012 - November 2013
  • 1 year

INSY company is a website developing company based in Petropavl, Kazakhstan. Services also include mobile applications development, creation of logos and corporate style. Work on company projects in PHP based CMS (UMI.CMS and 1C-Bitrix). Full company portfolio can be found here.

Legal name: INSY, LLC

Website: http://insy.kz/

Position: Programmer-analyst

Technologies:

  • PHP
  • UMI.CMS
  • 1C-Bitrix
  • MySQL
  • Apache
  • CentOS
  • JavaScript
  • jQuery
  • HTML
  • CSS

Tasks:

  • Working with layout.
  • Participating in prototyping of graphic design and UI.
  • Minor graphic design fixes.
  • Programming (including non-standard CMS functionality) using PHP, UMI.CMS and 1C-Bitrix API, also JavaScript and jQuery.
  • Support of the existing company projects.
  • Work on internal company's CRM - improving existing modules and developing new ones.
  • Writing wiki documentation for internal usage.
  • Content management, rewriting, copywriting, editing product images.
  • Basic SEO and SMM.
  • Communication with the clients.
  • Helping new junior developers.

Highlights:

  • Created miltiple currency plugin supporting synchronization with actual currency rate.
  • Implemented catalog filter component with support for complex search combinations, different types of inputs (according to CMS data types), easy layout integration.
  • Implemented custom integration with 1C for some sites.
  • Filled products catalog completely for one of the projects - mchip.kz (about 2000 products).
  • Integration of payment systems (VISA, QIWI, KASSA 24) and delivery services (Exline).
  • Added notifications in CRM (including sending messages to XMPP).
  • Created mail module in CRM to optimize work with emails and better collaborative actions.
  • Provided limited access to CRM for customers to be able to view some information (including tasks and their state).

Results:

  • Released some sites that help customers to promote and expand their business.
  • Optimized communication with clients and internal company work processes with CRM.
  • Sped up the development process with a set of created plugins (products catalog filter, multiple currency plugin, product images gallery and others) for UMI.CMS.
  • More orders from different cities.
  • Rating among the other certified companies working with these CMS was increased.

Achievements:

  • Working with layout skills (HTML, CSS) and programming (PHP, JavaScript, JQuery) were considerably improved.
  • Learned UMI.CMS and 1C-Bitrix, used it to develop non-standard functionality.
  • SQL and MySQL knowledge was improved.
  • Have mastered XSLT.
  • Have got basic skills of administrating CentOS and configuring related software.
  • Started to use VCS - Hg (Mercurial).
  • Active participation in company's life, initiative manifestation.
  • Improved skills of communication with customers.
  • Petropavl
  • August 2011 - October 2012
  • 1 year 3 months

Bars Stroy company is a construction materials seller. Has some branches across Kazakhstan. Improvement and support of the existing main company site based on UMI.CMS (PHP).

Legal name: BARS-NORD, LLC

Website: http://bars-stroy.kz/

Position: Web technologies specialist

Technologies:

  • PHP
  • UMI.CMS
  • MySQL
  • JavaScript
  • jQuery
  • HTML
  • CSS

Tasks:

  • Working with layout.
  • Minor graphic design fixes.
  • Programming - fixing bugs, development of new functionality using PHP and UMI.CMS API, also JavaScript and jQuery.
  • Integration with 1C (products, prices, availability, etc.).
  • Content management.
  • Rewriting, copywriting.
  • Hire of the copywriter and control of his work.
  • Filling of the products catalog.
  • Photographing of the products and editing of the taken photos.
  • Basic SEO.
  • SMM (mainly in "Moy Mir" social network).
  • Corporate mail setup for employees.
  • Clients support in social networks.
  • Participating in planning company budget related to the site.
  • Participating in meetings - reporting about made work, suggestion of new ideas.

Highlights:

  • Integrated products catalog with 1C.
  • Filled almost all products (about 7000) for retail sale.
  • Fixed many bugs left since site creation.
  • Developed a job module with actual vacancies list and sending resume feature.
  • Wrote company history article (interviewed administration, collected data from archives).
  • Collected and edited photos of key employees (took missing photos) together with info about them, then filled "Our employees" page which reflected company structure including different departments.
  • Wrote some news, photos were taken where the events took place.

Results:

  • At that time site was the best among the rival companies in Petropavl and helped to stand out from them.
  • Filled products catalog was useful for both customers and company managers and sellers.
  • Filled products catalog in the future became a solid base for e-commerce (after my leaving, because at the moment of my work administration was not ready to create it yet).
  • Automation of HR department's work, number of candidates was increased.
  • Site appeared in top 10 in Google and Yandex search at certain queries.

Achievements:

  • Improved knowledge of HTML, CSS, PHP, JavaScript, jQuery.
  • Have got good experience with UMI.CMS.
  • Work was versatile (because I was the only one working with site, at the end designer helped a bit) and wasn't limited to programming only: editing images skills, SEO knowledge were improved, learned a lot of new information about construction materials.
  • Have got communication experience with people of different positions and from different departments (including meetings, etc.) and clients during answering and consultations through messengers and social networks.
  • Showed initiative in many questions related to site.

Education

  • Petropavl
  • September 2007 - June. 2011
  • Diploma with honors

Institution: North Kazakhstan State University, named for M. Kozybaev

Area: 050602 - Computer Science

Degree: Bachelor

GPA: 3.81

# Code Name
1 WD3222 Web-Design
2 Alg1204 Algebra
3 AS2215 Algebraic Structures
4 ASD2213 Algorithms and Structure of Data
5 AVR4309 Analysis of Temporal Series
6 AKS1218 Computer System Architecture
7 Geo1205 Geometry
8 DMML2210 Discrete Mathematics and Mathematical Logic
9 DU2206 Differential Equations
10 DGML3219 Supplementary Chapters on Mathematical Logic
11 ZI4220 Information Security
12 IYa1103 Foreign Language
13 Inf1104 Computer Science
14 KYa1102 Kazakh Language
15 MSKG3221 Computer Graphics
16 KS3304 Computer Networks
17 MMPP4314 Mathematical Models of Production Planning
18 MAAF1202 Mathematical Analysis. Analysis of Function with one Variable
19 MAAF2203 Mathematical Analysis. Analysis of Functions with many Variable Quantities
20 MAVA1201 Mathematical Analysis. Introduction to the Analysis
21 MM3216 Mathematical Modeling
22 MPI3214 Teaching Methods of Computer Science
23 MOIO3209 Methods of Optimization and Operations Research
24 OOP3301 Object-Oriented Programming
25 OS2303 Operating Systems
26 OBZh4112 Bases of Life Safety
27 OP1108 Basic Law
28 OS2306 Bases of Circuitry
29 OET2107 Bases of Economic Theory
30 PV4305 Parallel Computations
31 Pol3109 Political Science
32 SP2302 System Programming
33 SII4308 Artificial-Intelligence Systems
34 Soc3110 Sociology
35 SA4311 Statistical Analysis
36 TBD3307 Data Base Theory
37 TVMS3211 Theory of Probability and Mathematical Statistics
38 TG3217 Graph Theory
39 TYaA2212 Language and Automatic Machine Theory
40 Fil2106 Philosophy
41 ChM3208 Numerical Methods
42 Eko1105 Environmental Science
43 EPDO1111 Ethics and Psychology of Business Communication
44 YaTP2207 Programming Languages and Technologies
45 IS3310 Information Systems (Course Project)
46 Mat2312 Mathematics (Course paper)
47 PM4313 Applied Mathematics (Course paper)

Skills

Programming languages

  • PHP
  • JavaScript
  • Ruby
  • Python
  • Node.js

Frontend

  • HTML
  • CSS
  • Sass
  • Bootstrap
  • Grunt
  • Gulp
  • Webpack
  • jQuery
  • AngularJS
  • React

Web frameworks

  • Yii
  • Ruby on Rails
  • Django

Databases

  • MySQL
  • PostgreSQL
  • Redis

Web servers

  • Nginx
  • Apache
  • Unicorn
  • Gunicorn

Version control systems

  • Git
  • Hg (Mercurial)

Operating systems

  • Debian
  • Ubuntu
  • CentOS

Work automating

  • Vagrant
  • Puppet
  • PuPHPet

Caching

  • memcached

Queue systems

  • RabbitMQ

Miscellaneous

  • XSLT

Extra activity

  • Stack Overflow contributor. First user by yii2 tag. First user among the members from Kazakhstan.

  • Open source contributor (mainly to Yii 2 PHP framework).

References

Alexander Makarov

core developer of Yii Framework

Alexey contributed significantly to Yii PHP framework last year. I can mention that his communication style stands out. Very calm and reasonable. Mind is sharp about problem-solving and approaches are good. Based on best practices and experience. Besides regular PHP stuff he did a very important job of refactoring JavaScript part and covering it with automated tests properly which usually is the part lazy developers try to avoid. It was a pleasure to work with him and I hope to do it again.

Alexey helped us rewrite our site margin.kz from Joomla to Django, improve functionality, fix bugs and migrate all existing data. Traffic and sales were increased. Alexey is always ready to help, explain and recommend the more suitable way of solving problem. He is thoughtful and experienced programmer, also punctual and responsible. We are happy with his work and support of our site.

Interests

Show text

Sports: :muscle: :man_cartwheeling: :runner: :bicyclist: :snowboarder: gym, yoga, running, cycling, snowboarding

Foreign languages studying: :uk: English

Photography: :cherry_blossom: nature

Psychology: :newspaper: :books: articles, books