Andrey Korin, Developer in Nizhny Novgorod, Nizhny Novgorod Oblast, Russia
Andrey is available for hire
Hire Andrey

Andrey Korin

Verified Expert  in Engineering

Software Developer

Location
Nizhny Novgorod, Nizhny Novgorod Oblast, Russia
Toptal Member Since
February 8, 2018

Andrey is a highly skilled and self-disciplined full-stack developer with experience building complex web applications based on top of a variety of front-end and back-end technologies and frameworks. He's an expert in JavaScript development and has worked in remotely distributed teams. Andrey also possesses a good eye for design and won a few application design contests.

Portfolio

Systems Insight Inc.
JavaScript, React, MySQL, SQL Server 2010, React Native, iOS SDK, Stripe...
Sweetbridge
Ethereum, Auth0, GraphQL, React, PostgreSQL, Node.js, TypeScript, JavaScript...
A Freelance Services Marketplace
SockJS, Bitcoin, Elasticsearch, Vue, Node.js, MySQL, Flask, Python

Experience

Availability

Part-time

Preferred Environment

Linux, Docker, Git, Sublime Text 3, MacOS

The most amazing...

...things that I've launched into production were two complex web applications where I spent a year and a half working as the sole developer on the project.

Work Experience

Senior Full-stack Developer

2018 - 2021
Systems Insight Inc.
  • Developed a feature-rich web application for stylists to manage their appointments.
  • Created a web application allowing retailers to search for available properties and for property owners to search for retailers using the matching algorithm based on input characteristics.
  • Built a web application for the large US laboratory allowing them to accept orders from their clients on their website.
Technologies: JavaScript, React, MySQL, SQL Server 2010, React Native, iOS SDK, Stripe, Stripe Payments

Senior Full-stack Developer

2018 - 2019
Sweetbridge
  • Developed a complex UI application powered by React and Redux.
  • Built a wallet for an Ethereum (ETH) network that supported ETH and ERC20 tokens, allowing users to transfer their funds and monitor their balances.
  • Integrated Ledger hardware wallet support, allowing users to sign transactions.
  • Developed a GraphQL back-end powered by Node.js, supporting Auth0 authorization and roles and permissions.
Technologies: Ethereum, Auth0, GraphQL, React, PostgreSQL, Node.js, TypeScript, JavaScript, Web3.js, Solidity

Senior Full-stack Engineer

2016 - 2018
A Freelance Services Marketplace
  • Created an entire web application using Python with the Flask framework on the back-end and a Vue.js application bundled with Webpack on the front-end.
  • Built an automatic system to accept BTC payments based on BIP-32 (addresses can be generated on the server without the need of keeping private keys on the server).
  • Developed a real-time messaging system using Node.js and SockJS.
  • Learned a lot about Elasticsearch while building the search feature.
Technologies: SockJS, Bitcoin, Elasticsearch, Vue, Node.js, MySQL, Flask, Python

Full-stack Engineer

2016 - 2017
MMDSmart
  • Created an SMS gateway system from scratch which now handles at least 50,000 messages per day. The system contains a public API developed using Node.js, a UI web application developed with React and Redux, and a couple of back-end utilities talking to soft-switches.
  • Built a beautiful web app with React and Redux for a legacy system written in C++; MySQL was used to interact between the parties and the application was backed by Node.js.
  • Learned a lot about the telecom-related field.
  • Implemented Redux in every project while working here.
Technologies: Webpack, Redux, React, MySQL, TypeScript, Node.js

Full-stack Engineer

2015 - 2016
testRTC
  • Hacked browser APIs to support fake media streams for WebRTC calls in an automated environment.
  • Wrote a huge amount of custom extensions for Nightwatch.js and a Node.js automation framework on top of Selenium.
  • Developed and supported browser extensions for Chrome and Firefox.
  • Worked on a large amount of data processing of WebRTC statistics (we used TypeScript on the back-end for that purpose).
  • Continuously patched Docker images to make WebRTC calls working on Firefox and Chrome running inside a Docker environment.
Technologies: Browsers, Extensions, AngularJS, Selenium, Docker, WebRTC, TypeScript, Node.js

Front-end Engineer

2013 - 2015
Lintelus
  • Gained valuable experience working with the top (at the time) HTML5/CSS3 browser features, such as canvas, media elements, and more.
  • Fixed a huge number of cross-browser issues with CSS3 and SVG displays (we supported IE as well).
  • Created our own JavaScript-and-SVG framework for animations, reiterating most of PowerPoint animations (we translated PPTX slides into HTML5).
  • Built our own JavaScript-and-SVG framework to render nearly all of the PowerPoint charts.
  • Learned Node.js and evolved from pure front-end development to full-stack development.
Technologies: SVG, CSS3, Backbone.js, Node.js, JavaScript

Java Engineer

2011 - 2012
Amazon Robotics
  • Supported the UI back-end, implemented it as a state machine while working in a distributed team of more than 100 engineers on a huge codebase (mostly written in Java 5).
  • Created a test framework to write automated tests for the UI state machine.
  • Debugged complex memory-leak bugs with heap profilers while in a multithread environment.
Technologies: Linux, MySQL, Java

Python Developer

2007 - 2011
Insitute of Education Development Nizhny Novgorod
  • Developed a lot of data-processing utilities using Python. Mostly it was table data processing from XLS/CSV files with various data schemas.
  • Created a network equipment management system with Python and Django.
  • Built a helpdesk system to track users issues with Python, Django, and Java Client for installation on users machines for faster communication and problem resolution.
  • Automated the installation of software on new machines with a hand-written tool using C.
Technologies: Django, Linux, Bash, Python

Ultimaps | Create Maps with Data Online

http://ultimaps.com
This web application is one of my side-projects where my passions in cartography and programming intersect with each other. Every single part of the project is done by me, including the design and infrastructure.

A Freelance Services Marketplace

This is a marketplace that connects freelance workers with potential clients. It was a complex project that was developed completely and solely by me (except some HTML/CSS). On the back-end, I used Python with the Flask framework, MySQL for storage, Elasticsearch as a search engine, Node.js for a real-time messaging system, and Vue.js and Webpack on the front-end.

NPM Package to Upload/Download Azure Blobs

https://www.npmjs.com/package/azureblob-upload-node
A package for Node.js which provides some nice features to deal with Azure blobs which are not available in the official Azure SDK package, such as support for blobs, streams, gzip compression, and retry support.

Languages

JavaScript, SQL, TypeScript, Python, CSS3, Java, GraphQL, Bash, Solidity

Frameworks

Express.js, Redux, Flask, AngularJS, Selenium, Django, Next.js, React Native, iOS SDK

Libraries/APIs

Nightwatch.js, WebRTC, Vue, React, Node.js, Vue 2, Backbone.js, SockJS, D3.js, Web3.js, Stripe

Tools

Webpack, Sublime Text 3, Git, Auth0

Platforms

Docker, Linux, MacOS, Ethereum, Amazon Web Services (AWS)

Storage

Amazon S3 (AWS S3), MongoDB, MySQL, Elasticsearch, PostgreSQL, SQL Server 2010

Other

SVG, Extensions, Browsers, Chrome Extensions, Firefox Extensions, Bitcoin, Stripe Payments

2005 - 2009

Bachelor's Degree in Computer Science

Nizhny Novgorod State Technical University - Nizhny Novgorod, Russia

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