Andrey Koltsov, Developer in Kraków, Poland
Andrey is available for hire
Hire Andrey

Andrey Koltsov

Verified Expert  in Engineering

Software Developer

Location
Kraków, Poland
Toptal Member Since
October 8, 2019

Andrey is a senior full-stack web developer with over 12 years of experience. Specializing in building back-end APIs for web applications, Andrey thoroughly understands the requirements for solid builds and always strives to provide the best infrastructures to safely and quickly facilitate growth and scaling.

Portfolio

Epam Systems
CSS, Chrome Extensions, Google Cloud Platform (GCP), Google App Engine, Google...
Luxoft
Jenkins, jQuery, Bootstrap, JavaScript, Django, Python

Experience

Availability

Part-time

Preferred Environment

Angular, Flask, Django, TypeScript, JavaScript, Python 3

The most amazing...

...full-stack project was for Trimble Connected Community where I developed with five different programming languages and worked with over 20 engineers.

Work Experience

Lead Python Developer

2015 - PRESENT
Epam Systems
  • Led a team in the creation of a web-based CRM for the HR department with automated email notifications, status tracking, and specialized tools like template insurance offering.
  • Integrated an application with APIs using JSON endpoints to reduce manual input.
  • Developed several Google Chrome extensions to improve the performance of people who work with internal systems.
  • Created samples for Google App Maker.
  • Improved application performance by optimizing SQL queries.
Technologies: CSS, Chrome Extensions, Google Cloud Platform (GCP), Google App Engine, Google, Google Apps Script, TypeScript, JavaScript, Python

Senior Python Developer

2010 - 2015
Luxoft
  • Worked to complete the development of a web application with many complicated forms.
  • Improved the performance of the back end.
  • Migrated the front end to Bootstrap so that the UI was consistent.
  • Added continuous integration based on Jenkins to run integration tests during the night on several agents to reduce testing time.
  • Created an office map system so my colleagues were able to find location information (floor, open space, and exact whereabouts) by first name, surname, or email.
  • Managed a team of one developer and three QAs.
  • Developed a REST API with a Django REST Framework.
Technologies: Jenkins, jQuery, Bootstrap, JavaScript, Django, Python

Software Engineer

2009 - 2010
Omsk City Local Government Office: The Information and Communication Technologies Department
  • Worked to complete the development of a new city web portal: Admomsk.ru.
  • Developed modules for Liferay CMS.
  • Created a REST API for integration with other departments, so they can automatically update their data on a web portal.
  • Introduced the use of a bug-tracker system.
Technologies: jQuery, JavaScript, Liferay, Java

Developer

2006 - 2009
ISS Art, Ltd.
  • Created a back-end REST API using the Java Restlet framework and interfacing with a MySQL database.
  • Built a prototype of a single-page application (SPA) using the Ext JS framework.
  • Grew the front-end team that was building the SPA client.
  • Integrated Atlassian Bamboo for continuous integration.
  • Built an MVP of a cross-platform accounting application using C++ and the Qt framework.
  • Developed an application that merges a building plan of the object with Google maps with Flex and ActionScript.
Technologies: PHP, Flash ActionScript, JavaScript, Java, C++

Back End with Paywall

I implemented the back end with Python/Django REST framework with Paywall.
Paywall was implemented via Stripe subscription.
Part of incoming and outgoing fields was stored in verygoodsecurity.com to avoid storing personal identification information (PII).
The project was hosted on Heroku.

Web Interface for a SOAP Interface

I developed a web interface and an ETL system.

Project Details
• Django Generated Web Page → Celery Task → Node.js App → SOAP Interface
• Node.js App → REST Interface (Django REST Framework)
• The eneration reports were in the MS Excel format

Back End and Web Client for Video Streaming

Role: Full-stack Engineer

Project Details:
• Developed a back end and web client with the Django REST Framework and Celery for long-term tasks on the back end and Vuetify and Vue.js on the front end.
• Deployed the application on AWS (EC2, S3, and Elastic Beanstalk) and the Amazon Rekognition Video API.
• The video was streamed via Nginx, RTMP, and AWS CloudFront.

Web App for HR and Recruiters

This project was for an NDA client.

Here, I had to implement a web application for the HR/recruitment team. The app was built on top of an autoscaling platform to adapt to the current load and has several different access roles. The tool consists of several complex forms with interconnected widgets. I paid particular attention to accessibility.

Web App for Searching for Air Craft Spare Parts

On this project, I worked under the NDA contract and I had to implement a web application that searched for airplane spare parts. The application consists of more than 30 forms that retrieve data from hundreds of tables.

Technologies: Python, Django, JavaScript, jQuery, Bootstrap

Parse Real Estate Site for Flat Pics/Cost/Location

Created a small parser for real estate site to extract data about flat cost, location(lat/long), pics, to show it a better way, lat long was used to make requests to google maps API to get information about near bus stops/ time to commute.

Trimble Connected Community

https://www.myconnectedsite.com/
I built a portal for large development companies.

Tasks:
• Formalized customer wishes.
• Developed the back end and CI.
• Helped the front-end team.
• Communicated with the C++ desktop client team.

Link:
• https://www.youtube.com/watch?v=GanAlW6SR_g

City Government Portal

http://admomsk.ru/
Role: Full-stack Engineer

Tasks:
• Converted client wishes into requirements.
• Responsible for coding, deployment, and communication with the technical parts of other departments.

Technologies: Java, JavaScript

Near Real-time ETL System

I built a near real-time system.
Income requests are handled by the Python/FastAPI server.
Kafka (AWS Managed Kafka) was used as message bus.
Workers were implemented with Python/Faust library.
S3 was used as file storage.
2007 - 2009

Master's Degree in Math and Computer Science

Omsk State University - Omsk, Russia

2002 - 2007

Specialist's Degree in Math and Computer Science

Omsk State University - Omsk, Russia

Libraries/APIs

REST APIs, jQuery, jQuery UI, Node.js, Django ORM, Google APIs, Vue, Asyncio, jQuery DataTables, Twitter API, Stripe, Stripe API, React

Tools

Celery, GitLab, IntelliJ IDEA, Jenkins, Git, Subversion (SVN), Sentry, Docker Compose, Auth0, Jira, Bitbucket, Alfresco

Frameworks

Django, Bootstrap 3, Scrapy, Swagger, JSON Web Tokens (JWT), Flask, Angular, Django REST Framework, Ext JS, Angular Material, Bootstrap 2, Bootstrap

Languages

Python, Python 3, Google Apps Script, CSS, HTML5, JavaScript, TypeScript, SQL, Flash ActionScript, C++, Java, PHP

Paradigms

REST, ETL, RESTful Development, Agile Software Development, Continuous Integration (CI), Continuous Development (CD)

Platforms

Visual Studio Code (VS Code), Heroku, Apache Kafka, Linux, Windows, Amazon EC2, AWS Elastic Beanstalk, Google App Engine, Docker, Google Cloud Platform (GCP), AWS Lambda, Amazon Web Services (AWS), Memberstack

Storage

Google Cloud, Relational Databases, MySQL, PostgreSQL, Redis, Amazon S3 (AWS S3)

Other

Chrome Extensions, SOAP, APIs, FastAPI, Faust, Google, Liferay, Okta, Amazon MSK, Security

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring