```python
from typing import List

def sort_by_len(words: List[str]) -> List[str]:
    # Sort by length first (shortest to longest)
    words.sort(key=len)

    # If two words have the same length, sort them alphabetically
    for i in range(len(words) - 1):
        if len(words[i]) == len(words[i + 1]):
            words[i], words[i + 1] = words[i + 1], words[i]

    return words
```