Выучил основы языка, но правильной архитектуре приложений очень мало где учат.
Нужно научить человека стать опытным специалистом. Есть идеи, как это в принципе делать?
Получение опыта - длительный процесс. Занимает всю жизнь, поэтому кто-то вас всю жизнь учить не будет.
Для определенных архитектурных решенй были придуманы паттерны, можно почитать книжки. Но правильное применение будет появляться только с опытом. Пишите много, переписывайте, почитывайте статьи, смотрите чужой код и чужие решения. Какой-либо один источник (книга, курс, пример) будет недостаточен. Просто развивайте любопытство.