Position: Senior Fullstack Engineer (JS/TS) на проект Вчасно.POS
Company: EVO
Category: Node.js
Experience: 3y

Про проект:
Вчасно.POS - термінали для точок продажів (POS, Point of sale). У нас уже є успішний продукт, що забезпечує роботу більше 4000 точок в Україні та по всьому світу (Європа, Азія, Латинська Америка). Продукт який допомагає бізнесу автоматизувати свої процеси, починаючи з контролю товарів на складах і закінчуючи автоматизацією роздрібного продажу на точках збуту.

Про команду:
Команда Вчасно.POS наразі налічує 15 осіб, серед яких: СЕО, СТО, архітектор/тім-лід, фронтенд, бекенд, мобільні, Delphi розробники, тестувальники та дизайнери. Частина завдань з маркетингу зараз віддаємо на аутсорс (seo і ppc).
 
Що вже зробили, які виклики були, що вийшло:
Поточна платформа (раніше продукт був під назвою SmartTouch) не дозволяє нам рости і розвиватися так швидко, як хотілося б. Тому ми вирішили її переписати з нуля.

 Для цього ми зібрали команду, яка розробила нову архітектуру і реалізувала нову версію рішення, на основі TypeScript, NestJS і React. Вся розробка ведеться використовуючи принципи SOLID і Clean architecture. Ми написали ряд внутрішніх бібліотек і фреймворків, які працюють незалежно від UI, баз даних і зовнішніх залежностей, і працюють на всіх платформах (desktop, web, mobile, backend), з будь-якими джерелами даних (на даний момент є необхідність тільки в реляційних БД, але можна використовувати будь-яку БД) і через будь-які протоколи передачі даних (HTTP, Web Sockets, Unix Sockets, та інше)

Кого ми шукаємо:
Зараз ми в пошуках Senior Full Stack Engineer з великим багажем знань в різних областях розробки для вирішення комплексних завдань в переважно backend частині продукту (80%), але також будуть завдання по розробці крос-платформних фіч (20%).

Задачі:
- Розвиток поточного рішення і його оптимізація
- Підбір необхідних технологій для вирішення завдань і масштабування всіх компонентів продукту.
- Реалізація нових фіч
- Покриття коду юніт тестами
- Оптимізація процесу CI/CD
- Участь в code review

Використовуємо:
- мікро-сервісну архітектуру
- моно-репозиторії
- TypeScript, Node.js, React, React Native, Electron
- NestJS, TypeORM
- REST, Kafka, gRPC
- PostgreSQL, SQLite, Redis
- ELK
- Gitlab, Gitlab CI
- Kubernetes, Helm, Openstack, Terraform
 
Що важливо для даної позиції:
 - Продакт інженерний підхід до вирішення завдань
- Сильні лідерські якості
- Підтверджений досвід в створенні комплексних високонавантажених веб додатків
- Досвід роботи з мікросервісами
- Впевнені знання і досвід застосування в реальних проектах ФП, ООП, SOLID і clean architecture
- Відмінні знання реляційних (PostgreSQL, SQLite)
- Розуміння як працюють нереляційні бази даних (Redis, MongoDB, Elasticsearch та інші)
- Досвід роботи з GitLab CI, Kubernetes, Helm, Prometheus, Grafana, або їх аналогами
- Відкритість до нових рішень, бажання відстежувати новинки і тенденції на ринку технологій. Ми чекаємо ініціатив з впровадження нових бібліотек/ідей/підходів.
 
Буде плюсом:
- Досвід роботи з фреймворком NestJS і його інфраструктурою
- Досвід в мобільній розробці (React Native)
- Досвід в розробці десктоп додатків (Electron)
- Досвід роботи в e-commerce і суміжних областях
 
Як у нас проходить підбір на дану позицію?
1. Ми чекаємо на ваше резюме. Далі воно потрапляє на розгляд команд. Якщо резюме проходить схвалення, ми зв’яжемося з вами, щоб домовитись про зручний час для знайомства онлайн.
2. Ми знайомимось з вами і вашим досвідом, розповідаємо деталі про вакансію, якщо нам взаємно цікаво продовжувати спілкування — домовляємось про технічну співбесіду онлайн.
3. Технічна співбесіда триває півтори години. На ній присутні наші розробники, з якими ми обговоримо всі важливі для нас питання по стеку, досвіду, задачам. А також відповімо на ваші запитання.
4. Якщо технічна співбесіда пройшла успішно, ми зателефонуємо вам ще раз для того, щоб фіналізувати всі деталі і познайомитися з менеджером команди і нашим СТО.