Русский

😎 Professional knowledge and skills  

I came to web development quite predictably, after graduating with a degree in economic cybernetics. It was a specialty that included disciplines in programming, economics, mathematical analysis and modelling.

I studied programming at university for five years. The first course started with learning the basics of low-level programming language assembler, and after that I studied C++ along with database design. The department at the university was progressive and focused on new technologies and my thesis advisor was promoting neural networks and AI, so the software part of my thesis project worked with the neural network and the project was programmed in C++.

Programming wasn’t very exciting for me at that time, I mostly liked to design interfaces of programs, which we created in the GUIRADBorland C++Builder. But I really liked web-development and frontend, which I touched a little bit in the last year of the university and even then I made my first online store based on JoomlaCMS‌ for my friend.

After graduating from university in 2008, after working for a few months as an electronic engineer, I safely quit my job and decided to build a career in IT. In early 2009 I got a job in a small, newly formed web integration department of a large company to create websites on 1C-Bitrix CMS, which is very popular in Eastern Europe. I wrote an article about creating themes on this CMS in my old blog, which I actively kept at that time. In the first months of work I’ve acquired the initial practical base in HTML/CSS-coding, the basics of JavaScript, PHP, and finally became convinced that I wanted to devote my professional career to web development.

Now, 13 years later, I’m still doing HTML/CSS-coding and learning new web standards, but I also spend a lot of time on interface design, programming and project management.

🧢 HTML/CSS-coding, JavaScript programming and UX  

I make the layout adaptive, semantic and accessible. If the designer only made the desktop version of the layout, I can adapt it for mobile widths at all breakpoints during HTML/CSS-coding. I give priority to the Mobile First approach. I work closely with the designer and help improve the layout and design a complex UX. I use HTML tags for their semantic purpose and never use div-tags only. For example, I use <header> for the header, <footer> for the footer and <nav><ul><li> for page navigation.

I love the component approach and reusability of code. I use BEM methodology, write CSS in SCSS terminology and actively use all the advantages of this preprocessor. I try to make any layout with an understandable design system: at first I necessarily discuss everything with the designer, and if for some reason the designer is unavailable, I still tidy up the UI system in the process of coding.

Create responsive HTML emails. I have experience not only with MJML and Foundation frameworks, but also without their syntactic sugar, but with handmade tables and inline styles.

I design interfaces. I work with interfaces, from simple landing pages to complex administrative panels. I design and prototype. I study the problem, do UX research, use knowledge, years of experience, common sense and find the best solution.

Improve page load speed. I choose image formats with fallbacks for those browsers that don't support modern formats. Use appropriate compression algorithms for bitmaps, working with SVG where bitmaps are not needed. Use the Critical CSS approach when quick loading of the first screen is important. Include links to resources in the right order. Optimize fonts: add only the necessary glyphs, use modern formats. I profile client optimization in Chrome DevTools.

I program in JavaScript. I know this language at a basic level, for example, I can create a web component using the syntactic sugar of JS classes without any library, but I don't program complex business logic in JavaScript. Such skills allow me to create basic web page layouts or work in conjunction with a JavaScript programmer on complex UI components that are built on different JS frameworks and libraries such as jQuery, Angular, Vue.js, React, and others. I can take on the function of JS developer and create some simple software logic as part of the cross-functional team in Scrum framework.

I work with revision control. Always write code with git: GitHub, GitLab or Bitbucket. I always initiate code review of my own code and do code reviews of my colleagues’ code.

Every day I use tools: System console, Midnight Commander, Google Chrome DevTools, PhpStorm, VS Code, Figma, Gulp, Webpack, Docker, Linux, MacOS.

I’m learning all the time. The world of web technology is changing very rapidly, web standards are constantly evolving, and with each release browser developers bring new features that support the new standards. It can be difficult to keep up even with those changes in CSS and HTML, and keeping up with new changes in the world of JavaScript libraries and Front-End Ops is even harder. To keep up with new technologies, I read books and special resources on web technology, development, and UX. I watch videos of lectures and conferences organized by the front-end community.

⛑️ Templating and backend  

I create themes for WordPress and develop projects based on this CMS:

I can make a media project on my own. It can be a website with a complex section structure or a blog. I can program the logic based on custom fields and other WordPress API. I have experience in creating and managing blogs, magazines and corporate websites from development to content management at the level of working with the editorial staff.

I develop e-commerce on the Shopify platform. I can develop a theme for a store, сreate a structure of sections and product collections, develop additional logic based on custom fields. I know the basic principles of the Shopify API, plugins and the Liquid template language. I also have experience with Liquid templates for ZenDesk help system.

Building static websites on Jekyll, Hugo, 11ty and Gatsby

🎩 Project management and analytics  

I communicate with clients at the level of Project Manager. I manage small projects and teams. Lately in almost all projects I perform the functions of a project manager and a system analyst:

I use Jira task manager, manage all tasks in it, keep track of the status, design and commenting on tasks to understand the progress of the project. I have experience working on Scrum framework in Agile.

Know the JTBD and CJM approach. I’ve done market research using these methodologies.