Position: Head of Backend Development Department
Company: RubyGarage
Category: Ruby
Experience: 5y
English level: intermediate

Основні задачі керівника віддіку — забезпечити ефективне управління командою, щоб вона розробляла та вчасно реалізувала якісне та масштабоване програмне забезпечення. На цій посаді ти будеш відповідати за розвиток наших проєктів у галузі web-conferencing, e-commerce та fintech по всьому світу. Ось, яким ми бачимо ефективного керівника: ти вмієш зібрати та направити команду, навчити їх нового, заглибитися в технічні деталі проєкту, коли це потрібно, та водночас тобі цікаво розширити зони свого впливу у компанії та побудувати ефективний воркфлоу для команди.

**Обов’язки:**

- Очолити офіс Backend-розробки (до 20 спеціалістів) та працювати у середовищі Agile.
- Керувати командою, контролювати продуктивність розробників та якість їх роботи, й відстежувати поточні KPI.
- Проводити технічні співбесіди з кандидатами та приймати рішення щодо прийняття кандидатів на посаду.
- Контролювати життєвий цикл розробки: від проєктування/планування до впровадження та підтримки. Підтримувати високий стандарт якості програмного забезпечення.
- Оцінювати технічні ризики та заходи проти них у всіх проєктах компанії.
- Проєктування та розробка системи, яку легко масштабувати, протягом усього життєвого циклу продукту.
- Підтримувати та організовувати процеси розгортання програм у проєктах компанії.
- Оцінювати обсяг робіт зі сторони backend-розробки перед продажем послуги розробки.
- Очолити технічне керівництво членами команди та участь у вирішенні командних завдань.
- Робити перегляд рівню компетентності команди та створення цілей для плану особистого розвитку.
- Проводити менторські сесії та консультування команди щодо код рев’ю, парного програмування тощо.
- Організовувати навчання, курси та майстер-класи з програмування як для розробників компанії, так і для нетехнічних спеціалістів компанії.
- Розробляти навчальні програми, лекції та брати участь у стажуванні та курсах.
- Впроваджувати практику екстремального програмування (XP).
- Розробляти та впроваджувати передові функцій та послуги.
- Шукати, оцінювати та впроваджувати нові технології.
- Надавати технологічні консультації для проєктів компанії.

**Вимоги:**

- Ступінь бакалавру наук/бакалавру інформатики або аналогічний практичний досвід.
- 2+ років досвіду роботи тімлідом команди backend-розробників.
- 5+ років досвіду у backend-розробці.
- 2+ років досвіду проєктування та впровадження високомасштабованих систем та архітектури мікросервісів.
- Досвід підтримки виробничих систем, робота з системами моніторингу, розуміння способів налагодження та розв’язання виробничих проблем, а також досвід використання методів розгортання виробництва.
- Вміння визначати та впроваджувати нові послуги та будувати процеси у відділі.
- Розвинуті навички міжособистісного спілкування.

**Необхідні технічні навички та знання:**

- Вміння читати та розуміти вихідний код мови програмування Ruby.
- Розуміння об’єктно-орієнтованого програмування: класи та структура об’єктів, метапрограмування.
- Розуміння теорії фреймворків: MVC, безпека, конфігурація, кешування.
- Навички проєктування архітектури додатків: використання шаблонів проєктування у додатку MVC, form object, service object, query object тощо.
- Досвід роботи з тестовою розробкою.
- Реляційні бази даних: SQL, database index та full-text index, PostgreSQL, MySQL.
- Бази даних NoSQL: key-value, document-oriented та search engines, Redis, MongoDB, Elasticsearch.
- Вебінфраструктура та DevOps: SSH, AWS, Docker, Terraform, Nginx.
- Архітектура вебдодатків: Monolith, Microservices, Serverless.
- High load в теорії та практиці: кешування, денормалізація, сервісно-орієнтована архітектура, вертикальне та горизонтальне масштабування, реплікація, вертикальне та горизонтальне розподілення, розділення.

**Ми пропонуємо:**

- Можливість працювати у великій, професійній команді.
- Чітке визначення ролі та сфери відповідальності керівника відділу.
- Підтримка з боку компанії та широкі можливості навчання та професійного розвитку.
- Можливість працювати над цікавими проєктами, що постійно розвиваються.
- Використання передових інструментів та технік у роботі.
- Можливість оптимізувати процеси.
- Компенсацію за навчання та участь у конференціях.
- Компенсацію витрат на відвідування оздоровчих та спортивних центрів.
- Оплачувані дні відпустки та лікарняного.
- Можливість працювати в офісі або 100% віддалено.
- Конкурентну винагороду та регулярний її перегляд за результатами роботи кожні 6 місяців.

**Чому ти?**

Ти маєш досвід управління командой, чітко розумієi як сформувати та розвивати команду, навчити їх нового, можеш заглибитися в технічні деталі проєкту, коли це потрібно, та водночас тобі цікаво розширити зони свого впливу у компанії та побудувати ефективний воркфлоу для команди — ми чекаємо на тебе в команді RubyGarage.