Sergei Patiakin, Developer in Belgrade, Serbia
Sergei is available for hire
Hire Sergei

Sergei Patiakin

Verified Expert  in Engineering

WebSockets Developer

Belgrade, Serbia

Toptal member since December 23, 2016

Bio

Sergei is a software developer with a background in physics. He has worked on projects in large teams and as an independent developer. Sergei is most proficient in Python, C++, and C#. He is passionate about sound methodology and best practices for both coding and project management.

Portfolio

Rimeto
Amazon Web Services (AWS), Git, Elasticsearch, MySQL, React Native, React...
Fathom Health
Protobuf, Git, Docker, Azure, PostgreSQL, MySQL, TensorFlow, NumPy, Python
Microsoft
U-SQL, T-SQL (Transact-SQL), Python, C#, C++

Experience

  • PostgreSQL - 6 years
  • Python - 6 years
  • GraphQL - 6 years
  • Heroku - 5 years
  • TypeScript - 5 years
  • Node.js - 5 years
  • React - 5 years
  • WebSockets - 4 years

Availability

Part-time

Preferred Environment

TypeScript, Node.js, Heroku, PostgreSQL, React, Python

The most amazing...

...work I've done (SQL server) was Hekaton: a lock-free, in-memory database engine achieving order-of-magnitude performance improvements over regular databases.

Work Experience

Software Engineer

2017 - 2018
Rimeto
  • Improved the application's search functionality.
  • Wrote analytics for user behavior and search UX.
  • Implemented object cleanup and other consistency improvements in a distributed NoSQL storage layer.
Technologies: Amazon Web Services (AWS), Git, Elasticsearch, MySQL, React Native, React, Node.js, TypeScript, JavaScript

Software Engineer

2017 - 2017
Fathom Health
  • Created data pipelines to train a deep learning model for NLP.
  • Worked on synthetic data generation for semi-supervised machine learning.
  • Migrated the database access layer to use Azure-hosted infrastructure.
  • Leveraged Docker to make the data pipelines isolated and reproducible.
  • Optimized database performance.
Technologies: Protobuf, Git, Docker, Azure, PostgreSQL, MySQL, TensorFlow, NumPy, Python

Software Engineer

2014 - 2016
Microsoft
  • Developed data processing pipelines for SQL Azure Database Advisor—a service that calculates database optimization recommendations for +1 million customer databases hosted in Microsoft's cloud.
  • Wrote distributed data processing code to calculate Database Advisor recommendations in a Hadoop-like cluster.
  • Created monitoring and reporting systems to measure the health of the Database Advisor service.
  • Worked on native JSON support and enhancements to in-memory OLTP in Microsoft SQL Server.
Technologies: U-SQL, T-SQL (Transact-SQL), Python, C#, C++

Research Assistant

2013 - 2013
University of Cambridge, Department of Physics
  • Designed and implemented an end-to-end software system for controlling an ellipsometer and interpreting its results. An ellipsometer is an optomechanical instrument that uses a laser to measure properties of semiconductor wafers.
  • Gathered requirements by interviewing future users of the instrument to find out their desired workflows.
  • Implemented the hardware controller in C++ on an AVR microcontroller.
  • Implemented the user interface and data analysis code using Python, Qt and NumPy.
  • Benchmarked and optimized the system's measurement speed and accuracy.
Technologies: NumPy, Qt, Python, C++

Experience

SQL Azure Database Advisor

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-advisor
SQL Azure is Microsoft's cloud database service, providing automatic failover, updates and backups for +1 million customer databases.

SQL Azure Database Advisor is a project to analyze terabytes of daily customer database telemetry, and present each customer with personalized database tuning recommendations.

During 2015, the project progressed from a limited private preview to general availability for all customers. I was involved with several tasks in this project:
1. Developing the recommendation generation algorithm running in a Hadoop-like cluster.
2. Developing the public API for interacting with recommendations.
3. Developing reporting and monitoring systems for operation readiness.

Programmability Improvements for SQL Server Hekaton

https://www.microsoft.com/en-us/research/publication/hekaton-sql-servers-memory-optimized-oltp-engine/
SQL Server Hekaton is an in-memory lock-free database engine which provides order-of-magnitude performance improvements for OLTP workloads.

In a regular database, SQL commands are interpreted and transaction isolation is achieved with locks. In Hekaton, SQL stored procedures are compiled to machine code, which runs against in-memory lock-free data structures.

I was involved with programmability improvements to Hekaton so that more built-ins and syntactic features can be used in natively compiled SQL.

Ellipsometer Controller and User Interface

The project goal was to develop an end-to-end software system providing hardware control, a friendly GUI and data analysis capabilities for an ellipsometer—an optomechanical instrument to measure properties of semiconductor wafers.

I was the sole developer on the project, responsible for the entire life cycle—gathering requirements, design, implementation, and testing.

The solution consisted of two tightly-coupled platforms: an AVR microcontroller for real-time hardware control, and a Raspberry Pi computer for data analysis and GUI.

Staze.info

Staze.info is an interactive map of hiking and cycling trails in southeast Europe. I completed all the development work for this project. The back-end was built with Python/Django, PostgreSQL, GeoServer, and Docker. The front-end was built with jQuery, OpenLayers, and Highcharts.

Education

2013 - 2014

Master's Degree in Physics

University of Cambridge - Cambridge, UK

2010 - 2013

Bachelor of Arts Degree in Physics

University of Cambridge - Cambridge, UK

Skills

Libraries/APIs

Node.js, React, NumPy, TensorFlow, Protobuf

Tools

MATLAB, Git

Languages

TypeScript, Python, C++, T-SQL (Transact-SQL), JavaScript, C#, GraphQL

Platforms

Windows, Linux, Heroku, Azure, Docker, Amazon Web Services (AWS)

Storage

PostgreSQL, U-SQL, Microsoft SQL Server, MySQL, Elasticsearch

Frameworks

Django, Qt, React Native, Hadoop

Paradigms

Distributed Programming

Other

Front-end Development, WebSockets

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