Résumé
Igor Adamenko, Senior Frontend Developer
Experienced and self-motivated developer with 10 years of industry experience. Passionate about applying time-tested solutions to the brand new problems.
General
28 years old.
Russian citizen, currently located in Kyiv, Ukraine.
Looking for remote-only job.
Employment history
FunBox LLC / Kvantera LLC, 2016–2023
- Started as a middle frontend developer, grew to a team leader with a team of 3 developers with different skill levels.
- Launched and maintained more than 50 different web applications, mostly B2B. Landings, newsletters, online reader, browser extension, mobile game, SPAs with up to 300 different views, etc.
- Hosted a dozen of team meetups on a different topics, aiming to level up the team skill set.
- Co-maintained the whole company frontend infrastructure: linters, dev envs, cross-service integrations, shared libs, design systems, open source projects, CI/CD, documentation, etc.
ITS LLC, 2013–2016
- Worked as the main developer of the small team, combining frontend and backend roles.
- Created and launched over 20 projects using WordPress, OpenCart, Joomla, DataLife Engine, and 1C:Bitrix.
Freelance, 2008—Present
- Participated in creation and development of more than 40 completely different projects: from landings to CMS, from admin panels to newsletter and online library.
- Worked as a part of the big team and as a “the guy who makes the job done”, combining different roles: backend, frontend, devops, and even design.
Education
Belgorod Shukhov State Technology University, 2012–2016
Bachelor’s degree in Software Engineering.
Skills
Code: ES5, ES6, TypeScript.
Styles: CSS, LESS, Sass, SCSS, CSS-in-JS. With and without BEM.
Markup: HTML, Pug, EJS, JSX. With and without BEM.
Frameworks: React, Preact, Angular 1.x, Phaser. Not so fluent in Svelte. Touched but did not have a production experience with Vue.
Build systems: Gulp, Webpack. Not so fluent in Rollup. Touched but did not have a production experience with esbuild.
Deploy and servers: Nginx, Docker, Docker Compose, K8s, Helm, Ansible, RPM.
Dev env: Git, Github, Bitbucket, Gitlab (+ CI/CD), Jenkins.
Task management: Jira, Trello.
Languages: Russian (native), Ukrainian (listening and reading only), English (upper intermediate).
The lists above describe the last three years and they do not include the past experience related to CMS-oriented dev as well as recent switch to backend development on Node.js and stuff.
Notable work
MegaFon Radar, 2016
- radar.megafon.ru
- Found a way to redesign the whole project without pausing features shipping. Saved 3 months of work for the team.
- Made it work with IE 10, IE 11, IE on Windows Phone, and other weird browsers.
- Found and successfully eliminated big memory leak caused by wrong project architecture. As a result the project started to consume twice less memory.
- Angular 1.x, Sass, Pug, BEM, Mocha
Knigma / Tele2 Books, 2017
- knigma.ru
- Worked with a huge legacy book reader made by LitRes. Made it work seamlessly with the main React app.
- Integrated BEM with React in a way that is using in the company’s projects till present days.
- TypeScript, React, Redux, SCSS, BEM, Mocha
Aegea, 2017
- blogengine.me, ilyabirman.ru/meanwhile/found/адаменко/
- Made CSS variables work with IE 11.
- Enriched the posts editor with features: keyboard shortcuts, audio & video embedding, image pasting.
- Found a way to create a continuous autosaving of form data in post editors with conflict resolution.
- Vanilla JavaScript, jQuery, CSS, PHP
Remark42, 2018
- github.com/umputun/remark42
- Laid down the architecture of the frontend part: iframe-based widget with a text editor and comment tree inside.
- Developed the frontend of the initial version which included:
- Markdown editor.
- Email-based login along with social login via Google, Facebook, GitHub and Yandex.
- Multi-level nested comments with sorting, voting, pinning, and thread hiding.
- High customization and containerization of the widget.
- Got the first 2000 stars for the repo by the community.
- Preact, SCSS, Go, Docker
Nedivan, 2019
- ldwg.ru/nedivan
- Created the whole new product along with the existed CMS, to make it easier for editors to work with it.
- Implemented everything on a tech side: landings, recurrent payments, sales, subscriptions, newsletter markup, data flows and transformations.
- Integrated different services with each other: BoltCMS, CloudPayments, Mailchimp, Telegram.
- Made 5000 subscribers happier.
- React, jQuery, CSS, SCSS, BEM, Twig, PHP, Node.js, MySQL, MongoDB
Telegram JavaScript Contest, 2019
- jschart.usercontent.dev/entry99
- In 2019 Telegram launched the contest where developers had to create a chart library.
- I took the 4th place and got some money from the Telegram team.
- Vanilla JavaScript, Canvas
Figma Search Extension, 2020
- chrome.google.com/.../lfofpannpmmeeicgiiacjghmcfgnebbi
- Created an extension that added a search feature to Figma in a “View only” mode, which did not have it back in the days.
- Managed to made it work with huge templates without any freezes.
- Vanilla JavaScript, CSS, Chrome Extension API, Mocha, Puppeteer
MegaFon Staff Control, 2021
- kk.megafon.ru
- A big SPA with 300+ views built around Yandex Map.
- Kicked up the project on Angular 1.x back in 2016 and left it to other team to maintain.
- Got it back in 2021 with a task to rewrite everything to React.
- Found a way to rewrite the whole app in parallel with shipping new features. During that, not a single bug related to the rewrite process occurred in the production.
- Saved a year of project development and a ton of money.
- Angular 1.x, React, Redux, SCSS, BEM, Playwright
MegaFon MegaWords, 2022
- Taught the team to use TypeScript to build a Phaser-based game for a MegaFon mobile app.
- Made it possible for the company to create and sell products in the brand new niche—web-based mobile games.
- The game was played by more than 300k users.
- TypeScript, Phaser, Canvas, Android/iOS webview
Writings
I wrote many articles in different places, but most of them are dead now. Here are some links on the currently available material:
- uploadcare.com/blog/author/igor-adamenko
Tech articles about React, Webpack, JavaScript, and networking. - igoradamenko.com/return-true
Dive in into the weirdness of JavaScript. In Russian. - igoradamenko.com/patreon-archive
Node.js history and internal modules explained.