Dmitry Matrosov, Developer in Sydney, New South Wales, Australia
Dmitry is available for hire
Hire Dmitry

Dmitry Matrosov

Verified Expert  in Engineering

Architecture Developer

Location
Sydney, New South Wales, Australia
Toptal Member Since
September 20, 2015

Dmitry is a highly experienced full-stack programmer and architect. His primary area of expertise is back-end development. This includes creating the overall design, choosing a proper technology stack, coding, writing tests, creating deployment schemes, and more. Dmitry prefers using a Linux environment and open-source tools.

Portfolio

Freelance
Vim Text Editor, Domain-driven Design (DDD), Concourse CI, GitLab CI/CD...
FuboTV
Vim Text Editor, Protobuf, APIs, Git, SQL, gRPC, REST APIs...
Crazy Panda
APIs, Git, SQL, Test-driven Development (TDD), NGINX, Bash, Linux, PostgreSQL...

Experience

Availability

Part-time

Preferred Environment

Vim Text Editor, GoLand, Docker, Tmux, ITerm, Git, OS X

The most amazing...

...project I've designed and implemented is a web service for playing chess. It was one of the most popular chess servers in Russia back in the day.

Work Experience

Contractor

2001 - PRESENT
Freelance
  • Designed and implemented a complete back-end system for a social network application. The solution allowed the company to start from a simple mobile front end and then extend it to a web application.
  • Designed and implemented back-end services to enable complex REST and websocket APIs for a trading platform.
  • Performed a transition of a large and complex PostgreSQL database to MongoDB.
  • Designed the architecture and some core back-end services for a complex web project. The objective was to thoughtfully split the previously monolithic application into smaller independent parts, which would act as microservices with well-defined APIs. This approach, along with using the domain-driven design methodology, significantly boosted the development process.
Technologies: Vim Text Editor, Domain-driven Design (DDD), Concourse CI, GitLab CI/CD, Protobuf, NATS, Message Queues, Messaging, APIs, Software Architecture, SQL, Test-driven Development (TDD), gRPC, REST APIs, Continuous Delivery (CD), Continuous Integration (CI), jQuery, Sass, CSS, HTML, Redux, Vue, React, MongoDB, MySQL, DevOps, Bash, Linux, Git, NGINX, Google Cloud Platform (GCP), JavaScript, Redis, PostgreSQL, Kubernetes, Docker, Microservices, Go

Senior Software Engineer

2016 - 2017
FuboTV
  • Worked in a distributed team of talented engineers on some critical parts of the infrastructure that worked 24/7 and served tens of millions requests a day.
  • Analyzed and optimized heavy PostgreSQL requests which helped to significantly reduce the latency of some internal services.
  • Actively collaborated with colleagues to establish a consistent approach to testing in Golang across the team. Implemented hundreds of test cases to ensure the quality of the code and stability of services in production.
  • Created an internal library in Golang to encode/decode HLS data.
  • Created a complete internal service top to bottom using Golang and Postgres on the back end and React, Redux, and Bootstrap on the front end. The solution highly simplified and reduced the time required for some routine internal operations.
Technologies: Vim Text Editor, Protobuf, APIs, Git, SQL, gRPC, REST APIs, Continuous Delivery (CD), Continuous Integration (CI), Docker, Test-driven Development (TDD), Microservices, PostgreSQL, JavaScript, Go

Senior Back-end Developer

2011 - 2015
Crazy Panda
  • Worked in a team of game developers on complex game projects deployed on social networks in Russia, Europe, USA, and Japan. Some of the games have become highly popular and gained tens of millions of users worldwide.
  • Designed and implemented well-defined data exchange protocols between components of the system that allowed the team to focus on the business logic and not spend time on low-level coordination.
  • Worked closely with front-end developers to establish coordinated and flawless interaction of back-end servers and front ends.
  • Wrote thousands of unit tests to ensure the correctness of the complicated game logic and to achieve higher uptimes.
  • Profiled, refactored, and optimized the codebase for some game projects in the company. It helped to improve the robustness of the application servers significantly.
Technologies: APIs, Git, SQL, Test-driven Development (TDD), NGINX, Bash, Linux, PostgreSQL, Perl

Architect, Senior Perl Developer

2006 - 2011
Ontico
  • Worked on numerous web projects for clients of the company.
  • Contributed to the development of a Perl-based web framework that the company used as a fundamental part of many high-load projects.
  • Implemented a back end for a media library for a telecom operator. It helped to streamline the process of media uploading, processing, and streaming.
  • Implemented a full-text search feature for a big (15 million messages) and rapidly growing web forum.
  • Communicated with end users to gather feedback, and to understand their needs. Turned the feedback into concrete solutions.
Technologies: APIs, Software Architecture, Bash, Git, SQL, Memcached, NGINX, Apache, PostgreSQL, Linux, Mod_perl, Perl

Web Developer

2001 - 2006
Chess Server iGame.ru
  • Founded the project and wore many hats in it, from architect to designer and full-stack web developer. The project gained a lot of buzz and became one of the most popular chess servers in Russia back in the day.
  • Implemented many major features—for example, round robin tournaments, chess teams, team competitions, or forum subsystems.
  • Implemented the transition to new technologies—for example, CGI to mod_perl.
  • Designed the database layout, maintained its work, and introduced necessary measures to keep up with the growing popularity of the project.
  • Continuously refactored the code to keep the growing codebase in good shape.
Technologies: APIs, Software Architecture, Bash, SQL, REST APIs, NGINX, Memcached, MySQL, Mod_perl, Apache, CSS, HTML, JavaScript, Perl

Chess Server iGame.ru

http://igame.ru
One of the most popular chess servers in Russia in the 2000's. I was responsible for the entire development, including Perl-based web server and HTML+JavaScript front-end. Perl has proven to be a good choice for this high-load project, having shown an excellent performance under serious load.

Languages

Go, HTML, Perl, JavaScript, CSS, SQL, Sass, Bash

Frameworks

gRPC, Redux

Libraries/APIs

Protobuf, JSONP, REST APIs, jQuery, Gomega, Mod_perl, React, NSQ.io, Vue

Tools

Git, Concourse CI, NGINX, GitLab CI/CD, ITerm, Tmux, GoLand, Vim Text Editor, Apache

Paradigms

Test-driven Development (TDD), REST, Object-oriented Programming (OOP), Continuous Integration (CI), Microservices, DevOps, Agile Software Development, Continuous Delivery (CD)

Platforms

Docker, Linux, Linode, OS X, Kubernetes, Google Cloud Platform (GCP)

Storage

JSON, Redis, Memcached, PostgreSQL, MongoDB, MySQL

Other

Messaging, Ajax, RPC, Architecture, APIs, Software Architecture, Software Development, Message Queues, NATS, Freelancing, Code Architecture, Domain-driven Design (DDD)

1999 - 2003

Bachelor's Degree in Information systems and computers

Saint­ Petersburg State Polytechnical University - Saint Petersburg

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