Data-Driven Web Apps

Cloud Infrastructure as Code

Continuous Deployments

 

Highly skilled Full-Stack Developer with a strong background in React and Python development, experience in DevOps, CI/CD and testing. Demonstrated ability to develop and maintain end-to-end features, create unit and integration tests, develop cloud infrastructure as code.

Technologies used

Frontend
  • Javascript
  • TypeScript
  • ReactJS
  • Figma
  • TailwindCSS
Backend
  • FastAPI
  • DRF
  • Python
  • Celery
  • SQLAlchemy
  • NextJS
  • RabbitMQ
DevOps
  • GitLab
  • Bash
  • Docker
  • Terraform
  • AWS
  • Oracle Cloud
Quality
  • Pytest
  • Jest
  • Cypress
  • Playwright
Data
  • Airflow
  • Pandas
  • SQL
  • PostgreSQL
  • ClickHouse
  • MongoDB

Projects

    Project instant-messaging image
    Project instant-messaging image
    Project instant-messaging image
    Project instant-messaging image
    Project instant-messaging image
    Project instant-messaging image
    Project instant-messaging image

    instant-messaging

    Microservices application with backend app and telegram bot app.
    Implements chat messaging and contacts functionality.
    Work items include:

    • FastAPI backend
    • JWT user authentication front and back
    • Socket.io message passing
    • SQLAlchemy database model
    • Repository and Unit of work design patterns
    • Celery tasks to send offline notifications to users through bot microservice
    • Backend tests
    • React frontend
    • Gitlab CI pipeline and deployment to OCI
    Project image-resize image
    Project image-resize image
    Project image-resize image
    Project image-resize image
    Project image-resize image

    image-resize

    Background processing application using event-driven architecture, and Message Bus design pattern.
    Example task function does image resizing, but can perform any other operation.
    Work items include:

    • FastAPI backend
    • Event Bus architecture
    • Celery tasks
    • Backend operation progress updates using WebSocket
    • Backed tests
    • React frontend
    • Demo docker-compose deployment
    Project Mountains image

    Mountains

    My solution of a take home assignment for landing page development.

    Implemented using TailwindCSS, Vanilla JavaScript, HTML, created CI/CD pipeline.
    All elements are responsive including the carousel and tabs/accordion. No dependencies or libraries used other than TailwindCSS that allows to write CSS inside HTML.

    Requirements Specification:

    “Convert the PSD to HTML that is provided below. The carousel should be responsive. On mobile, the tabs should be converted to an accordion. History, team - these are internal links in the page to their respective sections.”
    Wireframe in the repo.

    Project Daltiler image

    Daltiler

    ETL application with PyQt GUI that extracts and transforms PDF product data into specific CSV structure:

    • developed PDF data ingestion using Python and Tabula;
    • transformed data using Pandas;
    • developed desktop GUI using PyQT framework;
    • eliminated GUI blocking with QT multithreading;
    • increased performance of data ingestion using Python multiprocessing.
    Project OCI-Infrastructure image

    OCI-Infrastructure

    Automatic cloud resources deployment and configuration using Terraform:

    • developed Terraform configuration for Oracle Cloud to provision resources for web apps including: virtual machine instances, virtual cloud networks, internet gateway, object-storage, users;
    • developed GitLab yml configuration for group CI/CD runner and cache;
    • developed multi-project pipeline to deploy all projects queue at once;
    • configured NGINX server and SSL certificates;
    • developed scripts for scheduled database backup and recovery;
    • developed pipeline script for automatic CloudFlare DNS update when VM IP addresses change.
    Project BAS image
    Project BAS image
    Project BAS image
    Project BAS image
    Project BAS image
    Project BAS image
    Project BAS image

    BAS

    This is a self-hosted background task processing data mining web-app (similar to Airflow) that ingests online data and presents instant results in a tabular form:

    • developed React frontend using Chakra UI design system;
    • developed Flask REST API and Python web crawler;
    • customised frontend Tabulator table with CRUD operations that manage listings;
    • automated headless browser using Playwright to ingest listing attributes;
    • developed SQLAlchemy ORM models to store company and listing attributes;
    • developed on-demand Celery asynchronous background tasks;
    • implemented API pooling to update background task status;
    • created GitLab CI pipeline to automatically deploy updates to DockerHub.
    Project This Portfolio image
    Project This Portfolio image

    This Portfolio

    NextJS app that describes my projects:

    • designed Figma prototype;
    • configured Strapi CMS, Postgres database and S3 object storage;
    • developed frontend according to prototype using TypeScript, TailwindCSS;
    • developed contact form back-end;
    Project Data talks image
    Project Data talks image

    Data talks

    Developed infrastructure configuration and data processing code using Python, SQL, Bash and the following tools:

    • Apache Airflow (task scheduling)
    • ClickHouse (OLAP database)
    • dbt (data transformation inside data warehouse)
    • Metabase (BI and dashboarding tool)
    • Apache Superset (advanced BI and dashboarding tool)

    Developed:

    1. Http links extraction from html page and ingestion from downloaded parquet files into OLAP DBMS.
    2. Data ingestion from csv files containing open data set about companies of the world into OLAP DBMS.
    3. Data ingestion from csv files containing two months of e-commerce product events into OLAP DBMS.

Contact