Ivan Cropotov
Verified Expert in Engineering
Software Developer
Chișinău, Chisinau, Moldova
Toptal member since February 29, 2016
Lately, Ivan's been building and maintaining Kubernetes clusters in AWS and related DevOps tasks for a highly loaded telecommunication project—reaching better performance, 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.
Portfolio
Experience
- Linux - 5 years
- Node.js - 5 years
- Go - 3 years
- Amazon Web Services (AWS) - 3 years
- Docker - 3 years
- Kubernetes - 3 years
- Helm - 2 years
Availability
Preferred Environment
Vim Text Editor, IntelliJ IDEA, Bash, Git, 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 its launch.
Work Experience
Full-stack Developer
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).
Site Reliability Engineer | Go Engineer
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.
DevOps Engineer
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.
DevOps/Node.js Developer
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.
Freelance Web App Developer (Node.js, Backbone.js, Marionette.js)
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.
Online Game Developer
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.
Web Developer
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.
Experience
VirCities
Participation in Southwest Baptist University's Computer Science Program
http://www.sbuniv.edu/Vuu for Movies
http://vuu.tvI'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.
Education
Bachelor's Degree in Building and Civil Engineering
Technical University of Moldova - Chisinau, Moldova
Certifications
CS1156x: Learning from Data (Machine Learning)
California Institute of Technology via edX
Skills
Libraries/APIs
REST APIs, Node.js, Jenkins Pipeline, Vue, Vue 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, IntelliJ IDEA, Vim Text Editor, NPM, Git, Mongoose, Grunt, Apple Push Notifications, Knex.js, Capistrano
Languages
HTML, Bash, Go, JavaScript, CSS, Bash Script, Python, Java, SQL, CSS3, PHP, HTML5, CoffeeScript, SCSS
Paradigms
Microservices Architecture, DevOps, Windows App Development, API Architecture, Web Architecture, Microservices, Object-relational Mapping (ORM), Promise, Continuous Deployment, Continuous Integration (CI), Continuous Delivery (CD), RESTful Development, Functional Programming, REST, Declarative Programming, Agile Software Development, Kanban
Platforms
Amazon EC2, Docker, Kubernetes, Amazon Web Services (AWS), Linux, Heroku, MacOS, Windows, Android, iOS, Windows Phone
Storage
Google Cloud, Elasticsearch, Amazon S3 (AWS S3), Redis, Database Migration, Cassandra, MySQL, Relational Databases, PostgreSQL, MongoDB
Frameworks
CakePHP, FuelPHP, Django, Express.js, Redux
Other
Prometheus, Monitoring, Minimum Viable Product (MVP), RESTful Microservices, Load Balancers, Domains & Hosting, Container Orchestration, Containers, Kubernetes Operations (kOps), Server Migration, DNS, Code Architecture, Google Cloud Functions, Scripting, Data Structures, Algorithms, Apache Cassandra, CTO, Serverless, Iframes, Cloud, Cordova, Google+ Authentication, Google Game Services, Ajax, Push Notifications, WebSockets, Async.js, Bluebird, Google+, Tornado
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring