Ivan Kropotov, Software Developer in Saint Petersburg, Russia
Ivan Kropotov

Software Developer in Saint Petersburg, Russia

Member since December 21, 2015
Lately, Ivan's been building and maintaining Kubernetes clusters in AWS and related DevOps tasks for a highly loaded telecommunication project—reaching better performance, and infrastructure cost reduction, and a more reliable deployment process. Ivan also excels at developing various microservice apps (Node.js/Go) within the project. Ivan prides himself on his clear communication skills with both his team and management.
Ivan is now available for hire

Portfolio

  • Subcomediante LLC
    Moment.js, DNS, Google Cloud, Node.js, CSS, DevOps, Bash, Domains & Hosting...
  • Vuu.tv
    Jenkins Pipeline, DNS, Docker Compose, Google Cloud, Redis, DevOps, Go, Bash...
  • GetJerry.com
    Amazon Web Services (AWS), Jenkins Pipeline, DNS, Redis, DevOps, Bash...

Experience

Location

Saint Petersburg, Russia

Availability

Part-time

Preferred Environment

Bash, Git, WebStorm, PhpStorm, Linux, MacOS

The most amazing...

...thing I've done is the complete architecture redesign and implementation of an online game project from a raw JavaScript framework that enabled it to launch.

Employment

  • Full-stack Developer

    2020 - PRESENT
    Subcomediante LLC
    • Designed and planned out complicated filtering of org-mode files for a Vue.js front end with conditional displaying and nested parsing.
    • Added an SSO (single sign-on) solution using embedded iframes and token interchange.
    • Created automated CI/CD using Google Cloud (Google Cloud run to Google Storage and Google Cloud functions).
    Technologies: Moment.js, DNS, Google Cloud, Node.js, CSS, DevOps, Bash, Domains & Hosting, Iframes, Google Sheets API, Continuous Deployment, Google Sheets, Google Cloud Functions, Serverless, Vuex, Lodash, CSS5, HTML5, Vue.js, Vue.js 2
  • Site Reliability Engineer | Go Engineer

    2019 - 2020
    Vuu.tv
    • Developed a ​CLI​ tool for deploying services that maintained cluster status on ​a GitOps​ repository for stable deployment and easy cluster handle/transform.
    • Fixed a bug with the Elastic APM plugin (found a bug in the official repository and worked it out together with the ELK team), making my own contribution to open-source majesty.
    • Resolved tedious issues with services using ​Go​ related to image caching, latency spikes, as well as developing requested tweaks and suggestions with TDD and some refactoring.
    • Maintained and optimized Kubernetes cluster on GCP platform, set up monitoring/alerting, error rates and logging to ELK, making sure that SLO, SLI, and SLA are inline.
    • Optimized search times and shard allocations/index rotation for ELK.
    • Resolved bugs related to latency spikes, caching/database, load, and balancing/scaling.
    • Improved deployment stability by implementing a graceful shutdown of the services.
    Technologies: Jenkins Pipeline, DNS, Docker Compose, Google Cloud, Redis, DevOps, Go, Bash, REST API, Domains & Hosting, Cloud, Jenkins, Continuous Delivery (CD), Continuous Integration (CI), Docker, Kubernetes
  • DevOps Engineer

    2018 - 2019
    GetJerry.com
    • Redesigned the log pipe to ELK stack by optimizing the app runtime information collection.
    • Launched a Sentry service for error aggregation and alerting.
    • Urgently tweaked and hot-fixed an existing CICD solution when it broke and the development was stuck.
    • Set up cluster monitoring to get critical performance stats.
    • Refactored the infrastructure to run on JenkinsX as CI/CD.
    Technologies: Amazon Web Services (AWS), Jenkins Pipeline, DNS, Redis, DevOps, Bash, REST API, AWS, Domains & Hosting, ELK (Elastic Stack), Jenkins, Docker, Kubernetes
  • DevOps/Node.js Developer

    2016 - 2018
    Veoo Limited
    • Wrapped project microservices into Docker containers, crafted CI/CD and launched production grade Kubernetes cluster on AWS with profiling metrics and logging to ELK.
    • Found and resolved a large number of bugs and applied best coding practices and patterns.
    • Refactored the whole project to a new logging system, that allowed us to send logs to the Elasticsearch engine.
    • Migrated a portion of the project's data from MongoDB to a more suitable and cheap MySQL solution.
    • Added various microservice parts for mail parsing, speaking to providers over DNS, and system-level testing.
    • Implemented features for the sales team and client integrations using both Go and Node.js.
    • Split and downsized production MySQL for cost optimization.
    Technologies: RabbitMQ, DNS, Redis, Node.js, DevOps, Go, Bash, REST API, AWS, Domains & Hosting, Git, Amazon Web Services (AWS), PHP, MySQL, Docker, Kubernetes
  • Freelance Web App Developer (Node.js, Backbone.js, Marionette.js)

    2016 - 2016
    Peak Shift, Inc. (via Toptal)
    • Successfully refactored an existing Backbone.js part to use a Marionette.js structure.
    • Built new features for the app, using the whole stack; I added new pages and UI elements (HTML, CSS, and jQuery), proper submit and front-end processing (Marionette.js) and added back-end endpoints for necessary logic handling (Node.js, MySQL).
    • Successfully achieved creating deep-nested views structure, proper rendering, and refreshing with Marionette's regions.
    • Suggested and implemented UX flow details and necessities leading to clearer design and app overall.
    • Managed with a client to create clear milestones, estimated and moved towards successfully achieving those.
    Technologies: Node.js, CSS, Bash, REST API, Git, HTML, Backbone.js, Marionette.js
  • Online Game Developer

    2014 - 2016
    IlkFinKom
    • Developed a live-notification system using WebSockets and an asynchronous Tornado framework, which optimized the amount of database requests more than 10x.
    • Created an achievement calculator for players that belonged to a particular virtual city which included aggregating 40 metrics, distributing prizes, and rendering on the front-end.
    • Designed architecture for back-end by refactoring a PHP mono repository into Node.js microservices with RabbitMQ as a communication layer and Redis as the cache.
    • Tweaked a Cordova plugin for Google Play Game Sevices. This added functionality for offline authorization, handling calls, and posting achievements on the Leaderboards API from the back end.
    • Developed more than 50 complicated pages (pop-ups, animations, and transitions) for the SPA version of the game for mobile platforms using a front-end Marionette framework with jQuery, as well as implementing the API for it on the back end.
    • Completely restructured a game module using a machine pattern, which led to a 10x faster response.
    • Designed the front-end and mobile architecture (Сordova, HTML/CSS, and Marionette.js).
    • Designed and laid out a refactored architecture using Marionette.js/Backbone.js with RequireJS leading to the project launch.
    Technologies: Moment.js, RabbitMQ, Push Notifications, Cordova, Redis, Node.js, CSS, Bash, REST API, Domains & Hosting, SCSS, HTML5, PostgreSQL, PHP, Java, Python, Marionette.js, CoffeeScript, JavaScript
  • Web Developer

    2012 - 2013
    Idol-IT
    • Completely changed the authorization process for a small social network which included Facebook and Google authorization, altering the existing user recognition. Basically redesigned it with completely different UI dynamic features with HTML, CSS, and JavaScript.
    • Added a feature of managing groups profile with personal profiles; adding moderators and administrators roles.
    • Implemented a client management system in Django based on an online service API for processing data retrieved from special tire sensors. This included automatic email sending with Mandrill software, PDF rendering and structuring of reports, and presenting it all in a clean-and-organized interface.
    Technologies: Push Notifications, Node.js, CSS, Django, Python, HTML, jQuery, MySQL

Experience

  • VirCities (Development)

    An online game (social-economic RPG simulator) currently launched for mobile platforms on major platforms (Android, iOS, and Windows Phone).

  • Participation in Southwest Baptist University's Computer Science Program (Other amazing things)
    http://www.sbuniv.edu/

    I completed my first year at Southwest Baptist University (Bolivar, MO) in the United States with a 4.0 GPA in the Computer Science program; totaling 25 units.

  • Vuu for Movies (Development)
    http://vuu.tv

    Vuu is a media and TV-related startup that's been serving additional content for movies and shows. It's divided into three major domains—serving APIs for clients and iOS app, an internal tool for filling content, and some R&D ML part.

    I've been making sure that infrastructure can handle the load, resolving networking issues, developing CI/CD awesomeness, and other SRE -elated issues and features, as well as implementing some GO development on the back-end site.

Skills

  • Languages

    HTML, Bash, Go, JavaScript, CSS, Bash Script, Python, CSS5, Java, SQL, CSS3, PHP, HTML5, CoffeeScript, SCSS
  • Libraries/APIs

    REST API, REST APIs, Node.js, Jenkins Pipeline, Vue.js, Vue.js 2, Vuex, Google Sheets API, Lodash, Backbone.Marionette, Marionette.js, Redis Queue, Google+ API, Game Center, React, jQuery, Backbone.js, Underscore.js, CreateJS, Moment.js, Mustache, Google API, Facebook API, Passport.js
  • Tools

    Elastic, Makefile, Make, Docker Compose, Ansible, Jenkins, Helm, Docker Hub, RabbitMQ, Terraform, PhpStorm, WebStorm, ELK (Elastic Stack), Google Sheets, NPM, Git, Mongoose, Grunt, Apple Push Notifications, Knex.js, Capistrano
  • Paradigms

    Microservices Architecture, DevOps, API Architecture, Web Architecture, Microservices, Object-relational Mapping (ORM), Promise, Continuous Deployment, Continuous Integration (CI), Continuous Delivery (CD), Functional Programming, REST, Declarative Programming, Agile Software Development, Kanban
  • Platforms

    AWS EC2, Docker, Kubernetes, Amazon Web Services (AWS), Linux, Heroku, MacOS, Windows, Android, iOS, Windows Phone
  • Storage

    Google Cloud, Elasticsearch, AWS S3, Redis, Database Migration, Cassandra, AWS RDS, MySQL, Relational Databases, PostgreSQL, MongoDB
  • Other

    Prometheus, Monitoring, Minimum Viable Product (MVP), RESTful Microservices, Cloud Microservices, AWS, Load Balancers, Domains & Hosting, Container Orchestration, Containers, Kubernetes Operations (Kops), Windows App, Server Migration, DNS, Code Architecture, Google Cloud Functions, Bash Scripting, Scripting, Data Structures, Algorithms, Apache Cassandra, CTO, Serverless, Iframes, Cloud, Google+ Authentication, Google Game Services, Ajax, Push Notifications, RESTful APIs, WebSockets, Async.js, Bluebird, Google+, Tornado
  • Frameworks

    Cordova, CakePHP, FuelPHP, Django, Express.js, Redux

Education

  • Bachelor's degree in Building and Civil Engineering
    2007 - 2012
    Technical University of Moldova - Chisinau, Moldova

Certifications

  • CS1156x: Learning from Data (Machine Learning)
    DECEMBER 2016 - PRESENT
    California Institute of Technology via edX

To view more profiles

Join Toptal
Share it with others