Dmitriy Frostoff. A young person standing behind rock fans

Dmitriy Morozov

Frontend Developer

Profile

I'm Dmitriy Morozov (or as I prefer in most conditions Dmitriy Frostoff) gif smile in black glasses Civil construction engineer in the past,
Frontend developer in present
and musician all life long 🎼🎸🎤🎹🎹🎹🎹🎹🎹🎹🥁

gif animation facts

Positive, sympathetic, responsible, friendly person that likes learning how to learn to reach mastery in interesting business. (I extremely like Mathematic analisys and Phisics, Music, Drawing. In Moscow State University of Civil Engineering I had two diplomas with honors (red diplomas)).

I want to reveal my abilities in the best possible way in Frontend Development.

Job experience

 

Student Frontend Developer

September 2022 — present

The Rolling Scopes School
  • creating of landing pages based on Figma layouts (stack: Webpack 5 + Gulp 4, Vanilla JS, SCSS /CSS, HTML);
  • development of simple applications (stack: Webpack 5, Vanilla JS / TS, SCSS /CSS, HTML);
  • formatting of own code and commit messages using: ESLint, Prettier, Husky;
  • learning the Behavior-driven development (BDD) and writing Unit tests (Jest, Mocha + Chai);
  • debug of own code using Chrome DevTools, VSCode devtools (node.js debugger); refactoring of own code;
  • learning the Frameworks (React and its infrastructure);
  • development within the time limits set in the TOR;
  • code review of other students' Build projects based on the established TOR;
  • fix the discrepancies with TOR found by another students over the cross - check review of my Builds;
  • learning the modern stack of technologies and methodologies of Frontend Development (course program );
  • basic understanding of application architectures: MVC, MVP, MVVM, Modular Architecture, Atomic design, Feature-Sliced Design;
  • learning the Software Development Lifecycle (SDLC), facing with the basics of Agile (Scrum, Kanban) and Waterfall software development methodologies;
  • in-depth learning of modern vanilla JavaScript, TypeScript and the programming in principle;
  • a self - rely searching for solutions of emerging technical problems and up-to-date technical information to complete the tasks;
  • interaction with other students and an old hand developers - to improve the quality of own code, to find optimal solutions, and to solve technical problems (the "30-minute Rule");

Civil engineer

December 2019 — August 2022

Department of construction and repair of FSUE "Production Supply Enterprise", Moscow
  • Preparation of sets of documents for commissioning of the facility;
  • Input control of project and budget documents;
  • Interaction with the budget department;
  • Archiving and maintenance of building site records;
  • preparation of reports on construction materials used in the construction of buildings;
  • participation in the commissioning of a finished construction facility;

Civil engineer (general construction)

August 2019 — October 2019

"UNR-17", Moscow
  • Preparation of sets of documents for commissioning of the facility;
  • Input control of project and budget documents;
  • Interaction with the budget department;

Junior foreman, acting job superintendant (within 6 months), Junior foreman of building and finishing works

August 2018 — August 2019

LLC "Tashir-Construction", Moscow
  • organization of works on construction of monolithic structures of buildings, manufacture of finishing works;

Junior foreman, acting job superintendant (within 6 months), Junior foreman of building and finishing works

August 2018 — August 2019

LLC "Tashir-Construction", Moscow
  • organization of works on construction of monolithic structures of buildings, manufacture of finishing works;

Structural engineer

April 2017 — June 2018

LLC GC "Olimproekt", Moscow
  • Collective development of project and detailed documentation of excavation enclosures, of structural elements of buildings;

Assistant Chief structural Engineer (3rd year student)

June 2015 — July 2015

LLC MC "Dinpos", Moscow
  • Familiarity with projects and documentation at the stages of implementation: PD, DD;
  • Calculations of structures in SCC SCAD and manually; verification of calculations;
  • Application of the skills of a structural engineer;

education

 

code example

 

description:

Never visit a . . . !?

Subtract the sum

Complete the function which get an input number n such that n >= 10 and n < 10000, then:

  • Sum all the digits of n.
  • Subtract the sum from n, and it is your new n.
  • If the new n is in the list below return the associated fruit, otherwise return back to task 1.

Example

n = 325

sum = 3+2+5 = 10

n = 325-10 = 315 (not in the list)

sum = 3+1+5 = 9

n = 315-9 = 306 (not in the list)

sum = 3+0+6 = 9

n = 306-9 = 297 (not in the list)

etc...

...until you find the first n in the list below....

There is no preloaded code to help you. This is not about coding skills; think before you code

click to view drawn-out object (CAUTION! far drawn-out!!!)
                  const DICTIONARY = {
                      1:`kiwi`,
                      2:`pear`,
                      3:`kiwi`,
                      4:`banana`,
                      5:`melon`,
                      6:`banana`,
                      7:`melon`,
                      8:`pineapple`,
                      9:`apple`,
                      10:`pineapple`,
                      11:`cucumber`,
                      12:`pineapple`,
                      13:`cucumber`,
                      14:`orange`,
                      15:`grape`,
                      16:`orange`,
                      17:`grape`,
                      18:`apple`,
                      19:`grape`,
                      20:`cherry`,
                      21:`pear`,
                      22:`cherry`,
                      23:`pear`,
                      24:`kiwi`,
                      25:`banana`,
                      26:`kiwi`,
                      27:`apple`,
                      28:`melon`,
                      29:`banana`,
                      30:`melon`,
                      31:`pineapple`,
                      32:`melon`,
                      33:`pineapple`,
                      34:`cucumber`,
                      35:`orange`,
                      36:`apple`,
                      37:`orange`,
                      38:`grape`,
                      39:`orange`,
                      40:`grape`,
                      41:`cherry`,
                      42:`pear`,
                      43:`cherry`,
                      44:`pear`,
                      45:`apple`,
                      46:`pear`,
                      47:`kiwi`,
                      48:`banana`,
                      49:`kiwi`,
                      50:`banana`,
                      51:`melon`,
                      52:`pineapple`,
                      53:`melon`,
                      54:`apple`,
                      55:`cucumber`,
                      56:`pineapple`,
                      57:`cucumber`,
                      58:`orange`,
                      59:`cucumber`,
                      60:`orange`,
                      61:`grape`,
                      62:`cherry`,
                      63:`apple`,
                      64:`cherry`,
                      65:`pear`,
                      66:`cherry`,
                      67:`pear`,
                      68:`kiwi`,
                      69:`pear`,
                      70:`kiwi`,
                      71:`banana`,
                      72:`apple`,
                      73:`banana`,
                      74:`melon`,
                      75:`pineapple`,
                      76:`melon`,
                      77:`pineapple`,
                      78:`cucumber`,
                      79:`pineapple`,
                      80:`cucumber`,
                      81:`apple`,
                      82:`grape`,
                      83:`orange`,
                      84:`grape`,
                      85:`cherry`,
                      86:`grape`,
                      87:`cherry`,
                      88:`pear`,
                      89:`cherry`,
                      90:`apple`,
                      91:`kiwi`,
                      92:`banana`,
                      93:`kiwi`,
                      94:`banana`,
                      95:`melon`,
                      96:`banana`,
                      97:`melon`,
                      98:`pineapple`,
                      99:`apple`,
                      100:`pineapple`,
                    }
                  

My decision:

click to view

                // JavaScript
                "use strict";

                function SubtractSum(n) {
                  function numberToSumOfNumbers(num) {
                    return `${num}`
                      .split(``)
                      .map(elem => +elem)
                      .reduce((sum, num) => sum + num, 0)
                  }
        
                  function newNumber(oldNumber, sum) {
                    return oldNumber - sum;
                  }
        
                  function checkTheDictionary(newNumber, DICTIONARY) {
                    return DICTIONARY[newNumber] ? true : false;
                  }
        
                  let nextNumber = newNumber(n, numberToSumOfNumbers(n));
        
                  function recursionIteration(nextNumber) {
                    if (checkTheDictionary(nextNumber, DICTIONARY)) {
                      return DICTIONARY[nextNumber];
                  } else {
                      nextNumber = newNumber(nextNumber, numberToSumOfNumbers(nextNumber));
                      return recursionIteration(nextNumber);
                    }
                  }
        
                  return recursionIteration(nextNumber);
        
                  // or just return `apple`, it'll fit perfectly)))  
                  // extremely enjoyed this Kata)))))))))) :)
                  //  return "apple";
                  }
            

projects

 

js30#2.2-image-galery

Project Description:

You need to create an application that displays the photos received from the API. Add a search to the application. When entering a search query, the photos that are displayed in the application are changed.

js30#2.2-image-galery

js30#1.2-audio-player

Project Description:

A music player that allows you to play music tracks in turn or flip through them by clicking on buttons. Each music track has a specific background image.

js30#1.2-audio-player

CSS Meme Slider

Project Description:

CSS Meme Slider is a task of Rolling Scopes School stage 0.

CSS Meme Slider PR

Library

Project Description:

Library is a stage #0 task in the course of which you will make the landing page of the site for the selection and sale of books, make it adaptive and interactive.

Library deploy

Shelter

Project Description:

Shelter is a project in which you have to create a website consisting of two pages, make it adaptive and interactive.

Shelter deploy

CSSBayan

Project Description:

Accordion implemented with the only HTML and CSS

CSSBayan PR

Momentum

Project Description:

Momentum is an analogue of the Chrome Web Store application of the same name. The application shows the time and username. The background image and greeting changes depending on the time of day. The application has a clock, an image slider, weather widgets, an audio player, a quote of the day block, and settings. Local storage is used to store the username and location.

Momentum web app deploy

Plants

Project Description:

Plants is the stage#0 task during which you will make up the landing page of a site that offers its services for growing plants in the garden and caring for them, making it adaptive and interactive.

Plants landing page deploy

CV#3. CV. Cross-Check

Project Description:

CV implemented with HTML, CSS & JS

CV#3. CV. Cross-Check deploy

CV#1. Markdown & Git

Project Description:

CV implemented with Markdown

CV#1. Markdown & Git