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

Dmitry Matrosov

Verified Expert  in Engineering

Full-stack Developer

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

Dmitry is a skilled full-stack engineer with a strong foundation in Go, databases, and API integration. Excelling in back-end development and system architecture, particularly in the fintech sector, he creates complex, event-driven systems. Dmitry simplifies complex projects into manageable tasks, fostering an environment where junior and mid-level developers thrive under his guidance. His adept coordination ensures smooth collaboration, elevating both project outcomes and team synergy.

Portfolio

Independent Contract Work
Domain-driven Design (DDD), Concourse CI, GitLab CI/CD, Protobuf, NATS...
Kalshi
Go, GoLand, PostgreSQL, Apache Kafka, Protobuf, APIs, REST APIs, Events...
FuboTV
Protobuf, APIs, Git, SQL, gRPC, REST APIs, Continuous Delivery (CD)...

Experience

Availability

Full-time

Preferred Environment

GoLand, Docker, Git, MacOS, Terminal

The most amazing...

...project I've designed involved complex fintech solutions, with extensive API integrations and many internal subsystems.

Work Experience

Contractor

2001 - PRESENT
Independent Contract Work
  • 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.
  • Transitioned a large and complex PostgreSQL database to MongoDB.
  • Designed core back-end services for a complex web project. The objective was to thoughtfully split the previously monolithic app into smaller independent parts, acting as microservices with well-defined APIs.
  • Integrated Bitcoin and Ethereum nodes into a cryptocurrency trading system.
Technologies: 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, Architecture, JSON, Code Architecture, CI/CD Pipelines, Gomega, Object-oriented Programming (OOP), Agile Software Development, Freelancing, Software Development, RPC, REST, Linode, NSQ.io, OS X, ITerm, Tmux, Datadog, Amazon Web Services (AWS), Blockchain

Back-end Architect

2020 - 2023
Kalshi
  • Ensured the quality and robustness of all back-end systems, facilitating a smooth production launch of the trading platform.
  • Designed a distributed back-end system, incorporating numerous microservices that communicate via REST APIs, gRPC, and Apache Kafka.
  • Established a consistent approach for writing unit and integration tests in Go across all back-end services.
  • Led the integration of projects with external financial systems through APIs, webhooks, and event-based protocols.
  • Developed data schemes and event protocols to enable complex data flows across systems, including integration with 3rd-party systems.
Technologies: Go, GoLand, PostgreSQL, Apache Kafka, Protobuf, APIs, REST APIs, Events, Testing, CI/CD Pipelines, CircleCI, GitHub, Docker, Kubernetes, Architecture, JSON, Code Architecture, Gomega, Object-oriented Programming (OOP), Test-driven Development (TDD), Software Development, RPC, REST, OS X, ITerm, Tmux, Amazon Web Services (AWS), Terraform, Datadog

Senior Software Engineer

2016 - 2017
FuboTV
  • Worked in a distributed team of talented engineers on some critical infrastructural parts that worked 24/7 and served tens of millions of requests a day.
  • Analyzed and optimized heavy PostgreSQL requests, significantly reducing some internal services' latency.
  • Collaborated with colleagues to establish a consistent approach to testing in Go across the team. Implemented hundreds of test cases to ensure the code quality and stability of production services.
  • Created an internal library in Go to encode and decode HLS data.
  • Built a complete internal service top to bottom using Go and PostgreSQL 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: Protobuf, APIs, Git, SQL, gRPC, REST APIs, Continuous Delivery (CD), Continuous Integration (CI), Docker, Test-driven Development (TDD), Microservices, PostgreSQL, JavaScript, Go, JSON, Agile Software Development, Software Development, REST, ITerm, Tmux

Senior Back-end Developer

2011 - 2015
Crazy Panda
  • Worked in a team of game developers on complex game projects deployed on social networks in Europe, US, and Japan. Some games have become highly popular and gained tens of millions of users worldwide.
  • Designed and implemented well-defined data exchange protocols between system components 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 complex game logic's correctness and 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, JSON, Code Architecture, Object-oriented Programming (OOP), Software Development, Tmux

Senior Perl Developer

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

Web Developer

2001 - 2006
Chess Server iGame.ru
  • Founded the project and wore many hats 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, the chess gameplay, round-robin tournaments, chess teams, team competitions, and forum subsystems.
  • Implemented the transition to new technologies—for example, CGI to mod_perl, and introduced a templating system.
  • Designed the database layout, maintained its work, and introduced necessary optimizations to keep up with the load caused by the growing popularity of the project.
  • Refactored continously 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, Object-oriented Programming (OOP), Software Development

Chess Server iGame.ru

http://igame.ru
Chess Server iGame.ru is one of Russia's most popular chess servers in the 2000s.

I was responsible for the entire development, including the Perl-based web server and HTML and JavaScript front end. Perl has proven to be a good choice for this high-load project, with excellent performance under serious loads.

ACH Deposits and Withdrawals for a Trading Platform

I designed and led the integration with a 3rd-party payments provider, enabling customers of a trading platform to deposit and withdraw funds via ACH. This solution accounted for numerous edge cases and intricate internal requirements and was supported by hundreds of unit and integration tests.

Clean Architecture in Go

I designed a consistent approach to structure the code for microservices written in Go, adhering to the popular clean architecture principles. This approach was adopted across the entire codebase, encompassing dozens of microservices, and established well-defined rules and frameworks for the team. This initiative significantly reduced cognitive load, facilitating seamless transitions between projects and easing the initiation of new ones for all team members.

Languages

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

Frameworks

gRPC, Redux

Libraries/APIs

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

Tools

GoLand, Git, GitHub, Concourse CI, NGINX, GitLab CI/CD, CircleCI, ITerm, Tmux, Apache, ChatGPT, Terminal, Terraform

Paradigms

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

Platforms

Docker, Apache Kafka, Linux, Linode, Kubernetes, Amazon Web Services (AWS), OS X, Google Cloud Platform (GCP), MacOS, Blockchain

Storage

JSON, Redis, Memcached, PostgreSQL, MongoDB, MySQL, Datadog, NoSQL

Other

Messaging, RPC, Architecture, APIs, Software Architecture, Software Development, Message Queues, NATS, Freelancing, CI/CD Pipelines, Code Architecture, Domain-driven Design (DDD), Events, Webhooks, ACH, Custom Protocols, Frameworks, Information Systems

1999 - 2003

Bachelor's Degree in Information Systems and Computers

Saint­ Petersburg State Polytechnical University - Saint Petersburg, 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