Semenov Oleg

Oleg Semenov

Front-End Developer

Contact information

Summary

Programming is a part of my life; it inspires and motivates me. In 2016, I started learning the Python programming language. It wasn't my first encounter with a programming language (I had previous experience with Pascal and C++), but this time it immersed me in the world of code, functions, and modules. Since then, I have been passionate about programming as a hobby.

In 2019, while pursuing my master's degree, I was assigned a project to create a corpus of the English language related to nuclear physics. Coincidentally, that was the time when I was fascinated with NLTK (Natural Language Toolkit). I developed software using Natural Language Processing (NLP) techniques and implemented it using the Python programming language.

In 2020, there was a scientific problem at the department related to measuring the diameters of erythrocytes in SEM (Scanning Electron Microscope) images. Applying my skills, I wrote a program for erythrocyte recognition. Now, the program automatically measured the areas and diameters of 1000 erythrocytes in just one minute.

In 2021, I decided to pursue my dream of becoming a programmer and, for that reason, I left my Ph.D. program at Moscow State University and enrolled in a Full-Stack Developer course. Now, I'm fully committed to honing my programming skills and working towards my goal of becoming a Full-Stack Developer.

Currently, my goal is to become a Full-Stack Developer.

Skills

  • Front-End: HTML5, CSS3,JavaScript/TypeScript
  • Frameworks/Libraries: React, Redux;
  • API/GraphQL: Axios, GraphQL, Apollo-GraphQL;
  • Build Tools: Vite;
  • Code Quality: Eslint, Prettier;
  • Testing: Vites, Cypress;
  • Databases: Postgres, Sqlite;
  • Deployment/Infrastructure: heroku, netlify, nginx;
  • Editors: VS Code, Atom;
  • Design: Figma;

Code example

KATA from CODEWARS: Write an algorithm that takes an array and moves all of the zeros to the end, preserving the order of the other elements.

function moveZeros(array) { let i = 0; let j = 0; while (i ‹ array.length) { if (array[i] !== 0) { [array[i], array[j]] = [array[j], array[i]]; j++; } i++; } return array; }

Projects

Education

University

  • North-Eastern Federal University/specialist in radiophysics and electronics(5 years)
  • North-Eastern Federal University/master of physics(specialization: medical physics)
  • Moscow State University/PhD(specialization: biophysics)(not finished)

Languages

  • English - Intermediate
  • Russian - Native