Resume

About me

name
German Volkov
birthday
02.07.1997
languages
English, Russian (native)
position
Lead Fullstack Engineer (Frontend-focused)
German Volkov
I’ve been passionate about software development since I was 10 years old. Over the past 5 years, I’ve managed development teams of up to 10 people, focusing on collaboration, efficiency, and delivering high-quality results. I specialize in building fast, reliable applications and designing scalable architectures that drive product growth and streamline development processes.

Contacts

Skills

Languages

JavaScript
TypeScript
Python
C++
CSS
HTML

Libraries / frameworks / runtimes

React
React Native
Next.js
Node.js
Express
Fastify
Electron
Angular
Marionette
Backbone

Tools


AI
LLM-based applications

Design Systems
Shadcn
Ant Design
Chakra UI
Material UI
Tailwind CSS

State management
Redux
MobX
Zustand
React Hook Form

Styling
Less
Sass
PostCSS
Styled Components

Docs
Storybook
Styleguidist
Docusaurus

Bundlers
Webpack
Vite
Rollup
Gulp
BEM

Continuous Integration
Docker
CircleCI
GitHub Actions

Linting
Eslint
Stylelint
Prettier

Testing
Jest
Cypress
Puppeteer
Enzyme
React Testing Library

Cloud
AWS
Azure
Vercel
Heroku

Databases
MongoDB
PostgreSQL
MySQL
Redis
Prisma ORM

DevOps
Git
Kubernetes
Terraform

Management
Agile
Scrum
Kanban
Notion
Jira
Trello
Slack

Other
WebAssembly
Openseadragon
Canvas

Management

Team leadership
Task prioritization
1:1 meetings
Mentorship
Technical decision-making
Cross-team collaboration
Performance reviews & calibration
Conflict resolution

Work experience

07.2021

Toloka Lead Software Engineer

After Toloka separated from Yandex we started to build our new product - Annotation Studio. As a team lead, I managed a team of up to 10 developers, balancing efforts across three parallel development projects. My role involved distributing responsibilities, ensuring effective workload management, and keeping the team aligned on priorities.

To maintain efficiency, I conducted regular 1:1 syncs with each developer, resolving blockers and providing guidance. Together with the team, we made key technical decisions, such as choosing the right design system to streamline our UI development.

Collaboration with product managers and stakeholders was also a crucial part of my role—I actively participated in prioritization discussions, helping to focus on high-impact tasks while filtering out less critical ones. Additionally, I took part in developer performance evaluations, contributing to review processes and skill calibration.

On the technical side, I led our transition to shadcn components, migrated our custom forms library to react-hook-form, and contributed to python-based data pipeline migrations. These changes improved maintainability and development speed, ensuring a smooth product evolution.

This experience strengthened my ability to lead teams, drive technical decisions, and align engineering efforts with business objectives.
04.2021

Toloka Senior Software Engineer

Toloka started to grow really fast and my task was to create interface from scratch for a new subproject called "Toloka App Services". So now I develop interface solutions for this project on React andMobX. Also I am working with some of our clients and develop solutions in Toloka for their business. I am also responsible for developing our portal pages, blog and docs at toloka.ai.
04.2019

Device farm for remote testing

In April I had a chance to participate in development of internal startup. This project gives ability to test your applications or websites remotely (via webapp) on real devices. I was developing frontend (React, Typescript), agents that control user sessions (Node.js, WebSockets), and tools for receiving device's screen image and sending commands to devices (C++). I created desktop app on Electron to proxy local traffic on remote devices. And I also created a tool to play sound from remote device in user's browser (С++, Node.jsand Web Audio API).
09.2018

Yandex.Toloka frontend developer

After my tasks that were connected to templates infrastructure I started to work on Toloka frontend. At this period of time we refactored our some parts of codebase to React with Typescript. So at this period I was able improve skills in this areas a lot. I also created many unit and integration tests with Jest.
01.2018

Yandex.Toloka templates infrastructure developer

After half a year working with Directory team and finishing all tasks I returned to Toloka. My main task was to create an infrastructure for developing hard and big Toloka templates. I created a tool via (mostly) Node.js that emulated Toloka environment to make developing such templates much easier. After that it was possible to create templates with different frameworks and libraries, such as React, Angular and etc. At this period I also created some big and complicated templates. There is even an article about one of them (the one with a car on picture).
03.2017

Yandex.Directory backoffice frontend developer

My team located in Russia in different cities. So it was interesting experience to work from Minsk "remotely" and to go on business trips to work together with development team on huge and important tasks. Project was written fully on BEM stack. My main task was to write e2e tests using Hermione. Than we had a task of updating verion of bem-core and refactor our project. After that my task was to transfer BEM forum to new design. On this project I started to use Node.js much more, so I successfully applied my knowledge from pet-projects.
12.2016

Yandex.Toloka frontend developer

At 20th of December I received a chance to work as a trainee for Yandex.Toloka project for 3 months. We were using Marionette.js - the Backbone framework. I never used it before, so, that was pretty exciting for me to learn something new. I was doing tasks that were related only for project's frontend. So I applied my knowledge of HTML5, CSS and Javacript during internship. As a result - at the end of my internship I got an offer from Yandex.
07.2016

Trainee

After second year at university I got the opportunity to work for Asseco. So at summer i went to Krakow, Poland. My internship lasted 2 months. It was really entertaining and useful experience for me. My task was to create an app, that prepares releases, so it mostly was related to infrastructure. I created basic web interface, where user could choose required options, and backend on Java, which was working with Git and called some bash commands. I interacted with my team in English, so there were no problems with communication.

Education

until
2020
from
2018

School of Business of Belarusian State University

Master degree
I study on "Innovative Management" specialization. Curriculum includes all of the main management disciplines: organizational behavior management, human resource management, strategic management, operations management, finance, economics, marketing, public relations. Courses are problem- and case-oriented. It really helps me to develop my managment skills, i am always trying to apply knowledge from this courses at my work.
until
2018
from
2014

Belarusian State University of Informatics and Radioelectronics

Bachelor degree
I studied on "Computing Machines, Systems and Networks" specialization. At the university I had training in C, C++, trainings in Java (Swing), Scala and databases. During study I made several interesting training projects: music library via C++, Pacman game on Java, and some others. Besides, I had some trainings, e.g. course in operation systems, course in computer architecture, course in machine learning, various mathematical courses; Assembler, C/C++, Delphi and so on. I had some hardware courses, that helped me understand how computers actually work. I also had experience working with Arduino.
Educational content
2022

Node.js lecture: creating URL-shortener

Lecture about Node.js at Yandex Frontend School, where we will create URL-shortener.
2021

New part of my Node.js lecture

Part of my second lecture about Node.js at Yandex Frontend School. This part is practical - about how to create real Node.js app.
2020

Node.js lecture

I gave a lecture about Node.js at Yandex Frontend School. I am still reading lecture about Node.js every year there.
Pet projects
2023

Evowords

Your personal foreign language dictionary. Add new foreign words easily. Do exercises to quickly memorize them. Optimize learning experience. Developed using LLM API, React, Zustand, Chakra UI, Fastify, PostgreSQL, Prisma.
2022

CellDX

Digital Pathology Platform to streamline the workflow of pathologists. It provides tools for image analysis, case management, and collaboration. Developed using React, Zustand, Ant Design, and Openseadragon as slides viewer.
2019

Momenter

Timer, stopwatch, countdown and calendar in one app. Made via React,Ant Design, react-compound-timer. Has Google authentication. Allows to edit timer view: font, background color and units. Allows to share a link for created timers.
2018

react-compound-timer

Timer compound component for react and react-native to make building timers less painfull. It incapsulates all timer logic - you should only think about rendering! Made via Typescript and React. Has no dependecies. Tested with Jest.Styleguidist used for docs.

Evomentor Landing

Responsive landing promo page for online-workouts app. It has a form to sign up for receiving email updates. It is made via React, React Router, Redux, and Styled Components. React rendering both on server (SSR) and client.
2017

vscode-bemmet

This is VSCode extension for Bemmet. Simple emmet-like tool to expand abbreviations into BEMJSON. Write abbreviation, select it, press Alt+B or choose 'bemmet: convert' command - your abbreviation will be replaced by BEMJSON.

vscode-switchLine

Simple VSCode extension for fast uncomment desired line of code. It could be useful if you change your API base URL frequently. With this extension you will not need to open same file over and over again - just use shortcuts.

Bytespace

Responsive landing page for museum of retro computers. It has a form to sign up for an excursion, 3 different sliders and an interactive map. It is made via React and Styled Components.
2016

BeFriend

HTML5 game that uses API from Russian social network Vkontakte. Login to start playing. You will need to answer questions about your friends and get points. Game uses different HTML5 APIs, such asVibration API, Service Worker (it has offline page), WebAudio APIand Fullscreen API.
2015

TypeFast

Online game made via Node.js and Socket.IO. Rules are simple: two players get connected, sentence appears on screen, player, who writes this sentence faster, get points. The one with most points wins.

Uzbek Cuisine Website

Landing page for uzbek restaurant. I created design by myself, it has 6 different sections. Website is responsive, so it's convenient to view it from mobile devices and tablets. It has modals when clicking on menu items and reviews carousel made via Javascript.

Technomart

HTML pages of website for online store of building materials and repair equipment. It was made in educational purposes with clean HTML, Javascript and CSS. It has popups when clicking on "Buy" button and simple gallery made via Javascript.