pleshevski.ru/dist/assets/works.html-EdO4hOM5.js

1 line
7.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{_ as e,c as t,o as r,e as o}from"./app-YqJ2N5FF.js";const a={},i=o('<h2 id="highlighted-working-experience" tabindex="-1"><a class="header-anchor" href="#highlighted-working-experience"><span>Highlighted working experience</span></a></h2><h3 id="binary-management" tabindex="-1"><a class="header-anchor" href="#binary-management"><span>Binary Management</span></a></h3><ul><li>Dates: August 2018 currently</li><li>Roles: Lead Fullstack Developer, Team Lead, Architect</li></ul><p>Development of a Project Management Tool for Interior Designers</p><h5 id="backend-graphql-api" tabindex="-1"><a class="header-anchor" href="#backend-graphql-api"><span>Backend GraphQL API</span></a></h5><p>Stack: <code>Node.JS</code>, <code>Apollo</code>, <code>PostgreSQL</code>, <code>Redis</code>, <code>BullMQ</code></p><ul><li>Migrated database triggers into business logic. Code became easier to read and maintain, and the system became more reliable.</li><li>Introduced unit testing and integration testing practices. I wrote over 70% of all tests myself.</li><li>Added GraphQL subscriptions for dynamic updates.</li></ul><h5 id="frontend" tabindex="-1"><a class="header-anchor" href="#frontend"><span>Frontend</span></a></h5><p>Stack: <code>React</code>, <code>Apollo</code>, <code>Antd</code></p><ul><li>Formed a UIKit and general components, optimized complex and loaded components.</li><li>Changed API work on the frontend.</li><li>Introduced integration testing practice using Cypress.</li><li>Migrated the entire project to TypeScript. Created isolated system modules.</li></ul><h5 id="leadership-of-the-team" tabindex="-1"><a class="header-anchor" href="#leadership-of-the-team"><span>Leadership of the Team</span></a></h5><ul><li>Introduced TDD (Test-Driven Development) practices.</li><li>Brought the &quot;Critical Chain Method&quot;, the &quot;Buffer Method&quot;, and the &quot;Backward Planning&quot; method into the project. Helped the team get in sync, releasing small batches every week.</li><li>Created individual development plans for team members.</li></ul><h5 id="architecture" tabindex="-1"><a class="header-anchor" href="#architecture"><span>Architecture</span></a></h5><ul><li>Broke down the entire codebase into modules by feature.</li><li>Optimized <code>PostgreSQL</code> database, splitting company data into separate schemas and applying partitioning tables.</li><li>Added query caching with Redis.</li><li>Reduced infrastructure costs by 5 times, migrating the project from Kubernetes to NixOS.</li></ul><hr><h3 id="core-spirit-back-office" tabindex="-1"><a class="header-anchor" href="#core-spirit-back-office"><span>Core Spirit (Back Office)</span></a></h3><ul><li>Даты: Август 2024 - currently</li><li>Роль: Lead Fullstack Developer</li></ul><p>Development of the Back Office for Core Spirit social platform.</p><ul><li>Integrated <code>Dependabot</code>, which helped update all outdated dependencies. Replaced webpack with <code>vite</code>.</li></ul><hr><h3 id="master-progress" tabindex="-1"><a class="header-anchor" href="#master-progress"><span>Master Progress</span></a></h3><ul><li>Dates: May 2018 - currently (Passively maintained)</li><li>Role: Tech Lead</li></ul><p>Development web infrastructure of the educational center Master Progress</p><ul><li><a href="https://masterprogress.ru" target="_blank" rel="noopener noreferrer">The main site</a> (<code>Python</code>, <code>Flask</code>).</li><li><a href="https://cabinet.masterprogress.ru" target="_blank" rel="noopener noreferrer">Student&#39;s cabinet</a> (<code>Python</code>, <code>Flask</code>, <code>TypeScript</code>, <code>React</code>, <code>PostgreSQL</code>).</li><li><a href="https://rosmintrud.masterprogress.ru" target="_blank" rel="noopener noreferrer">A tool for rosmintrud</a> (<code>Deno</code>, <code>Vue</code>, <code>Typescript</code>)</li><li>A complete infrastructure was created on <code>NixOS</code>. Before that, I had created an infrastructure using <code>Drone CI</code> / <code>Woodpecker CI</code> and <code>Docker swarm</code>, which has been running for over 5 years.</li></ul><hr><h3 id="core-spirit" tabindex="-1"><a class="header-anchor" href="#core-spirit"><span>Core Spirit</span></a></h3><ul><li>Dates: August 2018 - May 2020, August 2024 - currently</li><li>Role: Lead Fullstack Developer</li></ul><p>Development of Social platform focusing on human and planetary enhancement.</p><ul><li>A REST API (using <code>Node.JS</code>, <code>Express</code>, and <code>PostgreSQL</code>) for the main website and back office. I also got to work with a new version of the REST API using <code>Go</code> and <code>PostgreSQL</code>.</li><li>Auto poster to various social networks and messengers (Facebook, LinkedIn, Twitter, Telegram).</li><li>Neural network for automatic categorization of articles.</li></ul><hr><h4 id="merlion" tabindex="-1"><a class="header-anchor" href="#merlion"><span>MERLION</span></a></h4><ul><li>Dates: March 2016 May 2018</li><li>Role: Senior Fullstack developer</li></ul><p>In this company there were 6 considerable projects I have successfully completed:</p><ul><li>optimize the creation of promotional pages (PHP, JavaScript)</li><li>support main traditional site <a href="https://citilink.ru" target="_blank" rel="noopener noreferrer">https://citilink.ru</a> (PHP, JavaScript)</li><li>development of parsing to monitor products for changes in price, quantity/availability in stock, rating and other fields based on data from 55 websites (Node.JS, Express)</li><li>work with neural networks for matching of goods</li><li>development face recognition apps for Android (Java)</li></ul><hr><h2 id="chronology" tabindex="-1"><a class="header-anchor" href="#chronology"><span>Chronology</span></a></h2><p>Public projects only.</p>',37),n=[i];function l(s,c){return r(),t("div",null,n)}const p=e(a,[["render",l],["__file","works.html.vue"]]),h=JSON.parse('{"path":"/eng/works.html","title":"Works","lang":"en-US","frontmatter":{"title":"Works","layout":"WorksPage","sidebar":false,"head":[["link",{"rel":"alternate","hreflang":"ru-ru","href":"https://pleshevski.ru/works.html"}],["meta",{"property":"og:url","content":"https://pleshevski.ru/eng/works.html"}],["meta",{"property":"og:site_name","content":"Dmitriy Pleshevskiy"}],["meta",{"property":"og:title","content":"Works"}],["meta",{"property":"og:type","content":"website"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"ru-RU"}],["meta",{"property":"og:updated_time","content":"2024-08-07T08:48:54.000Z"}],["meta",{"property":"article:modified_time","content":"2024-08-07T08:48:54.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"WebPage\\",\\"name\\":\\"Works\\"}"]]},"headers":[{"level":2,"title":"Highlighted working experience","slug":"highlighted-working-experience","link":"#highlighted-working-experience","children":[{"level":3,"title":"Binary Management","slug":"binary-management","link":"#binary-management","children":[]},{"level":3,"title":"Core Spirit (Back Office)","slug":"core-spirit-back-office","link":"#core-spirit-back-office","children":[]},{"level":3,"title":"Master Progress","slug":"master-progress","link":"#master-progress","children":[]},{"level":3,"title":"Core Spirit","slug":"core-spirit","link":"#core-spirit","children":[]}]},{"level":2,"title":"Chronology","slug":"chronology","link":"#chronology","children":[]}],"git":{"updatedTime":1723020534000,"contributors":[{"name":"Dmitriy Pleshevskiy","email":"dmitriy@pleshevski.ru","commits":4}]},"filePathRelative":"eng/works.md"}');export{p as comp,h as data};