Scroll To View More
Andrii Soldatenko, Python Developer in Kiev, Ukraine
Andrii Soldatenko

Python Developer in Kiev, Ukraine

Member since October 3, 2013
Andrii is a blogger and speaker as well as an expert back-end developer with Python/C and Golang. He has extensive knowledge of the Docker and Kubernetes. He also has an interest in databases; you can find his talks about full-text search and SQL optimization based in PostgreSQL at a number of Python conferences. I created a social network based in ElasticSearch for smart matching between similar user interests.
Andrii is now available for hire

Portfolio

Experience

  • SQL, 7 years
  • Bash, 7 years
  • Python, 7 years
  • Django, 5 years
  • Elasticsearch, 3 years
  • Docker, 3 years
  • Go, 2 years
  • Kubernetes, 2 years
Kiev, Ukraine

Availability

Part-time

Preferred Environment

Docker, Linux, Emacs, Bash, Git

The most amazing...

...thing I've built is a recommendation network based on NLP suggestions.

Employment

  • Python Developer

    2012 - PRESENT
    Freelance
    • Created a web app for lead generation based on Python and Django.
    • Set up an environment for production using VPS, Apache, and mod_python.
    • Implemented continuous integration with Jenkins and automation testing with Unittest and Selenium WebDriver.
    • Deployed using Fabric, Virtualenv, and South.
    • Created new features and fixed bugs using an issue tracker.
    Technologies: Python, Django, Unittest, PostgreSQL, JavaScript, HTML, CSS
  • Senior Python/Django Developer

    2018 - 2018
    Boutique Air (via Toptal)
    • Designed and implemented a REST API.
    • Implemented algorithms to calculate aircraft parameters.
    Technologies: Python, Django, PostgreSQL, REST API, Docker, Algorithms
  • Freelance Developer

    2017 - 2018
    Shoplookio (via Toptal)
    • Implemented similar outfits/products based on NLTK and Elasticsearch.
    • Improved performance of the website to work with 400k+ users.
    • Improved code quality and added automatic deployment.
    • Implemented a data pipeline to extract, process, and load data from third parties.
    • Added caching and SQL tuning for better performance.
    Technologies: Python, Django, Elasticsearch, Heroku, PostgreSQL
  • Golang Developer

    2017 - 2017
    Loodse
    • Implemented OpenAPI (Swagger) documentation for Kubermatic public API.
    • Designed and implemented new features for Kubermatic (Kubernetes based container engine).
    • Contributed OpenAPI specifications.
    • Fixed bugs and upgraded Go and Kubernetes versions for Kubermatic.
    • Designed and implemented new architecture.
    Technologies: Go, Kubernetes, Swagger, OpenAPI
  • CTO

    2016 - 2017
    Moonshot Capital, Ltd.
    • Designed and implemented architecture from scratch.
    Technologies: Eth
  • Freelance Senior Django Developer

    2016 - 2017
    ConsumerAffairs.com (via Toptal)
    • Optimized SQL queries and reduced page speed load (by 2x).
    • Implemented new features based on product requirements.
    • Supported code quality with PEP 8.
    • Created unit tests and supported current code coverage near 97% of Python code.
    • Contributed to the Optimizely Python client https://github.com/optimizely/optimizely-client-python.
    Technologies: Python, Django, Nginx, Docker, Varnish, MySQL, Vagrant, GitHub
  • CTO

    2016 - 2017
    Persollo
    • Handled all back-end/front-end and scientific (R&D) technological issues.
    Technologies: Python, Django, RESTful, JavaScript, AngularJS, PostgreSQL, Redis, Celery, StripeAPI
  • Freelance Python Developer

    2016 - 2016
    Exrpt (via Toptal)
    • Designed and implemented a CMS with unique user flow.
    • Scraped articles from different resources.
    • Designed and implemented a database based on PostgreSQL and SQLAlchemy with difficult hierarchy queries and relationships.
    • Designed and implemented an admin interface using Flask-admin.
    Technologies: Python, Flask, SQLAlchemy, Docker, PostgreSQL
  • Software Engineer

    2015 - 2016
    DataRobot
    • Dockerized all services of the DataRobot back-end.
    • Reduced payments for AWS using Slackbot to shut down unnecessary servers.
    • Contributed to github.com/prometheus.
    • Improved developers' experiences.
    • Implemented complicated Jenkins pipelines using Jenkins Job Builder (docs.openstack.org/infra/jenkins-job-builder).
    Technologies: Docker, AWS, ElasticSearch, Python, Go, Prometheus
  • Freelance Back-end Developer

    2014 - 2016
    Persice (via Toptal)
    • Developed a web application based on Python and Django.
    • Implemented data mining using social accounts and Celery.
    • Integrated social login using Facebook/Twitter.
    • Built a chat system based on Web Sockets, Socket.IO, Node.js, and Redis Pub/Sub.
    • Created full text search using PosgreSQL and Elasticsearch.
    • Implemented geolocation using PostGIS, GeoIP, and browser geolocation API.
    • Developed and implemented a REST API using Tastypie.
    • Set up and maintained an environment for production using VPS, Gunicorn, and Nginx.
    • Implement social graph using Neo4j and friendship.
    Technologies: NTLK, Elasticsearch, Python, Django, REST, JavaScript, Vagrant, Nginx, Redis, PostgreSQL
  • Freelance Lead Back-end Developer

    2015 - 2015
    SkyGrid (via Toptal)
    • Updated and implemented the current back-end.
    • Implemented performance improvements.
    • Migrated the RestAPI from XML to JSON.
    • Prepared social logins.
    • Handled data mining from social networks.
    Technologies: Python, SQL, MySQL, Twitter API, Facebook API
  • Freelance Python Developer

    2014 - 2015
    HealthLabs (via Toptal)
    • Prototyped out a new digital health service in Python and Google Compute Engine/Google App Engine.
    • Set up sFTP on a VM on Google Compute Engine.
    • Set up authentication and account management.
    Technologies: Google App Engine, Google Cloud Storage, Google Cloud Datastore
  • Lead QA Automation Engineer

    2014 - 2015
    Wargaming.net
    • Created unit and integration tests for an XMPP server based on Erlang and Python.
    • Designed and implemented an XMPP client based on SleekXMPP.
    Technologies: Python, Erlang, C++, XMPP, Web Sockets, SleekXMPP, Tornado
  • Python Developer

    2014 - 2014
    Digicode
    • Created new features and fixed bugs in the issue tracker.
    • Created RestAPI services.
    • Set up the MySQL database.
    • Created a Django admin for models.
    Technologies: Python, Django, MySQL, Pip, Virtualenv, South, Memcached, GeoIP
  • Automation Test Lead

    2012 - 2014
    Luxoft
    • Designed, developed, and implemented a test framework based on DSL and PageObject concepts.
    • Developed and implemented automated tests based on Ruby, Selenium, and Cucumber.
    • Created a test framework for Canvas (HTML) using JavaScript and extending Selenium.
    • Developed a shell script for testing RESTful services and data migration checks.
    • Optimized test execution time and generated big data sets.
    • Handled code review using Crucible.
    Technologies: Ruby, Oracle SQL, PL/SQL, JavaScript, RSpec, Cucumber, Selenium WebDriver, Rake, Bash, Python
  • Test Automation Engineer

    2011 - 2012
    Viewdle
    • Developed, maintained, and executed automated test suites using Python and C++.
    Technologies: Python, C++, SQL, Bash

Experience

  • Todo List Application (Development)
    https://github.com/andriisoldatenko/todolist

    A simple todo list application that I created.

  • Using Kubermatic Container Engine with Kubernetes (Other amazing things)
  • High-performance Functional Tests Based on Selenium for Django Projects (Development)

    Speech given at PyCon Belarus 2015.

  • Talk on High-performance Functional Test Based on Selenium (Other amazing things)
    http://seleniumcamp.com/speakers/

    Given at Selenium Camp 2015.

  • Dive into Full-text Search with Python (Other amazing things)
    http://pycon.ru/2015/program/content/soldatenko/

    Speech given at PyCon Russia 2015.

    http://www.slideshare.net/ssuserb92f8d/pycon-russian-2015-dive-into-full-text-search-with-python

  • Talk on Quality Gates in Continuous Integration (Other amazing things)
    http://seleniumcamp.com/talk/practical-continuous-quality-gates-for-development-process/

    Talk given at Selenium Camp 2016.

    There are a lot of books and publications about continuous integration. But in my experience, it’s difficult to find information about how to open quality gates between automated tests and to continuous integration practice to in your current project. After reading several articles and even a couple of books, you will understand how to work with it. But what next? I will share with you practical tips and tricks on how to lift the curtain to your automated tests before a continuous quality practice today. It is for this reason that I am pleased to share with you my acquired experience in my presentation.

  • Automated Functional Tests Based on Selenium for Django Projects (Other amazing things)

    Speech given at PyCon Ukraine 2014.

  • The Best Full-text Search Engine for Python (PyCon Ukraine) (Other amazing things)

    Speech given at PyCon Ukraine 2016.

    Nowadays, we can see lots of benchmarks and performance tests of different web frameworks and Python tools. Regarding search engines, it’s difficult to find useful information, especially benchmarks or comparing between different search engines. It’s difficult to manage what search engine you should select--for instance, ElasticSearch, Postgres full-text search, or maybe Sphinx or Whoosh. You face a difficult choice, that’s why I am pleased to share with you my acquired experience and benchmarks and focus on how to compare full text search engines for Python

  • Simple Django Back-end to Send Email through SendGrid (Other amazing things)
    https://github.com/elbuo8/sendgrid-django

    Simple Django back-end to send email using SendGrid's Web API.

  • Python Serverless Microframework for AWS (Other amazing things)
    https://github.com/awslabs/chalice

    The Python serverless microframework for AWS allows you to quickly create and deploy applications that use Amazon API Gateway and AWS Lambda. It provides:

    - A command line tool for creating, deploying, and managing your app.
    - A familiar and easy-to-use API for declaring views in Python code.
    - Automatic IAM policy generation.

  • The Best Full-text Search Engine for Python (EuroPython) (Other amazing things)
    https://ep2016.europython.eu/conference/p/andrii-soldatenko

    Speech given at EuroPython 2016.

    Nowadays, we can see lots of benchmarks and performance tests of different web frameworks and Python tools. Regarding search engines, it’s difficult to find useful information, especially benchmarks or comparing between different search engines. It’s difficult to manage what search engine you should select--for instance, ElasticSearch, Postgres full text search, or maybe Sphinx or Whoosh. You face a difficult choice. That’s why I am pleased to share with you my acquired experience and benchmarks and focus on how to compare full text search engines for Python.

  • Moonshot Capital (Development)
    https://goformoonshot.com/

    Moonshot Capital helps mobile app developers and eCommerce traders round the world grow faster by accelerating their payouts from Apple, Google, Ad Networks, Amazon. I was the CTO for this project.

  • Open-source Contributions (Development)
    http://github.com/andriisoldatenko/

    Contributed to a couple open-source libraries in Python and Go.

  • Andrii is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. Andrii shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.

Skills

  • Languages

    Cypher, Python, Go, Bash, SQL, C, C++, AWK, Regex
  • Libraries/APIs

    Stripe API, Facebook Open Graph API, Django ORM, Tastypie, LinkedIn API, Twitter API, South, Stripe Connect, Node.js, Asyncio
  • Tools

    Ansible, Vagrant, Jenkins, GitHub, Jekyll
  • Platforms

    Ethereum, Kubernetes, Docker, Blockchain, Ubuntu, Oracle, CentOS, Red Hat Linux, Unix, Linux, Solaris
  • Storage

    OrientDB, Neo4j, Elasticsearch, PostgreSQL, NoSQL, Redis, MySQL, Oracle PL/SQL, Memcached, Oracle SQL
  • Frameworks

    Django, Django REST Framework, Flask, Bottle
  • Other

    Smart Contracts, ICO, Algorithms, Prometheus, Aiohttp, Math, Natural Language Processing (NLP), Graphs, Stripe Payments, Back-end Development, Data Structures, TextSearch
  • Paradigms

    Asynchronous Programming, Continuous Integration (CI), Test-driven Development (TDD), Object-oriented Programming (OOP), Design Patterns, Object-oriented Design (OOD), Extreme Programming, Unit Testing, REST

Education

  • Master's (red diploma) degree in Information Security
    2010 - 2012
    National Technical University of Ukraine “Kyiv Polytechnic Institute” - Kyiv
  • Bachelor's (red diploma) degree in Information Security
    2006 - 2010
    Donetsk National Technical University of Ukraine - Donetsk, Ukraine
I really like this profile
Share it with others