Працював в 5 компаніях 6 років 3 місяці
IT
Middle Node.js Developer
Skillwebquality
IT
1 рік 6 місяців
06.2023 - 12.2024
Project: Online gambling platform
Development and implementation:
• Creation and integration of business solutions, design and implementation of microservices architecture:
1. Participated in the development and integration of key business logics and functional requirements into the product, ensuring support for various operations and settings, tailored to business needs.
2. Developed and implemented a microservices architecture, based on HTTP/2 gRPC . (Google Remote Procedure Calls) and RabbitMQ, enabling scalability and fexibility of the system, as well as enhancing service-to-service communication.
3. Used gRPC for high-speed and effcient communication between microservices, which enabled the reduction of latency and a signifcant improvement of a system performance.
4. Implemented asynchronous communication via RabbitMQ, improving system fault tolerance and ensuring reliable data processing under high load conditions. (When working with events and delayed handlers).
• Integration with game vendor of Stolegator - for retrieving/updating game list
• Development of fexible game confguration functionality.
• Development of user management functionality.
• Creation and design of user events and notifcations for interaction with the user in both manual and automated modes.
• Integration of Push-messages via Firebase, and implementation of a system for personalized notifcations, based on user preferences, which improved platform response and engagement.
• Development and design of a PSP (Payment Service Provider) module for fexible payment method confguration, which includes:
1. The ability to activate and deactivate payment methods, depending on geo-location, currency and individual user limits, providing precise confguration of deposit/withdrawal payments for particular user.
2. The ability to edit payment system parameters – an interface was created for managers, enabling them to modify payment method data (API keys, security settings, and other parameters), ensuring quick adaptation to changes from payment service providers without developers’ intervention.
3. Ability to manage payment methods at the primary-secondary deposit level with the introduction of a confguration to select the required payment type, improving payment success rate.
• Creation and design of a factory for integrating payment providers.
• Implemented and designed of a system for handling various payment types, including deposits, withdrawals and transfers, with integration of popular payment providers and aggregators like: CoinsPaid, A-Pay, Colibrix, Astro-pay, EzeeWallet, Interac, Jeton, Paygame, Mandato, Paysoft, Praxis, Paylink, Skriill .... and others.
• Integration of Sumsub for KYC (Know-Your-Customer) - verifcation of users, implemented an automated user verifcation system, speeding up the verifcation process for users.
• Integration of Customer.io, enabling the creation of personalized notifcations and automated mailings, based on behavior of users.
Languages/technologies/tools: Node.js, MariaDB, MongoDB, PostgreSQL, Redis, RabbitMQ, gRPC, Protobuf, Restana Node.js framework, exceljs, node-schedule, Slotegrator API, Sumsub API, Customer.io API, GIT, Docker.
Operating systems: Linux (Ubuntu), Mac OS.
Middle PHP developer
NDA
IT
2 роки 8 місяців
07.2020 - 03.2023
1. Project: Client voip SaaS application
Voip (Voice over internet protocol) SaaS system for business with the ability toindividual easy configuration of IP telephony systems such as: PBX and asteriskservers.
Development and implementation:
• Application architecture design;
• Integration of the customer’s business ideas into the application;
• Creation of connection and further interaction with the Asterisk serverthrough AMI (Asterisk manager interface);
• Creation of a user environment in which is implemented separation users intogroups and roles;
• Creation and design of call routing functionality;
• Creation and design of the functionality for working with user scripts forincoming calls, dynamically changing their behaviour through editing static xmland blade configuration files;
• Creation of a Websocket server (NodeJS) which was necessary for:
1. Work and tracking events from the Asterisk server;
2. To track events from the main server (via Redis events);
• Creation of functionality for flexible configuration and management of theAsterisk server through the user interface;
• Setting up an SMTP server and developing functionality for sending emails tousers;
• Creation of functionality for working with internal numbers and providers ofvoice transmission services;
• Designing the BD architecture and performing BD scaling by means ofreplication and partitioning;
• Creation of integration with CRM systems of clients;
• Development of functionality for remote firewall configuration on the server;
• Writing modular (phpUnit) and End-to-end testing (Codeception);
• Writing technical documentation (Swagger);
Languages/technologies/tools: PHP: 7.4, Node.js (Express), Redis: 6, MariaDB: 10,Nginx, Laravel: 8, Swagger, Composer, NPM, GIT, Docker, PhpStorm, Xdebug.
Operating systems: Linux (Ubuntu), Mac OS.
________________________________________________________________________________________
2. Project: Internal (main) server
Internal server for configuring, interacting and updating client servers.
Development and implementation:
• Application architecture design;
• Creation and design of the functionality of automatic deployment of the client server, which includes:
1. Flexible server creation via RestApi offered by cloud service providers;
2. Domain name registration;
3. Development of the client application using Ansible;
• Creation of the functionality of interaction with client applications through RestApi and RabbitMQ workers, which includes:
1. Updating and changing data on client servers;
2. Summary and calculation of the balance;
3. Generation of documents in PDF format;
• Creation of handlers for working with API providers of IP telephony for further delegation when working with them;
• Creation of functionality for ensuring automatic work with IP telephony
Back-end developer
BINTIME
IT
6 місяців
11.2019 - 05.2020
B2B platform with multi-tenancy support.
Development and implementation:
• Optimization of existing company’s projects.
• Developing new features.
• Developing modules.
• Performing code refactoring and optimization.
• Document and test coding.
• Bug fixing.
Languages/technologies/tools: PHP: ^7.0, RabbitMQ, Redis, MongoDB, Nginx, Yii2, Swagger, Composer, GIT, Docker, PhpStorm, Xdebug.
Operating systems: Linux (Ubuntu).
Student
UNIT Factiry
IT
7 місяців
04.2019 - 11.2019
I've done four non-commercial web projects in UNIT Factory (School 42 in Kyiv), such us:
1) Package for JWT Authentication
(10/2019 - 10/2019)
- Simple JSON Web Token Authentication for Laravel.
- https://github.com/Aikrof/jwt-auth
- https://packagist.org/packages/aikrof/jwt-auth
2) Hypertube (In this project uses: Laravel framework, VueJs, Bootstrap and NodeJs Express for streaming video)
(08/2019 - 09/2019)
- This project proposes to create a web application that allows the user to research and watch videos. The player will be directly integrated to the site, and the videos will be downloaded through the BitTorrent protocol.
3) Matcha (In this project uses: Laravel framework, jQuery, Bootstrap and Laravel Ratchet for WebSocket server)
(06/2019 - 08/2019)
- The goal of this project is to develop a dating website with a complete list of features including *a live Chat* live interactions (like other users, block them) * or notifications.
- https://github.com/Aikrof/Matcha
4) Camagru (In this project uses MVC pattern written in php and pure javascript)
(05/2019 - 06/2019)
- Is an Instagram-like website. It allows you to take pictures with your webcam or upload one, and add beautiful filters on it.
- https://github.com/Aikrof/Camagru
Student
UNIT Factory
IT
7 місяців
09.2018 - 04.2019
Algorithmic projects (C language)
- Libft (My own implementation of libc functions)
- Get Next Line (Function that reads from a file descriptor)
- Fillit (This program will take a file as parameter, which contains a list of Tetriminos, and arrange them in order to create the smallest square possible)
- ft_printf (My own implementation of printf function)
- Filler (Creating a bot player that plays against another bot on the map)
- Lem_in (This project is a game about ant farm. Its goal is to find the - shortest path from start room to the end)
- ft_ls (My own implementation of the famous Unix command: ls)
- Fdf (A simple 3D height-map renderer)
Ключова інформація
Main Skills:
- C
- PHP
- PHPUnit
- Codeception
- Laravel
- Yii2
- MySQL
- MongoDB
- Redis
- NodeJS
- Express
- JavaScript
- Git
- Docker
Secondary Skills:
- WebSocket
- Laravel Ratchet (Laravel WebSocket package)
- RESTful API
- Bash
- Composer
- NPM
- VueJS
- jQuery
- JSON
- AJAX
- HTML5
- Bootstrap 4
- CSS3
- FlexBox
- JIRA
Навчався в 1 закладі
Kiev National University of Civil Engineering and Architecture
Heat and gas supply and ventilation
Kyiv, 2015
Володіє мовами
Англійська
середній
Російська
вільно
Українська
рідна
Додаткова інформація
Info
I'm looking forward to find a job with friendly and professional team where I'll get my skills developed and be able to bring benefit to the company.
Denys
Denys
Senior / Middle PHP / Node.js developer
Київ
Активно шукає роботу
повна зайнятість, неповна зайнятість
Характер роботи: віддалена робота, гібридна, в офісі/на місці
Оновлено 20 годин тому