Перейти до вмісту

Технології

Технології, якими будує Engineer ApS: мови, платформи даних, хмара та інфраструктура — і як ми вирішуємо, що саме використати.

Інструмент — це засіб. Клієнт купує судження, яке обирає правильний, і дисципліну, яка дає ним добре керувати. Але ви спитали, з чим ми працюємо, — тож ось воно, і кожен рядок підкріплений роботою в портфоліо.

Мови та середовища виконання

Python для роботи з даними, автоматизації та сервісів. Go там, де мають значення один статичний бінарник і мале споживання. TypeScript і сучасний JavaScript на вебрівні. SQL як повноцінна мова, а не те, що генерує ORM, — більшість роботи з продуктивністю, на яку нас кличуть, живе саме там. Bash для склейки, написаний так, щоб його читали.

Дані

PostgreSQL — наш типовий вибір, і ми заходимо з ним дуже далеко, перш ніж тягнутися до чогось іншого: партиціонування, реплікація, розширення та планувальник запитів. Ми також обслуговуємо MS SQL Server, BigQuery, SQLite і Redis, а поверх того — просторовий набір: PostGIS, QGIS, GDAL та ArcGIS. Конвеєри будуються так, щоб їх можна було безпечно перезапустити, бо питання після інциденту завжди одне: чи можемо ми програти це наново.

Хмара та інфраструктура

Google Cloud і AWS, з Azure там, де клієнт уже живе в ньому. Linux під усім — Debian і Ubuntu. Docker і Kubernetes для навантажень, які їх заслуговують, і звичайні юніти systemd для тих, які ні. Ansible і Terraform описують машини, тож середовище є документом, а не археологічним проєктом. Caddy і nginx попереду.

Життя у продакшені

Prometheus і Grafana для метрик, структуроване журналювання для решти та сповіщення, які спрацьовують на симптомах, помітних користувачеві, а не на кожному сіпанні графіка. CI-конвеєри, які збирають, тестують, сканують і розгортають без людини в циклі. Резервні копії зроблені — і відновлення перевірені.

Вебрівень

Спершу статика, де вона пасує, бо сторінка, яка є файлом, — це сторінка, яка не впаде: Hugo збирає цей сайт. Django і PHP там, де є застосунок, який треба віддавати. Семантичний HTML, написаний вручну CSS і доступність як вимога, а не як зауваження аудиту.

Як ми обираємо

Нудна технологія, обрана свідомо, виграє в новітньої, обраної за звичкою. Ми обираємо під задачу, під те, чим ваша команда зможе керувати після нашого відходу, і під те, як річ ламається, а не як вона демонструє. Коли правильна відповідь — той стек, який у вас уже є, ми так і кажемо; а коли ні — кажемо й це, із записаним обґрунтуванням.

Цей сайт — власний розв’язаний приклад: сторінка подяк називає кожну технологію за ним, аж до гарнітури й інструмента резервного копіювання.

Якщо вам потрібен підрядник із позицією, а не зі списком уподобань, розкажіть, що ви будуєте.

Маскот Engineer: доброзичливий синьо-білий робот у плащі з друкованими доріжками, працює за ноутбуком і показує великий палець угору через плече