Обо мне

ABOUT ME

I am a Full-Stack JavaScript Developer / Architect.

I love my job.

Even if I had the different occupation, I would be coding something in my spare time.

I like good teams with people smarter than me, clean code, good architecture, reasonable solutions, modern technologies, challenges and thinking before doing.

Producing something that mimics a working app is not an option for me.

Though I know that the perfect code and brilliant architecture doesn't matter if it is delivered too late.

I don't like work that doesn't require learning at all, not using TDD for any reason (though sometimes clients are asking to forget about tests on first steps), breaking SOLID/GRASP/etc principles, pasta code, overengineering, using outdated or unsuitable tech stack without serious reason, being the only person who can answer what needs to be done and why across the entire team and... well, jQuery.

WHAT I DO

Building & maintaining web applications using modern JavaScript on any stages:

  • define technical requirements
  • design the architecture
  • setup the CI & deployment
  • planning and estimating
  • writing high-quality code
  • making code-reviews
  • interviewing, educating, mentoring

KEY QUALITIES

  • Analytical mindset
  • Proficiency in software architecture design, programming principles / patterns
  • Always up to date with latest technologies and best-practices.
  • Rapid learning and problem-solving skills

KEY SKILLS

  • Architecture
  • Angular
  • React
  • Redux
  • RxJS
  • Vue
  • Node
  • ES6+ (Stage0)
  • TypeScript
  • WebPack/Babel
  • Grunt/Gulp
  • CI & Collaboration Tools

ACHIEVEMENTS

mm... Usually people have this section on their profiles...

I didn't save anyone's life (I guess), didn't make a scientific discovery, didn't create an art masterpiece, didn't write an advanced AI...

I've taught myself everything required to be a top-level professional in my area, I've delivered a number of large applications and made a lot of interesting things...

But I would not call any of these an "Achievement".

I'm just a regular guy who loves programming and who knows how to do it right.

Профессиональные навыки
Опыт работы
Апрель 2017 — по настоящее время (6 месяцев)
Fardini Media
Lead JavaScript Developer / Architect
Нью-Йорк
Обязанности и достижения
[US, Remote, Part-time] Alpha version: https://designer.allstatebanners.com/#!/editor?for=designer Working with this client again. Helping to fix and finish the online designer tool. - Angular.js 1.6+ - Canvas, Fabric.js - Node - Webpack2 + Babel6 - SASS
Декабрь 2016 — Апрель 2017 (5 месяцев)
Aline Consulting Oy
Lead Node.js Developer / Architect
Хельсинки
Обязанности и достижения
[Finland, Remote, Full-Time] Main responsibilities: - Design the high-level architecture, - Define general development patterns for the team, educate juniors - Improve the dev process - Transform the existing monolith node.js backend to microservices, - Implement new features - Some DevOps (DB migrations, Logging, testing environment, CI & etc) - Node.js code review - Take part in client-side (React, Redux, Canvas) development
Сентябрь 2016 — Декабрь 2016 (4 месяца)
Fardini Media
Sr. Full Stack JavaScript Developer / Architect
Нью-Йорк
Обязанности и достижения
[US, Remote, Full-Time] Develop the graphical editor web application from scratch. Participate in product and UI/UX design, domain model & architecture design, the actual implementation, code-reviews, planning, tooling and other. Some part of the tech stack: ES6, Babel, WebPack node, angularjs, Canvas API, fabricjs and other.
Февраль 2016 — Август 2016 (7 месяцев)
CoVi Analytics
Full-Stack JavaScript Developer / CTO
Лондон
Обязанности и достижения
[UK, Remote, Full-time] http://covianalytics.com/ Building the CMILE web application from scratch. Duties: Communicate to the domain expert. Write business & tech requirements. Create the full technical solution docs including the client and server architecture, deployment, monitoring & etc. Write the back-end and front-end code. Tech-stack: - ES.Stage0 + babel - WebPack - Node (Strongloop) - Angular 1.5+ (with the migration to Angular2 in mind) - Mongo - MySQL - GoogleCloud - A little bit of Python legacy from the prev. backend developer
Август 2015 — Декабрь 2015 (5 месяцев)
Workato
UI Engineer/JS Developer
Сан-Франциско и район залива
Обязанности и достижения
[US, Remote, Full-Time] http://workato.com UI Development, Refactoring & TechDebt removal, Architecture & tooling improvement. Other. Front-end stack - Angular 1.5+, - SASS, - Karma, Jasmine Back-end stack - RoR - RSpec
Июнь 2014 — Июль 2015 (1 год и 2 месяца)
Mobillogix
Senior front-end engineer, AngularJS developer
Москва
Обязанности и достижения
(Remote, full-time) http://saleslyft.com/ http://mobillogix.com/ Server side (together with Sr. Back-End Engineer): - some global architecture decisions - API (routing, data-structure &, etc.) Client side: - apps build & deploy system (using bash, node, grunt, etc.) - core framework development (based on angular.js) - general features & components implementation - unit testing & etc. Client side team management: - requirements management - planning & estimating - educating the team
Май 2013 — Май 2014 (1 год и 1 месяц)
Common Open Exchange (COX)
Senior JavaScript programmer / Senior front-end developer
Москва
Обязанности и достижения
(Office, full-time) http://start.cox.ru/ (Office, full-time) A huge high-load startup in e-commerce, banking, social networking and other fields. There are several sub-projects inside. Generally, I worked on social networking and cooperation part. My responsibilities: - Application architecture design process - Client-side & node.js development & architecture design - Code-review, training - Angular.js - Node.JS - MongoDB - RabbitMQ - Redis - PHP - PostgreSQL
Январь 2013 — Май 2013 (5 месяцев)
Crowd-lab (Москва, crowd-lab.com)
front-end developer
Москва
Обязанности и достижения
(office, full-time) Participated in development of a project in social networking, crowdsourcing, and technology brokerage field. My responsibilities: Build the client-side single page application from scratch using as a Middle-Senior JS Developer. Develop and maintain several node.js backend micro-services. Communicate to Backend team, contribute to architecture design, ensure desired client-server interaction model, data-flow, and performance. Closely communicate with the UI/UX design team, ensure the proper experience with animations, behaviour, and pixel perfect markup. Contribute to the UX design process. Client-side stack: - HTML5, CSS3, ES5 - Angular.JS - Grunt - Stylus - Bootstrap - Karma / Jasmine back-end stack: - Node.JS, WS - MySQL - MongoDB - PHP - PHPUnit
Октябрь 2012 — Декабрь 2012 (3 месяца)
orbsoft.ru
front-end developer
Москва
Обязанности и достижения
(office, full-time) Developed on-line services package (for "Svyaznoy" bank customers): It allows the customer to book flight/tour/hotel/train/cinema tickets, buy the insurance, if required, etc. My responsibilities: - Markup - JS client-side development - Close interaction with remote Web-designers - Interaction with back-end developers Client-side stack - native JS - Knockout.JS - HTML5 CSS3 (LESS preprocessing) VCS: subversion
Январь 2011 — Октябрь 2012 (1 год и 10 месяцев)
2110production
Co-Founder, Product Designer, Producer
Москва
Обязанности и достижения
Semi off-line project. Promotion, event hosting, video production, video streaming/broadcasting & on-demand video, informational-entertainment mass media, advertising, booking, collaboration platform; interactive social & multimedia services; Frozen until we have enough resources to launch MVP. Or forever. https://vk.com/club26166327
Высшее образование
Сентябрь 2004 — Июнь 2005
МФТИ
Проблем физики и энергетики; ФПФЭ
Москва
Специализация и достижения
Закончив 1 курс, ушел(не вылетел), по ряду причин.