Category: ROCKEN Documentation

  • Story 2.0.3.1. RT. Login

    Content

    General info

    User story

    Visual design:

    #

    Acceptance Criteria

  • Story 1.4.2.24. CRM. Talent Profile view mode. Implement component Drawer

    Content

    General info

    In the Talent Profile view mode, there is a drawer that can be opened by default. This drawer includes 3 tabs: Notes, Activity, and Communication. It can be closed by clicking on the blue arrow, and it will animate to the right. The drawer content can be scrolled independently from the rest of the page. The names of the tabs are sticky to the top of the drawer, remaining visible during scrolling.

    Additionally, the drawer will behave differently depending on the content of the tab:

    • For listing content (such as Processes or other lists), the drawer can overlap with the content on the page.

    • For other content tabs (such as Professional, Interview, and Personal info), the drawer will squeeze the page content without overlapping.

    User story

    As a CRM user,
    I want to have a drawer that can be opened and closed, which contains tabs for Notes, Activity, and Communication,
    So that I can view and interact with additional profile information in a compact and accessible manner.


    RT-6667

    Получение подробных данных проблемы…
    СТАТУС

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=62003-91381&t=53IiQGXfjZ21fCqj-4

    Prototype: https://www.figma.com/proto/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=62003-90925&t=53IiQGXfjZ21fCqj-0&scaling=min-zoom&content-scaling=fixed&page-id=23085%3A130636&starting-point-node-id=62403%3A74798

    Acceptance criteria

    01

    Scenario: Display Drawer
    Given I am viewing the Talent Profile,
    When I navigate to the page,
    Then the drawer should be open by default, displaying the 3 tabs: Notes, Activity, and Communication.

    image-20250212-070709.png

    02

    Scenario: Close Drawer
    Given the drawer is open,
    When I click on the blue arrow,
    Then the drawer should close and animate to the right side of the screen.

    03

    Scenario: Scroll Drawer Content
    Given I am viewing the content inside the drawer,
    When I scroll inside the drawer,
    Then the content inside the drawer should scroll independently of the rest of the page.

    04

    Scenario: Sticky Tabs in drawer
    Given I am scrolling within the drawer,
    When I scroll down in the drawer,
    Then the names of the tabs (Notes, Activity, Communication) should remain sticky at the top of the drawer.

    image-20250212-071036.png

    05

    Scenario: Sticky Tabs on the page
    Given I am scrolling the page
    When I scroll down on the page,
    Then the names of the tabs (Notes, Activity, Communication) should remain sticky at the top of the drawer.

    image-20250212-071051.png

    06

    Scenario: Switch Between Tabs
    Given I am viewing the drawer,
    When I click on any of the tabs (Notes, Activity, Communication),
    Then the relevant content for that tab should display, while the tab names remain sticky at the top.

    07

    Scenario: Drawer Behavior for Listings (Overlap)
    Given I am viewing the "Processes" tab on the page (or other listings),
    When the drawer is opened,
    Then the drawer should overlap the content on the page (like filter drawer).

    image-20250212-071717.png

    08

    Scenario: Drawer Behavior for Non-Listing Content (Squeeze)
    Given I am viewing a tab with non-listing content (Professional, Interview, Personal info),
    When the drawer is opened,
    Then the content on the page should be squeezed, but not overlapped.

    image-20250212-071659.png

    09

    NEW Scenario: main scroll for the page
    Given I am viewing profile view mode page
    When I scroll the whole page
    Then the content on the page should be scrolled together with the drawer

    10

    NEW Scenario: scroll for the drawer
    Given I am viewing profile view mode page
    When I scroll in the drawer
    Then the content of all drawer is scrallble together with pinned notes
    ! Only one scroll for the drawer

  • Retro Sprint 88

    (синяя звезда) General info

    Liked

    Lacked

    Learned

    Longed for

    • Ability to focus on the problems than to fixed requirements.

    • Like the approach with feedback loops in the design process and wireframes.

    • good collaboration with Martin and consultants

    • communication in the team

    • 1 to 1 with PM, is a good practice.

    • Good progress with Sandboxes

    • Quick bug fixes to unblock automatization (Thanks Dasha, Yuriy and Serhii).

    • fast testing and feedback

    • less support tasks

    • Optimize requests to google api. Store all related location components

    • finally rocken jobs
      is in docker

    • finished ~80% sprint goal

    • productive sprint

    • It would be nice to have the exhaustive AC

    • [Frontend] pays more attention to Figma. (Need to be explained)

    • Learned how to review merge requests on automation

    • I’m undergoing training on test automation with PlayWright

    • Learned more about GitLab and the process of uploading tests

    • Do not squash commits in git lab.

    • Improved knowledge in microsoft windows on dedicated hetzner server

    • Post Mortems is Introdused

    • set the git flow with one approver

    • Technical sprint

    • Use more interesting and usefull design practices. JTBD, Design Thinking, etc.

    • comments in database

    • pay attention to Sentry frontend part

    • Talk with a users to understand the issues.

    • Release at 5pm on Tuesdays and Thursdays

    • Add bot reminder to slack about release

    (синяя звезда) What needs to be improved?

    • Review Definition of Ready (Team)
    • Create small and medium tasks for tech sprint by developers in backlog (devs)
    • Release at 5pm (Ukraine time zone) on Tuesdays and Thursdays (devs)
    • Continue collaboration with CRM users to understand the issues (pm+designers)
    • add bot reminder to slack about release (pm)
    • Use more interesting and usefull design practices. JTBD, Design Thinking, etc. (designers)
    • Finish Annotation of database (devs)

  • Story 1.4.2.4. CRM. Talent Profile view mode. Header statistics

    Content

    General info

    The stats section on the profile page should display key metrics, including last status update, processes, rejections by candidate, rejections by companies, and applications. This section should be presented in a clean and organized manner to make it easily accessible for the user, with the status information highlighted and clickable to offer a more detailed view.

    User story

    As a CRM user,
    I want to see a stats section at the top of the profile page,
    So that I can quickly view key information such as the last status update, processes, rejections by candidate, rejections by companies, and applications, with each item clickable for more details.


    RT-6616

    Получение подробных данных проблемы…
    СТАТУС

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=62003-91329&t=NI7yEF1Bunzpe73z-4

    Acceptance criteria

    01

    Scenario: Displaying stats section
    Given I am on the candidate profile page,
    When I view the page,
    Then the stats section should display the following information in order: processes, invitations, rocked, running processes, responsible person, category of search by candidate

    image-20250210-063402.png

    02

    OOS Scenario: Clickable stats items
    Given I am viewing the stats section,
    When I click on the stats items (numbers of Processes),
    Then I should be redirected to the sub tab with this pre-filter

    03

    Scenario: Display Processes Count
    Given I am viewing the Talent Profile,
    When I navigate to the "Header statistics" section,
    Then I should see the total number of processes the candidate is associated with.

    04

    OOS Scenario: Display Invitations Count
    Given I am viewing the Talent Profile,
    When I navigate to the "Header statistics" section,
    Then I should see the total number of invitations (???) associated with the candidate.

    05

    Scenario: Display Rocked Count
    Given I am viewing the Talent Profile,
    When I navigate to the "Header statistics" section,
    Then I should see the total number of processes marked as "Rocked" associated with the candidate.

    06

    OOS Scenario: Display Running Processes Count
    Given I am viewing the Talent Profile,
    When I navigate to the "Header statistics" section,
    Then I should see the total number of running processes the candidate is currently part of (all statuses of process except “Candidate no reply”, “Candidate rejected”, Company no reply”, “Company rejected”, “inactive”, “rocked”).

    07

    Scenario: Display Responsible Person with avatar
    Given I am viewing the Talent Profile page,
    When I see the "Responsible Person" section,
    Then I should see the avatar of the person responsible for the candidate.

    image-20250212-073857.png

    07a

    Scenario: Display Responsible Person without avatar
    Given I am viewing the Talent Profile page,
    When I see the "Responsible Person" section without photo on avatar,
    Then I should see the default avatar based on gender.

    08

    Scenario: Display Category of the Candidate
    Given I am viewing the Talent Profile page,
    When I see the "Category" section,
    Then I should see the category or categories associated with the candidate.

    image-20250212-073948.png

    09

    OOS Scenario: Display Border Color for Responsible Person
    Given I am viewing the "Responsible Person" section,
    When I see the responsible person’s avatar,
    Then I should see the avatar’s border color indicating their role in the system.

    10

    Scenario: Display Category Tooltip for Long Category Names
    Given the candidate has a long category name or multiple categories,
    When I hover over the category name,
    Then I should see a tooltip displaying the full category name.

    image-20250212-074024.png
  • Story 1.4.3.11. CRM. Multi-Select Text Editing

    Content

    General info

    Currently, when editing the text in the education or experience sections of a profile in the CRM, users cannot multi-select text using the Ctrl key (or equivalent) to select multiple lines of text at once. Implementing this functionality will allow users to select multiple parts of the text and perform actions (such as deletion or modification) more efficiently.

    User story

    As a CRM user,
    I want to multi-select text using the Ctrl key in the education and experience sections,
    So that I can efficiently delete or edit multiple lines of text at once.

    Visual design:

    Acceptance criteria

    01

    Scenario: Enable Multi-Select Functionality
    Given I am editing the education or experience section in a profile,
    When I hold the Ctrl key and select multiple lines of text,
    Then I should be able to select multiple lines of text at once for editing or deletion.

    02

    Scenario: Delete Multiple Lines Using Multi-Select
    Given I have selected multiple lines of text using the Ctrl key,
    When I press the Delete key,
    Then the selected text should be deleted in one action.

    03

    Scenario: Edit Multiple Lines Using Multi-Select
    Given I have selected multiple lines of text using the Ctrl key,
    When I type new text or apply formatting (e.g., bold, italics),
    Then the changes should be applied to all the selected text lines.

  • Story 1.0.15.1. CRM. Company. Parallel Editing

    Content

    General info

    The feature ensures that multiple users cannot edit the same entity in the CRM system at the same time without notifying the other users. A notification banner will be displayed on the page if it is currently being edited by another user. If the current user wishes to enter the edit mode, they will need to "overtake" the existing session, prompting a confirmation dialog and potentially causing the other user to lose unsaved changes. This ensures clear communication and prevents data loss due to simultaneous editing.

    User story

    As a CRM user,
    I want to be notified when another user is editing a page,
    So that I can decide whether to overtake the editing session or wait until the other user has finished.

    Visual design:

    https://www.figma.com/design/I5CXH7H3ICD0vfA1kPbcVf/Rocken-Design?node-id=60567-505568&t=iR6h2ofHPxI6s5Ic-4

    #

    Acceptance Criteria

    01

    Scenario: Display Notification Banner when Page is Being Edited by Another User on Company view page
    Given I am viewing a company page in the CRM
    AND another user is editing the page
    When I click to edit any button on the page
    Then I should see a banner at the top of the page with the message:
    DE: "Diese Seite wird jetzt von {name surname} bearbeitet, Überholen?"
    EN: "This page is now edited by user: {name surname}, Overtake?"

    image-20250210-054107.png

    02

    Scenario: Display Notification Banner when Page is Being Edited by Another User on Company list Page
    Given I am viewing a company list page in the CRM
    AND another user is editing the company, that i want to edit too
    When I click to edit button for that company
    Then I should be redirected to company single page
    AND see a banner at the top of the page with the message:
    DE: "Diese Seite wird jetzt von {name surname} bearbeitet, Überholen?"
    EN: "This page is now edited by user: {name surname}, Overtake?"

    03

    Scenario: Clicking on the User’s Name Opens User’s Page
    Given I see the banner showing the user’s name,
    When I click on the name in the banner,
    Then the user’s profile page should open in a new tab.

    04

    Scenario: Clicking on "Overtake" Opens Confirmation Popup
    Given I see the banner with the option to overtake the editing session,
    When I click on the "Overtake" button,
    Then a confirmation popup should appear with the following details:
    DE:
    title: "Die Bearbeitung wird überholt"
    text: "{name surname} wird ungespeicherte Daten verlieren. Fortfahren?"
    button: "Überholen"
    EN:
    title: "Editing will be overtaken"
    text: "{name surname} will lose unsaved data. Proceed?"
    button: "Overtake"

    image-20250210-054227.png

    05

    Scenario: Close Popup Without Taking Action
    Given I am on the confirmation popup,
    When I click the X button to close the popup,
    Then the other user should continue editing the page without any changes, and I remain in view mode.

    06

    Scenario: Confirm Overtaking the Editing Session
    Given I am on the confirmation popup,
    When I click on the "Overtake" button,
    Then the user who was editing the page will not be moved to view mode and stay in edit mode
    AND see some message about overtaken

    07

    Scenario: Prevent Current User from Entering Edit Mode Without Overtaking
    Given I am on a page where another user is editing,
    When I try to enter edit mode,
    Then I should not be able to enter edit mode until I click on "Overtake" or the other user finishes their editing session.

    08

    backend validates on last modify time stamp when data was changed and prevent saving (rewriting the data)

  • Release Notes – ROCKEN-TALENT – Release NA 06.02.2025 [1.1.16] – Feb 07 15:51

    How to use this page:

    Find your selected Jira issues in the table below. Select the expand to use them as your source of truth to write release notes.

    Release

    https://cheitgroup.atlassian.net/projects/RT/versions/10383

    Date

    Version

    Release NA 06.02.2025 [1.1.16]

    Description

    Contributors

    Dasha RozhniatovskaAnton LiakhIvan HodoniukDima Savchenko (WP)Yurii Tymchuk

    Issues in this release

    Before you share the page, review the contents of each Jira issue and remove any sensitive data.

    Issue

    Summary

    Issue Type


    RT-6592

    Add passing of "region" and "city" properties in Location object

    BE sub-task


    RT-6565

    [Support] Migrated processes do not move automatically

    Bug


    RT-6537

    Add endpoint for type of locations

    BE sub-task


    RT-6536

    Attachment optimization script

    Task


    RT-6528

    [Vacancy] Develop deactivation logic

    Task


    RT-6527

    [Publication] Develop deactivation logic

    Task


    RT-6491

    [RJ] Add filter for country

    Task


    RT-6391

    [Support] [RJ] If the Company in the CRM has an exact location to it, it gets parsed along with the city chosen in the publication

    Bug


    RT-6250

    [Company] Enable Reassignment of Unassigned Companies

    Task


    RT-6057

    [RT] [Migrations] [Interview] [Profile Preview] Check the styling of the migrated answers in the Interview

    Bug


    RT-5830

    (FE) Talent profiles for Germany

    FE sub-task


    RT-5827

    4755 publications for Germany – BE

    BE sub-task


    RT-5826

    (FE) publications for Germany

    FE sub-task


    RT-4755

    CRM publications for Germany

    Story

    New Features

    • [Vacancy] Deactivation logic – Only the vacancies that are no older than 6 months from setting status Active are present on RockenTalent. If the user changes the status manually and sets the new vacancy activation date, the vacancy resets the timeline from the new date.

    • [Publication] Deactivation logic – Only the publications that are no older than 3 months from setting status Published are present on Rocke.Jobs. If the user changes the status manually and sets the new Publication date, the publication resets the timeline from the new date.

    • [RJ] Added filter for country – Users in RJ have a possibility to filter the jobs by country from publication’s location.

    • CRM publications for Germany – all current publications are shown in CRM for Swiss market

    Improvements to existing features

    • PDF generate optimization for attachments

    • [Company] Enabled Reassignment of Unassigned Companies – Admins, BMs, HoDs, Consultantcy and Sales are able to assign companies to BMs, HoDs, Consultantcy and Sales.

    Bug fixes

    • Fixed Migrated processes that didn’t move automatically

    • [RJ] If the Company in the CRM has an exact location to it, it gets parsed along with the city chosen in the publication

    • [RT][Profile Preview] Fixed styling of the migrated answers in the Interview

  • 2025-02-06 CRM Low Performance

    Name(s): Yurich, Serhii, Roman, Anton L., Martin

    Date: 2025-02-06

    Last modified: 2025-02-07

    Summary

    CRM was reported as slow, we investigated and found out that Manager 1 was at 100% CPU and Manager 2 was at 0% CPU load. Further investigation showed that Manager 2 had a full disc due to logs. Removing them solved the issue.

    Impact

    CRM and Talent were slow, but reachable. No data loss.

    Timeline

    • 13:35: Manager 2 full disc space, all services shut down. Manager 1 got all the load, which resulted in 100% CPU load

    • 13:58: Beni contacted Martin via Teams that perfomance was low

    • 14:03: Martin wrote in Development channel that there are issues with perfomance regarding CRM

    • 14:10: Yurich and Anton started investigation, but quick solution was not found.

    • 14:44: Martin started video call in production channel and created task force with Anton, Roman, Serhii and Yurich. Other developers joined as well.

    • 14:51: Communication in Rocken Chat that issue exists

    • 15:10: Serhii saw that Manager 2 disc was full and removed old logs. After that servers stabilized

    • 15:21: Communication in Rocken Chat that issue was resolved

    • 15:42: Roman noticed that the websocket container’s log file keeps growing.

    • 15:45: Roman started video call with Yurii and Serhii.

    • 15:55: Serhii found environment variable that is responsible for enabling debug mode for the websocket container

    • 16:05: Roman set the variable SOKETI_DEBUG: 0 for websocket container and restarted the stack in docker swarm to fix the issue immediately.

    • 16:06: Yurii set the same value of the variable in the GitLab CI variables in order to avoid this issue in the future.

    Root Cause(s)

    The /var folder of Manager 2 was full with websocket logs. No more memory resulted in services crashing. The load of the services couldn’t be distributed and was directed to mostly Manager 1.

    Action Items

    • Log rotation for all production services on Manager 1, 2 and 3


      RT-6607

    Appendix

    Screenshot 2025-02-06 163115.pngScreenshot 2025-02-06 163147.png

  • 0000-00-00 Title of the incident

    Name(s):

    Date:

    Last modified:

    Summary

    Impact

    Timeline

    Root Cause(s)

    Action Items

    Appendix