summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ydb/docs/ru/core/contributor/_includes/career.md5
-rw-r--r--ydb/docs/ru/core/contributor/bridge.md16
-rw-r--r--ydb/docs/ru/core/contributor/build-ya.md2
-rw-r--r--ydb/docs/ru/core/contributor/configuration-v2.md4
-rw-r--r--ydb/docs/ru/core/contributor/datashard-distributed-txs.md2
-rw-r--r--ydb/docs/ru/core/contributor/datashard-locks-and-change-visibility.md2
-rw-r--r--ydb/docs/ru/core/contributor/distributed-storage.md4
-rw-r--r--ydb/docs/ru/core/contributor/general-schema.md2
-rw-r--r--ydb/docs/ru/core/contributor/hive-booting.md2
-rw-r--r--ydb/docs/ru/core/contributor/hive.md2
-rw-r--r--ydb/docs/ru/core/contributor/index.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-key-value.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-kqp.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-memory.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-overview.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-pdisk-log.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-pdisk-read.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-pdisk-write.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-stop.md2
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-storage.md1
-rw-r--r--ydb/docs/ru/core/contributor/load-actors-vdisk.md2
-rw-r--r--ydb/docs/ru/core/contributor/localdb-uncommitted-txs.md2
-rw-r--r--ydb/docs/ru/core/contributor/manage-releases.md2
-rw-r--r--ydb/docs/ru/core/contributor/spilling-service.md4
-rw-r--r--ydb/docs/ru/core/contributor/suggest-change.md2
-rw-r--r--ydb/docs/ru/core/toc_i.yaml8
26 files changed, 70 insertions, 10 deletions
diff --git a/ydb/docs/ru/core/contributor/_includes/career.md b/ydb/docs/ru/core/contributor/_includes/career.md
new file mode 100644
index 00000000000..9ab1cbd1b89
--- /dev/null
+++ b/ydb/docs/ru/core/contributor/_includes/career.md
@@ -0,0 +1,5 @@
+{% note tip "Хотите присоединиться к команде разработки {{ ydb-short-name }}?" %}
+
+Ознакомьтесь с разделами о [команде {{ ydb-short-name }} и открытых вакансиях](https://ydb.tech/ru/careers/), а также о [возможностях для студентов](https://ydb.tech/ru/students/).
+
+{% endnote %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/bridge.md b/ydb/docs/ru/core/contributor/bridge.md
index 875a98e7699..60e07b40ef1 100644
--- a/ydb/docs/ru/core/contributor/bridge.md
+++ b/ydb/docs/ru/core/contributor/bridge.md
@@ -2,26 +2,26 @@
{% include [feature_enterprise.md](../_includes/feature_enterprise.md) %}
-Общее описание режима и сценарии использования см. в статье [{#T}](../concepts/bridge.md). Эта статья предназначена для разработчиков и контрибьюторов {{ ydb-short-name }} и содержит технические детали реализации режима bridge.
+Общее описание режима и сценарии использования см. в статье [{#T}](../concepts/bridge.md). Эта статья предназначена для разработчиков и контрибьюторов {{ ydb-short-name }} и содержит технические детали реализации режима bridge.
{{ ydb-short-name }} поддерживает произвольное количество pile, однако для простоты изложения далее рассматривается случай с двумя pile, назовём их pile А и pile Б.
-## Хранение конфигураций
+## Хранение конфигураций
-[Distconf](../concepts/glossary.md#distributed-configuration) хранит конфигурацию двух [статических групп](../concepts/glossary.md#static-group), двух наборов [state storage](../concepts/glossary.md#state-storage), а также [scheme board](../concepts/glossary.md#scheme-board) и [board](../concepts/glossary.md#board). В нём же сохраняется режим работы кластера.
+[Distconf](../concepts/glossary.md#distributed-configuration) хранит конфигурацию двух [статических групп](../concepts/glossary.md#static-group), двух наборов [state storage](../concepts/glossary.md#state-storage), а также [scheme board](../concepts/glossary.md#scheme-board) и [board](../concepts/glossary.md#board). В нём же сохраняется режим работы кластера.
-Конфигурация статических групп, state storage и бордов использует схему хранения с двумя комплектами кворумов:
+Конфигурация статических групп, state storage и бордов использует схему хранения с двумя комплектами кворумов:
- Кворум А — включает только узлы из pile А. Запись считается успешной, если она прошла на большинстве узлов pile А и на кворуме дисков статической группы pile A;
- Кворум Б — включает только узлы из pile Б. Запись считается успешной, если она прошла на большинстве узлов pile Б и на кворуме дисков статической группы pile Б.
При отказе одного из pile запись в соответствующий кворум становится невозможной.
-Distconf использует оба кворума (А и Б) для хранения конфигурации:
+Distconf использует оба кворума (А и Б) для хранения конфигурации:
- Конфигурация с режимом `PRIMARY/DISCONNECTED` записывается только в кворум А;
- - Конфигурация с режимом `DISCONNECTED/PRIMARY` записывается только в кворум Б;
- - Все остальные режимы записываются в оба кворума — А и Б.
+ - Конфигурация с режимом `DISCONNECTED/PRIMARY` записывается только в кворум Б;
+ - Все остальные режимы записываются в оба кворума — А и Б.
При выполнении failover администратор переводит кластер в режим `PRIMARY/DISCONNECTED` или `DISCONNECTED/PRIMARY`. В этом режиме конфигурация общих компонентов сохраняется только на кворуме из `PRIMARY` pile.
@@ -90,3 +90,5 @@ Dsproxy-proxy статической группы меняет режим раб
В interconnect разделяются обмен метаданными и установка сессии.
Обмен метаданными происходит до установления сессии и позволяет паре узлов определить используемый набор функций interconnect и обменяться конфигурацией.
Interconnect с узлами из отключённой половины кластера разрывается, и попытки установления соединения не предпринимаются. Установление соединения возможно только после перевода pile в состояние `PRIMARY/NOT_SYNCHRONIZED`.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/build-ya.md b/ydb/docs/ru/core/contributor/build-ya.md
index aa3fae14944..599394af6da 100644
--- a/ydb/docs/ru/core/contributor/build-ya.md
+++ b/ydb/docs/ru/core/contributor/build-ya.md
@@ -92,3 +92,5 @@ ya test ydb/core
```
Для запуска medium и large тестов добавьте опции `-tt` и `-ttt` к вызову `ya test` соответственно.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/configuration-v2.md b/ydb/docs/ru/core/contributor/configuration-v2.md
index f7ea17e1eb8..a3802e1bc8a 100644
--- a/ydb/docs/ru/core/contributor/configuration-v2.md
+++ b/ydb/docs/ru/core/contributor/configuration-v2.md
@@ -120,4 +120,6 @@
| `TPDiskMetadataRecord` на кворуме из PDisk'ов | Истинную актуальную конфигурацию |
| Локальная директория `--config-dir` | Исходный YAML для старта (может быть устаревшим) |
| Console | Актуальная копия (с минимальной задержкой) |
-| DS-controller | Подмножество конфигурации, необходимое для распределённого хранилища | \ No newline at end of file
+| DS-controller | Подмножество конфигурации, необходимое для распределённого хранилища |
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/datashard-distributed-txs.md b/ydb/docs/ru/core/contributor/datashard-distributed-txs.md
index 0db3becd829..f3c74fe0dfa 100644
--- a/ydb/docs/ru/core/contributor/datashard-distributed-txs.md
+++ b/ydb/docs/ru/core/contributor/datashard-distributed-txs.md
@@ -164,3 +164,5 @@ DataShard обрабатывает сообщения `TEvTxProcessing::TEvPlanS
Чтобы избежать таких задержек, после получения шага планирования хотя бы одним из участников и выполнения транзакции, этот шаг упоминается в запросах на ReadSet'ы и отправляемых ReadSet'ах. Учатники, получив такое сообщение, косвенно узнают в каком `PlanStep` должна быть выполнена транзакция и запоминают его как `PredictedStep`. Даже если шаг планирования оказался потерян, DataShard добавляет транзакцию в PlanQueue на соответствующем шаге при получении не меньшего шага планирования по другим транзакциям, либо при продвижении медиаторного времени. В случае же если полученный таким образом шаг планирования оказался в прошлом, транзакция быстро отменяется, аналогично таймауту планирования.
Важно упомянуть, что т.к. транзакция может быть запланирована несколько раз, разные участники могут пропускать разные шаги планирования, и в итоге транзакция может оказаться запланированной на несовпадающие шаги между разными участниками. По этой причине, сообщения с `DECISION_COMMIT` считаются валидными только при совпадении `PlanStep` транзакции на разных участниках. В противном случае такой ReadSet приводит к отмене транзакции.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/datashard-locks-and-change-visibility.md b/ydb/docs/ru/core/contributor/datashard-locks-and-change-visibility.md
index b4b93f7df76..58f978c9559 100644
--- a/ydb/docs/ru/core/contributor/datashard-locks-and-change-visibility.md
+++ b/ydb/docs/ru/core/contributor/datashard-locks-and-change-visibility.md
@@ -108,3 +108,5 @@ YQL транзакции могут разбиваться на нескольк
Из-за ограничений LocalDB даташарды также вынуждены гарантировать, что не будет образовываться слишком много открытых транзакций. Сейчас таблица блокировок ограничена примерно 10 тысячами записей, что включает в себя пишущие блокировки. Даташарды также вынуждены подсчитывать количество уже имеющихся незакомиченных изменений перед каждой новой записью, что реализовано через подсчёт пропуском в объекте для отслеживания транзакций. В случае превышения лимита кидается исключение [TLockedWriteLimitException](https://github.com/ydb-platform/ydb/blob/d31477e5ed13679dd3b409b100623cc81a5e0964/ydb/core/tx/datashard/datashard__engine_host.cpp#L867).
Персистентные блокировки переживают рестарты даташардов и восстанавливают своё последнее состояние. В этом механизме поддерживается возможность сохранения диапазонов, но на практике она не используются, так как даташард был бы вынужден записывать новые диапазоны во время каждого чтения, что слишком дорог. Вместо этого читающие блокировки, ставшие персистентными из-за наличия записи, восставливаются с диапазоном «весь шард». Это лучше, чем инвалидация на любом рестарте, но конфликтует с любой записью и увеличивает риск ошибки «transaction locks invalidated» (TLI).
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/distributed-storage.md b/ydb/docs/ru/core/contributor/distributed-storage.md
index cf83e56d222..8c3fa19744b 100644
--- a/ydb/docs/ru/core/contributor/distributed-storage.md
+++ b/ydb/docs/ru/core/contributor/distributed-storage.md
@@ -98,4 +98,6 @@
* при отказе всего домена реконфигурация теряет смысл, так как новый VDisk может быть размещён только в уже отказавшем домене отказа;
* при отказе части домена реконфигурация возможна, но нагрузка, ранее обрабатываемая отказавшим оборудованием, будет перераспределена только по оставшемуся оборудованию в том же домене отказа.
-Если в кластере доступен хотя бы на один домен отказа больше, чем минимально необходимо для создания групп хранения (9 доменов для `block-4-2` и по 4 домена в каждой области отказа для `mirror-3-dc`), то при отказе части оборудования нагрузка может быть перераспределена по всему оставшемуся в строю оборудованию. \ No newline at end of file
+Если в кластере доступен хотя бы на один домен отказа больше, чем минимально необходимо для создания групп хранения (9 доменов для `block-4-2` и по 4 домена в каждой области отказа для `mirror-3-dc`), то при отказе части оборудования нагрузка может быть перераспределена по всему оставшемуся в строю оборудованию.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/general-schema.md b/ydb/docs/ru/core/contributor/general-schema.md
index 7214b6a1f96..1fab982340a 100644
--- a/ydb/docs/ru/core/contributor/general-schema.md
+++ b/ydb/docs/ru/core/contributor/general-schema.md
@@ -56,3 +56,5 @@
Для каждого канала в структуре TTabletStorageInfo содержится подструктура TTabletChannelInfo, которая содержит диапазоны поколений и номер группы, соответствующий каждому диапазону. Диапазоны строго примыкают друг к другу, последний диапазон открыт. Номера групп могут пересекаться в разных диапазонах и даже между разными каналами — это не запрещено и достаточно часто встречается.
При выполнении записи блоба таблетка выбирает самый последний диапазон для соответствующего канала, так как запись всегда идёт от имени текущего поколения таблетки. При выполнении чтения номер группы извлекается исходя из BlobId.Generation читаемого блоба.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/hive-booting.md b/ydb/docs/ru/core/contributor/hive-booting.md
index 8f60ace53db..ea50c057540 100644
--- a/ydb/docs/ru/core/contributor/hive-booting.md
+++ b/ydb/docs/ru/core/contributor/hive-booting.md
@@ -92,3 +92,5 @@ block-beta
* связь с Local не будет нарушена.
В этих ситуациях вновь начнётся процесс запуска уже для следующего поколения таблетки.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/hive.md b/ydb/docs/ru/core/contributor/hive.md
index 66341999d37..723d10f2927 100644
--- a/ydb/docs/ru/core/contributor/hive.md
+++ b/ydb/docs/ru/core/contributor/hive.md
@@ -56,3 +56,5 @@ $\mathrm{MaxUsage}$ и $\mathrm{MinUsage}$ — максимум и миниму�
- [Настройка Hive](../reference/configuration/hive.md)
- [Hive web-viewer](../reference/embedded-ui/hive.md)
- [Запуск таблеток](hive-booting.md)
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/index.md b/ydb/docs/ru/core/contributor/index.md
index 4b000305404..c8fe7935a8a 100644
--- a/ydb/docs/ru/core/contributor/index.md
+++ b/ydb/docs/ru/core/contributor/index.md
@@ -3,3 +3,5 @@
Данный раздел содержит материалы для разработчиков и контрибьюторов {{ ydb-short-name }}.
{% include [index.md](_includes/index.md) %}
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-key-value.md b/ydb/docs/ru/core/contributor/load-actors-key-value.md
index 989f1eec34c..79077e36a5f 100644
--- a/ydb/docs/ru/core/contributor/load-actors-key-value.md
+++ b/ydb/docs/ru/core/contributor/load-actors-key-value.md
@@ -19,3 +19,5 @@ message TKeyValueLoad {
repeated TWorkerConfig Workers = 7;
}
```
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-kqp.md b/ydb/docs/ru/core/contributor/load-actors-kqp.md
index e6c1e723f6b..7c25f459cb5 100644
--- a/ydb/docs/ru/core/contributor/load-actors-kqp.md
+++ b/ydb/docs/ru/core/contributor/load-actors-kqp.md
@@ -47,3 +47,5 @@ KqpLoad: {
```
Результатом теста является количество успешных транзакций в секунду, количество повторных попыток исполнения транзакций и количество ошибок.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-memory.md b/ydb/docs/ru/core/contributor/load-actors-memory.md
index 0456a53669e..e54ec1a4698 100644
--- a/ydb/docs/ru/core/contributor/load-actors-memory.md
+++ b/ydb/docs/ru/core/contributor/load-actors-memory.md
@@ -27,3 +27,5 @@ MemoryLoad: {
IntervalUs: 9000000
}
```
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-overview.md b/ydb/docs/ru/core/contributor/load-actors-overview.md
index bbea1ddd63c..2d69e726cd6 100644
--- a/ydb/docs/ru/core/contributor/load-actors-overview.md
+++ b/ydb/docs/ru/core/contributor/load-actors-overview.md
@@ -131,3 +131,5 @@
![load-actors-finished-tests](../_assets/load-actors-finished-tests.png)
{% endlist %}
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-pdisk-log.md b/ydb/docs/ru/core/contributor/load-actors-pdisk-log.md
index 79804a1edb8..c661c3d2b93 100644
--- a/ydb/docs/ru/core/contributor/load-actors-pdisk-log.md
+++ b/ydb/docs/ru/core/contributor/load-actors-pdisk-log.md
@@ -60,3 +60,5 @@ PDiskLogLoad: {
```
Тест завершился успешно, если в течение проверки все узлы кластера работали без перезагрузок и тестируемый PDisk имел состояние `Normal`. Убедиться в этом можно c помощью Embedded UI кластера.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-pdisk-read.md b/ydb/docs/ru/core/contributor/load-actors-pdisk-read.md
index 0b479095cf2..009724b6b30 100644
--- a/ydb/docs/ru/core/contributor/load-actors-pdisk-read.md
+++ b/ydb/docs/ru/core/contributor/load-actors-pdisk-read.md
@@ -58,3 +58,5 @@ PDiskReadLoad: {
При просмотре результата тестирования наибольший интерес представляет следующее значение:
* `Average speed since start` — средняя скорость чтения с момента запуска в МБ/с, например `1257.148154`.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-pdisk-write.md b/ydb/docs/ru/core/contributor/load-actors-pdisk-write.md
index a804c48f3c9..a371dec1cd8 100644
--- a/ydb/docs/ru/core/contributor/load-actors-pdisk-write.md
+++ b/ydb/docs/ru/core/contributor/load-actors-pdisk-write.md
@@ -60,3 +60,5 @@ PDiskWriteLoad: {
При просмотре результата тестирования наибольший интерес представляют следующее значение:
* `Average speed since start` — средняя скорость записи с момента запуска в МБ/с, например `615.484013`.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-stop.md b/ydb/docs/ru/core/contributor/load-actors-stop.md
index 6b18bd79351..1df2e2a9bf3 100644
--- a/ydb/docs/ru/core/contributor/load-actors-stop.md
+++ b/ydb/docs/ru/core/contributor/load-actors-stop.md
@@ -26,3 +26,5 @@ Stop: {
RemoveAllTags: true
}
```
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-storage.md b/ydb/docs/ru/core/contributor/load-actors-storage.md
index f1b79d2ba1d..dd197a600fd 100644
--- a/ydb/docs/ru/core/contributor/load-actors-storage.md
+++ b/ydb/docs/ru/core/contributor/load-actors-storage.md
@@ -149,3 +149,4 @@ StorageLoad: {
Рассчитанные перцентили скорости чтения/записи относятся только к запросам основного цикла нагрузки, запросы начальной записи в них не учитываются. Представляют интерес [графики в Monitoring](../reference/observability/metrics/grafana-dashboards.md), например, по ним можно проследить, как ухудшается время отклика системы по мере роста нагрузки.
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/load-actors-vdisk.md b/ydb/docs/ru/core/contributor/load-actors-vdisk.md
index f157d79063e..07a974bed9a 100644
--- a/ydb/docs/ru/core/contributor/load-actors-vdisk.md
+++ b/ydb/docs/ru/core/contributor/load-actors-vdisk.md
@@ -24,3 +24,5 @@
### Параметры вероятностного распределения {#params}
{% include [load-actors-params](../_includes/load-actors-interval.md) %}
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/localdb-uncommitted-txs.md b/ydb/docs/ru/core/contributor/localdb-uncommitted-txs.md
index f9ac999aca8..7a0cff06009 100644
--- a/ydb/docs/ru/core/contributor/localdb-uncommitted-txs.md
+++ b/ydb/docs/ru/core/contributor/localdb-uncommitted-txs.md
@@ -177,3 +177,5 @@
8. В такой ситуации в `TxStatus` от шарда L будет коммит, а в `TxStatus` от шарда R будет отмена для того же `TxId`. Так как транзакции успешно коммитят все изменения, а отмена может быть в том числе из-за наложенного фильтра, в случае мержа конфликтующей информации по `TxId` коммит «выигрывает» над отменой.
На практике DataShard перед очередным сплитом или мержем полностью компактятся, так что конфликтующая информация по статусу коммита не должна возникнуть. Например, это означает, что транзакции не могут решить закоммитить только часть изменений, все изменения для конкретного `TxId` должны быть закоммичены вместе. Это также означает, что идентификаторы транзакций нельзя переиспользовать, в том числе между разными шардами. В качестве `TxId` для незакомиченных изменений также могут использоваться только глобально уникальные идентификаторы.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/manage-releases.md b/ydb/docs/ru/core/contributor/manage-releases.md
index 642e2f16643..a3f3cdd2904 100644
--- a/ydb/docs/ru/core/contributor/manage-releases.md
+++ b/ydb/docs/ru/core/contributor/manage-releases.md
@@ -108,3 +108,5 @@
### Стабильный релиз {#cli-stable}
Чтобы объявить тег {{ ydb-short-name }} CLI стабильным, участник [релизной команды {{ ydb-short-name }}](https://github.com/orgs/ydb-platform/teams/release) готовит [перечень изменений](../changelog-cli.md), и публикует релиз на странице GitHub [Releases](https://github.com/ydb-platform/ydb/releases) и в разделе [Загрузки](../downloads/index.md#ydb-cli) документации.
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/spilling-service.md b/ydb/docs/ru/core/contributor/spilling-service.md
index ab3b8997e28..68fd716821e 100644
--- a/ydb/docs/ru/core/contributor/spilling-service.md
+++ b/ydb/docs/ru/core/contributor/spilling-service.md
@@ -66,7 +66,7 @@ sequenceDiagram
Note over CN: Продолжает работу с другими данными
SS->>ES: Сохранение данных
SS-->>CN: Подтверждение записи (асинхронно)
-
+
Note over CN: Нужны сохраненные данные
CN->>SS: Запрос данных (асинхронно)
Note over CN: Продолжает работу с другими данными
@@ -84,3 +84,5 @@ sequenceDiagram
- [Конфигурация спиллинга](../reference/configuration/table_service_config.md)
- [Мониторинг {{ ydb-short-name }}](../devops/observability/monitoring.md)
- [Диагностика производительности](../troubleshooting/performance/index.md)
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/contributor/suggest-change.md b/ydb/docs/ru/core/contributor/suggest-change.md
index 4c85170a9a4..dbb6e54db12 100644
--- a/ydb/docs/ru/core/contributor/suggest-change.md
+++ b/ydb/docs/ru/core/contributor/suggest-change.md
@@ -447,3 +447,5 @@ git push fork
```bash
gh pr create --title "Title" -B stable-24-1
```
+
+{% include [career](./_includes/career.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/toc_i.yaml b/ydb/docs/ru/core/toc_i.yaml
index 9a36cf269b4..430322d1d85 100644
--- a/ydb/docs/ru/core/toc_i.yaml
+++ b/ydb/docs/ru/core/toc_i.yaml
@@ -78,3 +78,11 @@ items:
href: "https://yandex.cloud/ru/certification/ydbadministrator?utm_medium=owned&utm_source=oss_docs"
- name: Сертификация для разработчиков
href: "https://yandex.cloud/ru/certification/ydbdeveloper?utm_medium=owned&utm_source=oss_docs"
+- name: Карьера
+ labeled: true
+ when: audience != "tech"
+ items:
+ - name: Команда
+ href: "https://ydb.tech/ru/careers/"
+ - name: Студентам
+ href: "https://ydb.tech/ru/students/"