Denis Glazachev, Developer in Yerevan, Armenia
Denis is available for hire
Hire Denis

Denis Glazachev

Verified Expert  in Engineering

Algorithms Developer

Location
Yerevan, Armenia
Toptal Member Since
April 3, 2017

Denis is primarily a C++ programmer on high-load oriented, low latency, and distributed systems. However, he is also familiar and interested in various operating systems and different programming languages and environments. Denis communicates extremely well and also has a strong computer networking background.

Portfolio

Altinity
C++, C++17, C++20, SQL, ODBC, Kerberos, LDAP, HTTP, ClickHouse
Trinity Mobile Networks
UDP, Transmission Control Protocol (TCP), IPv6, IPv4...
Blockchain R&D Hub Armenia
Linux, MacOS, Xcode, Clang, GCC, Valgrind, Multithreading...

Experience

Availability

Part-time

Preferred Environment

Git, Visual Studio, Xcode, Windows, Linux, MacOS, Bazel, CMake, C++

The most amazing...

...thing I've implemented is a market data feed collector fault tolerance module, that performs complex gap patching, and data arbitration for latency reduction.

Work Experience

Senior Software Engineer

2019 - PRESENT
Altinity
  • Maintained the open-source C++ code base of the official ODBC driver implementation for accessing ClickHouse as a data source: https://github.com/ClickHouse/clickhouse-odbc.
  • Rolled out ten releases of ClickHouse ODBC driver with numerous bug fixes and new features.
  • Implemented Kerberos and LDAP authentication support in ClickHouse DBMS.
  • Implemented various features and fixed bugs in ClickHouse DBMS.
Technologies: C++, C++17, C++20, SQL, ODBC, Kerberos, LDAP, HTTP, ClickHouse

Senior Software Engineer

2017 - 2019
Trinity Mobile Networks
  • Built a C++ software IP gateway for in-house L3 multihoming, on top of a packet processing core, as a part of a large-scale platform.
  • Implemented client connection and session management in the IP gateway, with management planes involving AMQP and HTTP (REST), capable of handling over 1000 simultaneous sessions on a single processing core.
  • Implemented stateless IPv4-IPv6 traffic conversion and forwarding.
  • Implemented Boost.Asio wrappers for: Linux TUN/TAP interfaces, third-party C++ RabbitMQ client library, libpcap capture interfaces, message-based encryption sessions using DTLS implementation from OpenSSL.
  • Maintained CI/CD build automation scripts of the IP gateway.
Technologies: UDP, Transmission Control Protocol (TCP), IPv6, IPv4, Datagram Transport Layer Security (DTLS), Transport Layer Security (TLS), OpenSSL, libpcap, Tcpdump, Linux, Point-to-Point Tunneling Protocol (PPTP), Unix, Sockets, REST, HTTP, JSON, RabbitMQ, AMQP, Boost.Asio, Boost, C, C++14, C++11, Asynchronous I/O, Software-defined Networking (SDN)

Senior Software Engineer

2016 - 2017
Blockchain R&D Hub Armenia
  • Designed the structure and developed code for the core as well as ongoing projects of DECENT blockchain content distribution platform.
  • Implemented modules that employ torrent and IPFS for massive decentralized content sharing back end.
  • Integrated third-party libraries into the build process, and made them available for use by the core code of DECENT.
  • Configured and maintained a continuous integration environment for the project.
Technologies: Linux, MacOS, Xcode, Clang, GCC, Valgrind, Multithreading, Object-oriented Design (OOD), Object-oriented Programming (OOP), Shell Scripting, CMake, Boost, Standard Template Library (STL), C++11

Senior Software Engineer

2010 - 2016
OneMarketData
  • Designed and implemented fault tolerance algorithm and module for smart patching of more than two inbound potentially incomplete or corrupted market data streams with peaks of 1M+ ticks per second.
  • Implemented ODBCv3 driver for OneTick time-series solution.
  • Mentored and managed junior engineers and team members.
  • Implemented feed handler back-end layer of the automatic trading module.
  • Designed, implemented, and applied techniques and tools for preserving execution states of huge long-running processes for later resumption.
  • Implemented feed parsers and collectors for a number of market data vendors using their APIs.
  • Applied parallelization on stream processing routines using lockless algorithms and data structures.
  • Ported code to various Unix platforms and compilers, including macOS, Linux, Solaris, latest versions of GCC compiler, SPARC, POWER, and x86 architectures.
  • Prepared third-party libraries and tools for integration and use with OneTick, including non-trivial portable GCC setups, Boost, and more.
Technologies: Sockets, Data Structures, Algorithms, Scripting, Makefile, Metaprogramming, Oracle Solaris, Valgrind, GCC, Regular Expressions, Multithreading, Object-oriented Design (OOD), Object-oriented Programming (OOP), Shell Scripting, ODBC, Perl, Boost, Standard Template Library (STL), C++, C

Junior Researcher

2010 - 2011
Computer Modeling Lab, Institute of Molecular Biology of Armenia
  • Maintained a Beowulf-style Linux computer cluster.
  • Managed access to computational resources for a team of research scientists.
  • Set and ran molecular dynamics simulations on the cluster and local Grid computing facilities.
  • Managed access to computational resources for a team of research scientists.
  • Co-authored a research paper: https://link.springer.com/article/10.1134/S0026893312020185.
Technologies: Grid Computing, Linux, MPI

Network Architect

2006 - 2008
FiberNet Communications
  • Designed, implemented, and maintained the end-to-end architecture and the topology of the carrier network.
  • Configured and maintained the inter-domain and core network routing infrastructure using BGP, MPLS, and OSPF.
  • Designed the technical rules of connections between the carrier network and 10+ last-mile ISPs and 30+ individual clients, and maintained those connections.
Technologies: Open Shortest Path First (OSPF), IP Routing, Border Gateway Protocol (BGP), Multiprotocol Label Switching (MPLS), IS-IS

Non-intrusive C++ Serialization Library

As a part of my work on a commercial project, I designed and implemented a heavily template-based serialization library that allows users to save and restore the states of complex objects and programs in general. The versatility of the library allows a user to achieve this with minimal changes in the existing code.

Software IP gateway

As a part of my work on a commercial project, I designed and implemented a C++ software IP gateway for in-house L3 multihoming.

Specialized C++ Allocators

As a part of my work on a commercial project, I designed and implemented a range of specialized allocators for use in different latency-sensitive parts of the data flow as well as in scenarios where the states of the running processes must be preserved for later restoration.

ODBCv3 Driver

As a part of my work on a commercial project, I designed the back-end of an ODBCv3 driver and implemented it for a proprietary database.

Languages

C, C++11, C++, C++14, C++17, Perl, SQL, TypeScript, JavaScript

Other

Boost.Asio, Software Architecture, Clang, HTTP, IPv4, Algorithms, Lock-Free Programming, Multithreading, Regular Expressions, TCP/IP, Data Structures, Architecture, Shell Scripting, Cisco, IP Routing, Open Shortest Path First (OSPF), Grid Computing, Oracle Solaris, Scripting, Asynchronous I/O, Point-to-Point Tunneling Protocol (PPTP), Transport Layer Security (TLS), Datagram Transport Layer Security (DTLS), IPv6, Transmission Control Protocol (TCP), UDP, Border Gateway Protocol (BGP), GRID, Unix Shell Scripting, Multiprotocol Label Switching (MPLS), IS-IS, C++20, Kerberos, LDAP

Frameworks

Boost

Libraries/APIs

ODBC, Standard Template Library (STL), MPI, Sockets, AMQP, libpcap, OpenSSL, Node.js

Tools

Xcode, Valgrind, Makefile, CMake, GCC, Visual Studio, Git, RabbitMQ, Tcpdump, Bazel

Paradigms

Design Patterns, Socket Programming, Concurrent Programming, Object-oriented Programming (OOP), Object-oriented Design (OOD), Metaprogramming, Template Metaprogramming, Asynchronous Programming, REST, Testing, Unit Testing, Functional Programming, Software-defined Networking (SDN)

Platforms

MacOS, Unix, Linux, Windows, Solaris

Storage

JSON, ClickHouse

2003 - 2008

Specialist Degree in Applied Mathematics and Computer Science

Russian-Armenian State University - Yerevan, Armenia

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