Verified Expert in Engineering
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.
Vim Text Editor, IntelliJ IDEA, Bash, Git, Linux, MacOS
The most amazing...
- 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
- 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.
- 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.
- 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
- 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.
- 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.
Participation in Southwest Baptist University's Computer Science Programhttp://www.sbuniv.edu/
Vuu for Movieshttp://vuu.tv
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.
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
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
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
Amazon EC2, Docker, Kubernetes, Amazon Web Services (AWS), Linux, Heroku, MacOS, Windows, Android, iOS, Windows Phone
Google Cloud, Elasticsearch, Amazon S3 (AWS S3), Redis, Database Migration, Cassandra, MySQL, Relational Databases, PostgreSQL, MongoDB
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
CakePHP, FuelPHP, Django, Express.js, Redux
Bachelor's Degree in Building and Civil Engineering
Technical University of Moldova - Chisinau, Moldova
CS1156x: Learning from Data (Machine Learning)
California Institute of Technology via edX