Hello @markdaoust ,
Thanks for your time and comments.
Sorry for not adding my feedback, I solved this issue by 2022-01-26. Here is my implementation:
# This data will be adapted on 'TextVectorization' layer, later on
list_of_lists = [
    ["Python", "Java", "C++"],
    ["Netbeans", "Django"],
    ["Many", "Other", "List", "Of", "Lists", "Here"]
]

# 'TextVectorization' layer gets initialized, and 'list_of_lists' is also adapted
text_dataset = list(set([item.lower() for sublist in list_of_lists for item in sublist]))
text_dataset = tf.data.Dataset.from_tensor_slices(text_dataset) # 'text_dataset' is re-used here (!)
vectorize_layer  = tf.keras.layers.TextVectorization(
    split=None,  # TO AVOID LIST SPLITTING
    ragged=True, # TO WORK WITH RAGGED TENSORS ('tf.ragged') LATER ON
    name="skill_vectorizer_layer"
)
with tf.device("/CPU:0"):
    vectorize_layer.adapt(text_dataset.batch(64))
    
# Preprocessing layers, including 'vectorize_layer'
inputs = tf.keras.layers.Input(
    shape=(None,),    # We do NOT know the length of the input lists
    dtype=tf.string,  # We do know that the list elements, are strings
    ragged=True,      # We do know the inputs will be ragged tensors
    name="skill_input"
)
x = vectorize_layer(inputs)
model = tf.keras.Model(inputs=inputs, outputs=x)

# NEW components in which preprocessing will be applied
new_list_of_lists = [
    ["Pyhton", "Django", "Computer Science"],
    ["Wait", "Some", "Of", "These", "Items", "Have", "Not", "Been", "Seen", "Before!"]
]

# Results
new_ragged_input = tf.ragged.constant(new_list_of_lists) # Input MUST be a 'tf.ragged.constant'
model.predict(new_ragged_input)

Which gets me the following output (dimensions match, no zero padding this time):
<tf.RaggedTensor [[1, 11, 1], [1, 1, 4, 1, 1, 1, 1, 1, 1, 1]]>

Knowing the output makes sense, the preprocessing layers can now be connected to other layers (Embeddings and so on).
ADDENDUM: For future readers, another aspect that might be challenging and somehow related to this topic (well, as you will see it is not that difficult but the information on how to do it, is rather scarce), is obtaining a tf.data.Dataset when you are dealing with ragged tensors. One way to do it, goes as follows:

If your model has a SINGLE INPUT / SINGLE OUTPUT:

dataset = dataset = tf.data.Dataset.from_tensor_slices(
    (
        tf.ragged.constant(list_of_lists), # This is my 'list of lists' input, used in this example
        # Other inputs, must be compatiple with 'tf.data.Dataset.from_tensor_slices'
        # Your output, must be compatiple with 'tf.data.Dataset.from_tensor_slices'.
    )
)


If your model has MULTIPLE INPUTS / SINGLE - MULTIPLE OUTPUTS:

dataset = dataset = tf.data.Dataset.from_tensor_slices(
    (
        (
            tf.ragged.constant(list_of_lists), # This is my 'list of lists' input, used in this example
            # Other inputs, must be compatiple with 'tf.data.Dataset.from_tensor_slices'
        ),
        # Your output, must be compatiple with 'tf.data.Dataset.from_tensor_slices'.
        # NOTE: If you have multiple outputs, remember to group them inside a tuple, as the input in this code snippet
    )
)

And that would be it. Of course, checking the official info is highly suggested.
I consider this case solved.
Thank you.