> ## Documentation Index
> Fetch the complete documentation index at: https://developers.techwolf.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# How It Works

# Suggestions

<img src="https://mintcdn.com/techwolf/T4HCiIUpM3mvk2op/integrations/skill-assistant/degreed/images/degreed-suggestions.png?fit=max&auto=format&n=T4HCiIUpM3mvk2op&q=85&s=5332a1e8dbf0166caea1784046127008" alt="Suggestions" width="1516" height="1257" data-path="integrations/skill-assistant/degreed/images/degreed-suggestions.png" />

1. **Scheduled trigger**: We send out suggestions at specific time intervals. On
   such an interval cycle, we trigger the TechWolf Skill Assistant. The interval
   can be changed depending on your needs.
2. **Fetch suggestions**: To get those suggestions, we fetch them from our own
   API. More specifically, from the
   [Suggestions Skill Profile](/reference/latest/Employees/EmployeeSuggestions/post-employees-suggestions-skills)
   endpoint, for all employees that are part of the **TechWolf Skill Assistant**
   group.
3. **Send suggestions**: We send out the suggestions to the Degreed platform.
4. **Users receive the Skill Suggestions and Notifications**: The Degreed
   platform delivers the Skill Suggestions to the correct user.

### How the Skill Engine API max skills setting affects suggestions

The Skill Engine API uses the `max_skills` setting to return the top ranked
Skills for an Employee based on their data. This setting does not directly mean
that an Employee will only ever see that number of suggestions over time.

The ranking is based on the Employee Skill Profile and includes Skills that were
already accepted or rejected. The Skill Engine API then filters out already
validated Skills before suggestions are shown in the Skill Assistant.

#### What happens near the limit

Rejected Skills can still influence the top `max_skills` ranking through an
indirect effect. A rejection acts as feedback for the recommendation model and
can change the confidence scores of related Skills. When an Employee is close to
the limit, this recalculation can reorder the Employee Skill Profile and cause a
different Skill to enter the top `max_skills`.

1. The Skill Engine API returns the top `max_skills` Skills from the Employee
   Skill Profile.
2. The Employee validates suggestions (for example, accepts 6 and rejects 4).
3. The recommendation scores are recalculated based on the new feedback,
   including the rejection signal, which can change nearby Skill rankings.
4. If this recalculation pulls another Skill into the top `max_skills`, that
   Skill can appear as a new suggestion.

#### What happens when data changes

When new Skill Events are added, probabilities can change and different Skills
can enter the top `max_skills` ranking. This can create new suggestions for the
Employee.

<img src="https://mintcdn.com/techwolf/JdUJW5PN6MYJZDA8/snippets/skill-assistant/images/max-skills-profiles-after-new-events.png?fit=max&auto=format&n=JdUJW5PN6MYJZDA8&q=85&s=5f5c9f960f5630cdf02e45f60501179d" alt="Employee Skill Profile states after new Skill Events" width="1470" height="370" data-path="snippets/skill-assistant/images/max-skills-profiles-after-new-events.png" />

1. New Skill Events are added for the Employee.
2. New inferred Skills are scored and compared against the current top
   `max_skills` ranking.
3. Only the new Skills that enter the top `max_skills` become visible
   suggestions.
4. Repeating this process over time can lead to more than `max_skills` validated
   Skills on an Employee profile.

# Feedback on Skill Suggestions

When users add Skills to their profile in Degreed, this feedback is synced back
to TechWolf using the Degreed Skill Sync. This means the Skill Assistant only
sends out suggestions from TechWolf to Degreed and that the Degreed Skill Sync
retrieves the feedback from Degreed and syncs it back to TechWolf. You can find
more information in the developer documentation for the
[Degreed Skill Sync](https://developers.techwolf.ai/integrations/degreed-skill-sync-integration/overview-employees)

# Linking Degreed users and employee profiles in TechWolf

To link Degreed users to employee profiles in TechWolf, Degreed users should be
added to the Group called `TechWolf Skill Assistant` in Degreed. Users that are
added to this Group, will be installed by automatically linking their employee
ID to TechWolf and will receive Skill Suggestions.

# Data flows

### General overview

<img src="https://mintcdn.com/techwolf/A6lmV68eoBxdOoGx/integrations/skill-assistant/degreed/images/degreed-overview-dataflow.png?fit=max&auto=format&n=A6lmV68eoBxdOoGx&q=85&s=210e87882bfacd9c4580fbd0e08490d4" alt="Data Flow Overview" width="2337" height="631" data-path="integrations/skill-assistant/degreed/images/degreed-overview-dataflow.png" />

#### Components

**Degreed**

The Degreed environment used by the customer.

**AWS infrastructure**

TechWolf utilizes AWS infrastructure to facilitate communication between Degreed
and the Skill Assistant. This infrastructure comprises:

* **Scheduling infrastructure (EventBridge + SQS + Lambda) + Batch**: This
  scheduler triggers the suggestion flow at defined intervals using a queue
  and jobs running in AWS Batch, which includes caching, processing skill
  suggestions from the SEAPI and sending them out.

**Skill Assistant**

TechWolf's backend system responsible for sending skill suggestions to Degreed.
It handles scheduling and configuration of the suggestion flow.

**Skill Engine API**

The main TechWolf product. Handles skill-related data processing and
integration. Generates skill suggestions for employees.

#### Data processing

**Types of data that is processed**

* **Skill Suggestions**: Automatically inferred skills for an employee,
  retrieved from the Skill Engine API.
* **Degreed User Data**: Employee details retrieved from Degreed systems,
  including name.

**Data Processing Overview**

|                                    | **Managed by** | **Suggestions** | **Feedback** | **Degreed User Data** |
| ---------------------------------- | -------------- | --------------- | ------------ | --------------------- |
| **Degreed**                        | Customer       | X               | X            | X                     |
| **AWS: Scheduling infrastructure** | TechWolf       |                 |              |                       |
| **AWS: Batch**                     | TechWolf       | X               |              | X                     |
| **Skill Assistant**                | TechWolf       | X               |              | X                     |
| **Skill Engine API**               | TechWolf       | X               | X            | X                     |

#### Data storage

**Overview of Data Storage Locations**

|                                    | **Managed by** | **Suggestions** | **Feedback** | **Degreed User Data**                             |
| ---------------------------------- | -------------- | --------------- | ------------ | ------------------------------------------------- |
| **Degreed**                        | Customer       | X               | X            | X                                                 |
| **AWS: Scheduling infrastructure** | TechWolf       |                 |              |                                                   |
| **AWS: Batch**                     | TechWolf       |                 |              |                                                   |
| **Skill Assistant**                | TechWolf       | X               |              | X *(No personal identifiable information stored)* |
| **Skill Engine API**               | TechWolf       | X               | X            | X *(No personal identifiable information stored)* |

#### **Communication Protocols**

All data exchanges occur over REST APIs secured by **TLS 1.2** or higher.

### Suggesting Skills

<img src="https://mintcdn.com/techwolf/T4HCiIUpM3mvk2op/integrations/skill-assistant/degreed/images/suggesting-skills-dataflow-degreed.png?fit=max&auto=format&n=T4HCiIUpM3mvk2op&q=85&s=7114735c2eafc17c7ac971842183ad0b" alt="Suggesting Skills" width="2744" height="626" data-path="integrations/skill-assistant/degreed/images/suggesting-skills-dataflow-degreed.png" />

**Process**

1. **Fetch suggestions**: On a regular basis, the Skill Assistant will fetch
   suggestions generated by the API.
2. **Sending the suggestion**: The suggestion is sent by the Skill Assistant to
   the customer Degreed tenant.

**Data Involved**

1. Degreed ID, Internal ID, Suggestion
2. Degreed ID, Suggestion
