Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overhaul the build process and competency data structure #371

Merged
merged 12 commits into from
Feb 3, 2025
Merged

Conversation

rowanmanning
Copy link
Member

This includes a lot of work, apologies but will try to summarise here. I'm intending on merging but this is here for visibility - if you have thoughts on any of the changes then feel free to comment and I'll look into separately.

The purpose of this change is to allow the site to support competencies for multiple roles. This paves the way for us integrating the Operations competencies.

The work:

  1. All information about competencies, levels, and themes now lives within a single yaml file. You can find this under data/roles. This gives us a lot of flexibility when adding new competencies for roles that don't have, for example, a split S1/S2

  2. The spreadsheet graphs have gone. They were a nightmare to maintain and they promote the idea that you can "complete" the competencies

  3. The URL structure on the website has changed to accommodate multiple roles. Now instead of /competencies/junior we have /competencies/engineering/junior. Redirects are in place for all of these

  4. The JSON API has gone. This API wasn't being used by anything and it represents a maintenance overhead. I left the (unlinked) documentation page in place to explain the decision.

  5. The build process has had a rethink and is easier to understand as a result. All scripts were simplified and we're now using GitHub Actions because it's far easier to set up multiple distinct workflows

  6. All platforms and dependencies have been updated to latest, this was long overdue. We're now running Ruby 3.4.1 and Node.js ^22.13.

No more Make and everything's a bit simpler. The only task that hasn't
been migrated is deploying the Google Sheet, but this can come later
This API wasn't being used by anything and it represents a maintenance
overhead. I left the (unlinked) documentation page in place to explain
the decision.
This includes a _lot_ of work, apologies but will try to summarise here.
The purpose of this change is to allow the site to support competencies
for multiple roles. This paves the way for us integrating the Operations
competencies.

The work:

  1. All information about competencies, levels, and themes now lives
     within a single yaml file. You can find this under `data/roles`.
     This gives us a lot of flexibility when adding new competencies
     for roles that don't have, for example, a split S1/S2

  2. The spreadsheet graphs have gone. They were a nightmare to maintain
     and they promote the idea that you can "complete" the competencies

  3. The URL structure on the website has changed to accommodate
     multiple roles. Now instead of `/competencies/junior` we have
     `/competencies/engineering/junior`. Redirects are in place for all
     of these
@rowanmanning rowanmanning requested a review from a team as a code owner February 3, 2025 13:46
@rowanmanning rowanmanning merged commit 4529c7d into main Feb 3, 2025
2 checks passed
@rowanmanning rowanmanning deleted the overhaul branch February 3, 2025 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant