Tech Stack
Job Description, Responsibilities & Requirements
Про посаду
Ми шукаємо Senior Full Stack Engineer (Ruby + React), щоб розробляти та масштабувати багатокористувацьку SaaS платформу, яка надає дані з нерухомості та управління активами у великих масштабах. Ви будете працювати над повним стеком - від налаштування запитів PostgreSQL та фонових даних до серверної рендерингу Hotwire вигляду та інтерактивних фронтенд-компонентів React + TypeScript - і брати на себе відповідальність за функції від початку до кінця, від специфікації до випуску у виробництво на Kubernetes з підтримкою AWS.
Це практична інженерна посада у команді, яка пріоритезує міцне тестове покриття, чистий досвід та надійне програмне забезпечення для вимогливого виробничого середовища.
Обов'язки
- Проектування та впровадження функцій у монолит Ruby on Rails 8 з використанням перевірених паттернів: форм об'єкти, об'єкти запитів, сервіс об'єкти, політики Pundit та ViewComponents
- Створення динамічного, серверного рендерингу UI з Hotwire (Turbo + Stimulus) та Bootstrap 5, а також більш багатих інтерактивних інтерфейсів через React + TypeScript (MUI, ag-grid, react-select, chart.js), упакованих через Vite
- Моделювання та оптимізація даних у PostgreSQL - створення ефективних запитів, проектування індексів, видалення N+1s та написання безпечних міграцій без простоїв
- Реалізація асинхронної та запланованої роботи з Sidekiq - включаючи інтеграцію даних, обробку файлів та довготривалі завдання
- Написання ретельних автоматизованих тестів (RSpec request/system specs, Vitest) як стандартного елемента кожної зміни
- Доставка коду через CI/CD трубопровід, який створює Docker образи, відправляє до AWS ECR та розгортає у Kubernetes кластери через стадіон та виробництво
- Співпраця над інфраструктурою, керованою через Terraform та Kubernetes маніфести, що зберігаються у спеціальних репозиторіях інфраструктури
Вимоги
- 5+ років професійного досвіду розробки програмного забезпечення
- 3+ роки створення виробничих додатків з Ruby on Rails, включаючи міцне розуміння конвенцій Rails, ActiveRecord та фонової обробки з Sidekiq
- Знання PostgreSQL - створення ефективних запитів та міркування про індексах та зміни схеми
- Експертиза у React та TypeScript на фронтенді, а також готовність працювати у серверному рендеринг Hotwire (Turbo/Stimulus) середовищі
- Знання паттернів аутентифікації та авторизації (наприклад, Auth0, OmniAuth, Warden, Pundit або подібні інструменти)
- Тест-орієнтований підхід; здатність писати значущі тести та перевіряти поведінку, а не припускати її
- Відмінне володіння письмовою та розмовною англійською (рівень B2+)
Буде плюсом
- Глибше знання PostgreSQL - включаючи налаштування запитів, стратегію індексування, пулінг з'єднань та безпечні міграції без простоїв
- Знання сервісів AWS (ECR, S3, RDS) разом із розгортанням контейнеризованих додатків у Kubernetes
- Досвід у роботі з Terraform та інфраструктурою як кодом, особливо коли додаток та інфраструктура перебувають у окремих репозиторіях
- Розуміння багатокористувацьких архітектур (орієнтованих на субдомени) плюс досвід у роботі з даними-піплайнами / ETL, інтеграцією файлів (S3 multipart, SFTP) та обробкою документів/електронних таблиць
- Навички у використанні інструментів спостереження (Sentry, New Relic, Prometheus) разом із зміцненням у виробництві (обмеження швидкості, безпечні заголовки, перевірки стану)
Ми пропонуємо
- Можливість працювати віддалено з України
- Залучення до виконання складної та значущої ролі у провідній технологічній компанії
Про компанію
EPAM Systems є глобальною компанією з інженерії програмного забезпечення та розробки продуктів, яка спеціалізується на наданні інноваційних рішень для клієнтів у різних галузях. Наша команда присвячена створенню високоякісного програмного забезпечення, яке відповідає змінюючимся потребам наших клієнтів та користувачів.