@enleur it depends 🙂
(yes, i’m professional consultant)
imho, it has nothing to do with language
like i learned to organize classes in java by layer
now i do it by feature
so you can finally benefit from package-private visibility
i do now the same in kotlin
for utility files, the same
and if the utility is cross-feature, i put it the common ancestor package