theme switcher

🧑‍💻 About Myself:

avatar

My name is Michail and throughout my studies, I have gained hands-on experience working in laboratories, ensuring product quality and adhering to industry standards.
While my academic background, I have a strong passion for programming and technology. Computers and the internet have always been a big part of my life, and I am deeply motivated to create something of my own in the digital world. My curiosity drives me to explore new technologies, programming languages, libraries, and frameworks, as their vast possibilities align perfectly with my desire for continuous learning.
One of my key strengths is my versatility—I immerse myself deeply in different fields and always strive to understand new concepts thoroughly. I am highly goal-oriented, self-motivated, and eager to improve my skills. Even though my professional experience in tech is still growing, my dedication to mastering new knowledge makes me confident in my ability to succeed in this dynamic field.

🤹🏻 Skills and Proficiency:

icon skills
icons GIT, GITHUB, GITLAB
iconsicons HTML5, CSS3 (preprocessor SASS) , BEM methodology
icons JavaScript, TypeScript (basics)
icons Basic python
icons Basic knowledge or relational database SQL and non-relational database MONGODB (mongoose)
icons Basic concepts of node.js
icons Basic C (pointers and memory allocation)
icons react (basic hooks, react router)
icons basic tailwind, bootstrap
icons backend: express (basics)

🤓 Interesting problem that I solved using JS (Project Euler):

Problem 12: Highly divisible triangular number The sequence of triangle numbers is generated by adding the natural numbers. So the 7th triangle number would be 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. The first ten terms would be: 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ... Let us list the factors of the first seven triangle numbers: We can see that 28 is the first triangle number to have over five divisors. What is the value of the first triangle number to have over n divisors?

        
          
            function* genTriangleNum() {
              let k = 1;
              while (true) {
                yield (k * (k + 1) / 2)
                k++
              }
            }
          
            function checkDivisors(num) {
              let count = 0
              for (let i = 1; i <= Math.sqrt(num); i++) {
                if (num % i === 0) {
                  count += (i * i === num) ? 1 : 2
                }
              }
              return count
            }
            
            function divisibleTriangleNumber(n) {
              const gen = genTriangleNum()
              let triangle
              while (true) {
                triangle = gen.next().value
                if (checkDivisors(triangle) > n) {
                  return triangle
                }
              }
            }
         
        
        

💼 Experience & Projects

Web page for Digital-Studio (Semantic HTML, SASS, adaptive layout)
Business card web page (**Semantic HTML, SASS, adaptive layout**)
repository My SQL knowledge (thx to cs50 HARVARD)

🎓 Education and courses:

Institution / Course Description Link
Kazan National Research Technological University Higher education from one of Russia's leading technological universities. Visit website
Web Development Course (Innopolis University) Completed web development course at Russia's premier IT university. Visit website
freeCodeCamp (in progress) Comprehensive programming curriculum covering various technologies. Visit website
Harvard CS50 (in progress) Harvard University's introduction to computer science and programming. Visit website
Arizona State University TESOL Professional certificate in Teaching English to Speakers of Other Languages. View certificate

🗺️ Languages

======= Document