IXP Phase 2 proposed process

Created on 3 October 2024, 7 months ago

In late August 2024 a Google Doc with the following information was shared with the Drupal Association for their feedback. This document was created based on feedback from the community in our Slack channel (#ixp-fellowship), this issue queue, and numerous in-person discussions with community members at Drupal event all over the world over the past year.

IXP Phase 1 - Incentivizing organizations to hire new, inexperienced Drupal developers.

Summary

Phase 1 of the IXP β†’ will incentivize organizations to hire new, inexperienced Drupal developers with Drupal community contribution credits.

Definition of a new, inexperienced Drupal developer

For the current scope of the IXP, a new, inexperienced Drupal developer is defined as an individual with these recommended skills. These are recommendations and is the purview of a hiring company to decide if a candidate is an IXP:

General and Human competencies

  • Basic teamwork skills.
  • Basic Knowledge of local development tools such as Lando or DDEV, And working with SSH.
  • Basic knowledge of Command Line tools and commands.
  • Good communication skills.
  • Self-learning, commitment and responsibility.
  • Good organization and productivity.

Site Building Competencies

  • Nodes (Entities), Fields, Content types,
  • Taxonomies, Views, Modules, Contrib vs custom,
  • Using composer to install, remove, and update code
  • Basic knowledge of Git and Github
  • Basic Drupal configuration management
  • Themes, Blocks, Menus, Permissions
  • Content creation in Drupal

Front End Competencies

  • Basic knowledge of web layout (HTML5 and CSS3)
  • Basic Knowledge in JavaScript
  • Basic knowledge of templating systems/languages like twig.
  • Basic knowledge of CSS Preprocessors such as SASS or LESS

Backend Competencies

  • Basic knowledge of imperative programming (variables, control structures, functions, etc.).
  • Basic knowledge of object-oriented programming.
  • Basic knowledge of PHP (syntax, execution and debugging).
  • Basic knowledge of SQL Queries

This definition was derived larged from a community-wide survey during the time period of May-June 2024.

Definition of a hiring organization

Any organization that hires Drupal developers may participate in the IXP program.

Each hiring organization may hire a maximum of four new, inexperienced Drupal developers as part of this program per calendar year.

Process

This is the proposed process for both hiring organizations and new, inexperienced Drupal developers.

IXP program visibility

A new callout promoting the program will be added to https://jobs.drupal.org, including a link to a dedicated page on the site with full details about the program and its requirements. [DA]

In addition, IXP community initiative members will work to promote the program via social media, blog posts, and other methods traditionally used to disseminate information in the Drupal community.

Job posting on jobs.drupal.org

Job postings for new, inexperienced Drupal developers will be free for organizations to post. [DA]

When a new, inexperienced Drupal developer job is posted, it must automatically include "IXP" branding (in both search results and the details page) and a link to the explainer page. [DA]

Job postings for new, inexperienced Drupal developers must include the following:

  • Job requirements must not exceed the definition of a new, inexperienced Drupal developer (see above).
  • Must be a paid position.
  • Must provide at least 160 hours of paid work.
  • Must specify that applicants must have less than 3 months of paid Drupal experience.
  • A commitment to provide the new, inexperienced Drupal developer access to a mentor with a minimum ratio of 1 hour for every 10 hours of paid work time.

Candidate selection and kick-off process

The hiring organization is free to utilize the tools of jobs.drupal.org and their own internal processes to vet and select a suitable new, inexperienced Drupal developer candidate for the position.

Upon the selection of a suitable candidate, the hiring organization must provide the IXP initiative the following information (via an IXP initiative-supplied form):

  • Organization name
  • Organization contact name
  • Organization contact email address, phone number, Drupal Slack workspace handle
  • Organization mentor contact information (name, email, phone, Drupal Slack workspace handle)
  • New, inexperienced Drupal developer's name, email, phone, Drupal Slack workspace handle
  • New, inexperienced Drupal developer's start date
  • New, inexperienced Drupal developer's estimated hours/week
  • Brief summary of the project(s) the new, inexperienced Drupal developer will be working on.
  • Acknowledgment that at least one public blog post from the new, inexperienced Drupal developer must be made available prior to program completion. This blog post must include a reference and link to the IXP, along with a summary of the new, inexperienced Drupal developer's work during the engagement.
  • Acknowledgement that at least three contribution credits have been earned by the new, inexperienced Drupal developer. Links to relevant issues must be provided to the IXP organizers.

The IXP initiative will provide the hiring organization and the new, inexperienced Drupal developer with a IXP case number for tracking purposes.

Progress reports

Both the hiring organization contact and the new, inexperienced Drupal developer will be required to submit bi-weekly progress reports via an IXP initiative-supplied form.

Example form for the new, inexperienced Drupal developer:

  • IXP case number
  • Form submitter name
  • Did you have access to a mentor for at least one hour out of every ten paid work hours since your last progress report?
  • Were the tasks assigned to you appropriate to your current skill set?
  • - Additional details
  • Were any tasks assigned to you above and beyond your current skill set?
  • - Additional details

Example form for the hiring organization:

  • IXP case number
  • Form submitter name
  • Was a mentor available for the new, inexperienced Drupal developer at least one hour out of every ten paid work hours since the last progress report?
  • Did the new, inexperienced Drupal developer complete work tasks appropriate to their current skill set?
  • - Additional details
  • Was the new, inexperienced Drupal developer challenged with tasks above and beyond their current skill set?
  • - Additional details

Program completion

At the completion of 160 hours of paid work, the hiring organization will contact the IXP initiative team and request a final progress report via a form sent to both the hiring organization and the new, inexperienced Drupal developer.

Example form for the new, inexperienced Drupal developer:

  • IXP case number
  • Form submitter name
  • Did you have access to a mentor for at least one hour out of every ten paid work hours throughout the engagement?
  • Do you feel that your Drupal skills have grown during the engagement?
  • Did you get paid for a minimum of 160 hours?
  • URL of required public blog post.
  • What, if any, changes would you suggest to the IXP program?

Example form for the hiring organization:

  • IXP case number
  • Form submitter name
  • Was a mentor available for the new, inexperienced Drupal developer at least one hour out of every ten paid work hours throughout the engagement?
  • Do you feel that the new, inexperienced Drupal developer's Drupal skills have grown during the engagement?
  • Was the new, inexperienced Drupal developer paid for a minimum of 160 hours?
  • What was the hourly rate of pay for the new, inexperienced Drupal developer?
  • How many total hours was the new, inexperienced Drupal developer paid for?
  • URL of required public blog post.
  • What, if any, changes would you suggest to the IXP program?

Upon review of the final reports from both the new, inexperienced Drupal developer and the hiring agency to confirm that all program requirements were met, the IXP initiative team will contact the Drupal Association to award 100 contribution credits to the hiring organization. [DA]

Based on this discussion β†’ , 100 contribution credits is roughly equivalent to $10,000 in financial support of the Drupal Association.

The IXP initiative team has the final decision as to whether or not program requirements have been met and if contribution credits can be awarded.

🌱 Plan
Status

Active

Component

Miscellaneous

Created by

πŸ‡ΊπŸ‡ΈUnited States ultimike Florida, USA

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @ultimike
  • πŸ‡ΊπŸ‡ΈUnited States teknorah Mokena, IL, US
  • πŸ‡ΊπŸ‡ΈUnited States camoa
  • πŸ‡ΊπŸ‡ΈUnited States camoa

    From the DA:

    Drupal Association Implementation Plan

    MVP Implementation:
    What we can implement in a short amount of time (hopefully end of January, subject to change)

    Jobs.Drupal.org
    For spam management and a huge variety of other reasons just having a free job type open to the web is not going to work for us.
    Instead we propose the following:
    A landing page: jobs.drupal.org/ixp
    This contains the details about how to apply as an IXP organization
    Copy provided by IXP community team
    Once applied, we send an IXP post coupon code - unlimited free posts for that org - unique to each org
    This page also embeds a view of all job postings made using that coupon code or more likely the job type filter
    Should these posts expire? Yes
    How long?
    Default right now for other posts is 30 days
    Moderation:
    We will ask for the IXP community teams help

    Case Studies
    We will update the taxonomy for 'sectors' on the case study to provide an option for 'IXP-Experience'
    We will add a new view that pre-filters on that sector

  • πŸ‡ΊπŸ‡ΈUnited States anilu@ Houston, TX
  • πŸ‡ΊπŸ‡ΈUnited States anilu@ Houston, TX
Production build 0.71.5 2024